汇编:将双字添加到双字

时间:2014-05-07 19:52:05

标签: assembly x86

所以我有一些功课让我脱掉了头发。

这是代码:

VALUE1  DW  0153H
    DW  1624H
VALUE2  DW  0328H
    DW  3C44H
RESULT  DW  0
    DW  0
    DW  0
    DW  0

    MOV SI,OFFSET VALUE1
    MOV DI,OFFSET VALUE2
    MOV AX,[SI]
    INC SI
    ADD AX,[SI]
    MOV BX,[DI]
    INC DI
    ADD BX,[DI]

教授希望我们将从Value1开始的双字添加到从VALUE2开始的双字,然后将其存储为结果之一。我一直试图在网上和书上寻求帮助,但我已经被困了一个多小时了。有帮助吗?这段代码是我从书中查看的内容,我怀疑它是对的,但它是我迄今为止所拥有的

1 个答案:

答案 0 :(得分:0)

您必须首先添加单词,然后使用其他单词添加其附带内容。

尝试使用此代码:

d dd 1111111
d1 dd 2222222
d2 dd ?

lea bx,op1
mov ax,[bx]
mov dx,[bx+2]
lea bx,op2
add ax,[bx]
adc dx,[bx+2]  ;add two word and carry
lea bx,d
mov [bx],ax
mov 2[bx],dx