学习汇编语言中的一些问题 请多多指教

来源:百度知道 编辑:UC知道 时间:2024/09/20 17:55:55
如果两个数据字已分别放在BBFF1和BBFF2开始的存储区中,存放时地字在前,高字在后,两数相加后的结果存放在BUFF3中
程序如下:
MOV AX,BBFF1
ADD AX,BBFF2
MOV BBFF3,AX
MOV AX,BBFF1+2
ADC AX,BBFF2+2
MOV BBFF3=2,AX

前三步我能看懂 后三步是什么意思呢 前三步不是就把程序写完了吗? 怎么后面还有 BBFF1+2=BBFF3吗? 不是又等于多少呢? BBFF1到BBFF2之间是相差一个字节吗?

这是一个双字相加的程序。两个32位数相加,前3步做的是低16位相加,后3步做的是高16位相加,由于低16相加有可能向高16位进位,所以后面的加法用的是adc指令,也就是带进位加法。

好像是把两个32位的数据相加吧?
先加低16位,然后带符号相加高16位

我觉得是错的吧 汇编中 可以直接用BBFF1+2这么写么 好像不能吧 长时间没用了 记不清了