tsl应用程序错误

tsl应用程序错误,第1张

出现应用程序错误的原因很多: 1、应用程序没有检查内存分配失败 2、应用程序由于自身BUG引用了不正常的内存光标 3、木马或病毒破坏 4、 *** 作戚缓首系统本身bug 有时候 *** 作系哪枯统本身也会有BUG,要注意安装官方发行的升级程序高数。更新 *** 作系统,让 *** 作系统...

DATAS SEGMENT

STR1 DB 'Please input the first number(10-99) a:$'

STR2 DB 'Please input the second number(10-99) b:$'

STR3 DB 'The anwser a+b=$'

STR4 DB 'a=$'

STR5 DB 'b=$'

D1 DB 10

DB ?

D11 DB 10 DUP(?)

D2 DB 10

DB ?

D22 DB 10 DUP(?)

N1 DW ?

N2 DW ?

DATAS ENDS

STACKS SEGMENT

STA DB 100 DUP(?)

TOP EQU LENGTH STA

STACKS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS,SS:STACKS

START:

MOV AX,DATAS

MOV DS,AX

MOV AX,STACKS

MOV SS,AX

MOV AX,TOP

MOV SP,AX

MOV DX,OFFSET STR1 输入第液宏一个个数

MOV AH,9

INT 21H

MOV DX,OFFSET D1

MOV AH,0AH

INT 21H

MOV DL,0DH 回车换行

MOV AH,2

INT 21H

MOV DL,0AH

MOV AH,2

INT 21H

MOV DX,OFFSET STR2 输入第二个数

MOV AH,9

INT 21H

MOV DX,OFFSET D2

MOV AH,0AH

INT 21H

MOV DX,0DH

MOV AH,2

INT 21H

MOV DX,0AH

MOV AH,2

INT 21H

MOV DX,OFFSET STR4

MOV AH,9

INT 21H

LEA SI,D1第一个数放在D1

LEA DI,D11

CALL SLZSJZ 调用子程序,将字符串D1转换为真正的两位数

MOV N1,AX

MOV DX,0DH

MOV AH,2

INT 21H

MOV DX,0AH

MOV AH,2

INT 21H

MOV DX,OFFSET STR5

MOV AH,9

INT 21H

LEA SI,D2 第二个数放在D2

LEA DI,D22

CALL SLZSJZ 调用子程序,将字符串D2转换为真正的两位数

MOV N2,AX

MOV DX,0DH

MOV AH,2

INT 21H

MOV DX,0AH

MOV AH,2

INT 21H

MOV DX,OFFSET STR3

MOV AH,9

INT 21H

CALL JGTZ

XOR DX,DX

XOR CH,CH

XOR AH,AH

XOR BH,BH 输出结果,先输出百位,如为闹游册0,则磨颂不输出;在输出十位和个位

CMP CL,30H

JZ DEW

PUSH AX

MOV DL,CL

MOV AH,2

INT 21H

POP AX

DEW:MOV DL,AL

MOV AH,2

INT 21H

XOR DX,DX

MOV DL,BL

MOV AH,2

INT 21H

JMP EXIT

JGTZ PROC

MOV BX,N1

MOV DX,N2

XOR CX,CX

ADD DX,BX

MOV AX,DX

XOR DX,DX

MOV DL,100

DIV DL

ADD AL,30H

MOV CL,AL 结果的第一位放在CL

MOV AL,AH

XOR AH,AH

MOV DL,10

DIV DL

ADD AL,30H结果的第二位放在AL

MOV BL,AH

ADD BL,30H结果的第三位放在BL

XOR AH,AH

RET

JGTZ ENDP

SLZSJZ PROC

MOV [SI+4],'$'

MOV DX,DI 输出输入的两位数

MOV AH,9

INT 21H

XOR CX,CX 将输入的字符串每位的ASCII码转为真正的数字

MOV CX,2

SUB [SI+2],30H

SUB [SI+3],30H

XOR AX,AX计算出输入的两位数

XOR BX,BX

MOV AL,10

MOV BL,[SI+2]

MUL BL

ADD AL,[SI+3]

RET

SLZSJZ ENDP

EXIT:MOV AH,4CH

INT 21H

CODES ENDS

END START


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8189959.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存