关于汇编语言两个16进制数相加后存储的问题

发布网友 发布时间:2024-10-24 07:46

我来回答

1个回答

热心网友 时间:2024-11-01 03:49

两处问题:
1、“ADD DX,DATA2+2 ;高字部分带进位相加”中,应该用ADC
2、图中CS:0017处并没有生成MOV RESULT+2,DX指令,怀疑是被注释掉了

STACK1 SEGMENT PARA STACK
DW 128 DUP(?)
STACK1 ENDS

DATA SEGMENT
DATA1 DD 1A135311H
DATA2 DD 95264783H
RESULT DD ?
DATA ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX

MOV AX,word ptr DATA1
MOV DX,word ptr DATA1[2]

ADD AX,word ptr DATA2 ;低字部分相加
ADC DX,word ptr DATA2[2] ;高字部分带进位相加

MOV word ptr RESULT,AX ;存放低字部分相加结果
MOV word ptr RESULT[2],DX ;存放高字部分相加结果

mov ah,4ch
int 21h
CODE ENDS
END START

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com