首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

跪简单的加法题目,两个8字节无符号数相加

2012-02-14 
跪求一个简单的加法题目,两个8字节无符号数相加两个8字节无符号数D1和D2,求这两数之和,将进位放在AL中,其

跪求一个简单的加法题目,两个8字节无符号数相加
两个8字节无符号数D1和D2,
求这两数之和,
将进位放在AL中,
其他位按从高到低的顺序依次存放在SI、BX、CX和DX中。

小弟我是初次接触汇编语言,希望高手们给点指点啊!

[解决办法]
mov bx,d1
mov,dx,d2
mov si,0
mov di,0
clr cf
mov cx,4
a:mov ax,word ptr [bx+di]
addc ax,word ptr [dx+si]
mov word ptr [bx+di],ax
inc si
inc si
inc di
inc di
loop a ;这地方记不得是cx-1非0转移还是CX-1小于0转移了,机理不同上面的CX值不同
mov si,word ptr [bx+di]
dec di
dec di
mov bx,word ptr [bx+di]
dec di
dec di
mov cx,word ptr [bx+di]
dec di
dec di
mov bx,word ptr [bx+di]
shl al ;这是带进位位的循环左移

总体思路是通过基址+变址寻址将D1和D2相加在存回D1的内存(你也可以指定其他地方)然后在进行分段传送至指定的寄存器便可。

热点排行