请对下面程序进行简单的注释
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
DATA SEGMENT
X DW ? ;请在此处给X赋值
Y DW ? ;请在此处给Y赋值
Z DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AH,00H
SAHF
MOV CX,0002H
LEA SI, X
LEA DI, Z
A1: MOV AL,[SI]
SBB AL,[SI+02H]
DAS
PUSHF
AND AL,0FH
POPF
MOV [DI],AL
INC DI
INC SI
LOOP A1
A2: JMP A2
CODE ENDS
END START
关于bcd码减法的注释
答案:1 悬赏:80 手机版
解决时间 2021-03-14 10:21
- 提问者网友:缘字诀
- 2021-03-13 19:13
最佳答案
- 五星知识达人网友:行雁书
- 2021-03-13 20:44
已标注,请查收
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
DATA SEGMENT
X DW ? ;请在此处给X赋值
Y DW ? ;请在此处给Y赋值
Z DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AH,00H
SAHF ;标志寄存器传送,把AH内容装入标志寄存器
MOV CX,0002H
LEA SI, X ;获得X地址
LEA DI, Z ;获得Z地址
A1: MOV AL,[SI] ;AL=X
SBB AL,[SI+02H] ;带标志位减
DAS ;将AL中的减差调整为压缩BCD码
PUSHF ;标志寄存器入栈
AND AL,0FH
POPF ;标志寄存器出栈
MOV [DI],AL
INC DI ;自加一
INC SI ;自加一
LOOP A1
A2: JMP A2
CODE ENDS
END START
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
DATA SEGMENT
X DW ? ;请在此处给X赋值
Y DW ? ;请在此处给Y赋值
Z DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AH,00H
SAHF ;标志寄存器传送,把AH内容装入标志寄存器
MOV CX,0002H
LEA SI, X ;获得X地址
LEA DI, Z ;获得Z地址
A1: MOV AL,[SI] ;AL=X
SBB AL,[SI+02H] ;带标志位减
DAS ;将AL中的减差调整为压缩BCD码
PUSHF ;标志寄存器入栈
AND AL,0FH
POPF ;标志寄存器出栈
MOV [DI],AL
INC DI ;自加一
INC SI ;自加一
LOOP A1
A2: JMP A2
CODE ENDS
END START
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯