微机原理之大于65535数据的存储

STACK SEGMENT
DW 100H DUP (?)
TOP LABEL WORD
STACK ENDS
DATA SEGMENT
N DW 0
G DW 0
T DW 10
Q DB 10
MSG0 DB ‘INPUT:$’
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
START:
MOV AX,DATA
MOV DS,AX
LEA DX,MSG0
MOV AH,9
INT 21H ;显示INPUT
LEA SI,N
LEA DI,G
XOR DX,DX
CALL READ
MOV DX,BX
MOV AX,[DI]
JMP OVER
READ PROC NEAR
XOR BX,BX
RD0:
MOV AH,1
INT 21H
CMP AL,13 ;输入回车结束
JZ RT0
AND AX,0FH ;将AH清零
XCHG AX,[SI]
XCHG AX,BX
MUL Q
XCHG AX,BX
MUL T ;将前一位数字乘十和下一位数字相加
ADD AX,[SI]
ADC BX,0
ADD BX,DX
MOV [DI],AX
XCHG AX,[SI]
JMP RD0
RT0:
RET
READ ENDP
OVER:
MOV AH,4CH
INT 21H
CODE ENDS
END START;此处输入代码段代码

发布了2 篇原创文章 · 获赞 0 · 访问量 460

猜你喜欢

转载自blog.csdn.net/qq_43518269/article/details/105742560