【汇编语言】从键盘接收两个不大于5的十进制数字,并以十进制数据显示其和
程序员文章站
2022-03-21 22:17:37
...
题目:从键盘接收两个不大于5的十进制数字,并以十进制数据显示其和
思路:进行dos功能01调用输入字符,注意:此时输入的是字符,并不是数字。所以在进行计算的时候需要减去30H对其进行数值修正,然后再进行相加,最后需要输出,注意:输出也是字符输出,需要加上30H进行字符的修正。最后使用02功能进行输出即可。
知识点总结区:
1.使用09号功能调用需要使用LEA 取地址进行字符串的输出
2.使用01H号功能调用时候输入数值保存在AH中。
3.在使用02功能调用输出字符的时候,需要将入口参数放在DL当中。
;从键盘接收两个不大于5的十进制数字,并以十进制形式显示其和。
DATA SEGMENT
X DB ?
Y DB ?
STR1 DB 'PLEASE ENTER A NUMBER (0-4):$'
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA,CS:CODE
START:
; 设置数据段
MOV AX, DATA
MOV DS, AX
;输出提示语句
LEA DX,STR1
MOV AH,09H
INT 21H
;输入数字
MOV AH,01H
INT 21H
;将ASCII进行修正
SUB AL,30H
MOV BL,AL
;换行输出
MOV DL,10
MOV AH,02H
INT 21H
;输出提示语句
LEA DX,STR1
MOV AH,09H
INT 21H
;输入数字
MOV AH,01H
INT 21H
;将ASCII进行修正
SUB AL,30H
MOV CL,AL
;进行加法运算
ADD CL,BL
;换行输出
MOV DL,10
MOV AH,02H
INT 21H
;变成相应ASCII进行字符输出
ADD CL,30H
MOV DL,CL
MOV AH,02H
INT 21H
MOV AX,4C00H
INT 21H
CODE ENDS
END START