此帖出自单片机论坛
最新回复
8086啊。好久没摸了。占个位置。我先去看下手册再来回复你
首先你这个是8086累加形乘法运算,那么对于一个乘法A*B来说。就是对A进行循环B次的相加。
这里就有一个问题。地址。首先存储器是定位的。比如一个16位乘法器。一个地址的空间是16位0xFFFF。
这个时候,两个数相加如果产生进位。这个进位放哪里。当然要放在下一个地址空间。这个ADC DX,0;的作用就是自动偏移
ADD指令是带进位加法。相加后产生进位。ADC作用是引入进位。也就是说 DX+0+CF,这样当有进位时自动偏移加一
这样既可保存每一个进位到偏移地址。你可以试一下。吧ADC DX,0;这句去掉。你最终只能得到一个16位数。可16位乘十六位应该产生的是32位数啊
[ 本帖最后由 leang521 于 2009-12-17 10:40 编辑 ]
详情
回复
发表于 2009-12-17 10:14
| ||
|
||
| |
个人签名*我的EMAIL: sunke9@qq.com
*我的博客http://blog.ednchina.com/sunke9/ *我网店:https://sunke9.taobao.com/ 承接:电子、自动控制产品设计开发;单片机、ARM编程。 |
|
| |
|
|
| |
|
|
此帖出自单片机论坛
| ||
|
||
在下载中心贡献超过4000份资料
EEWorld Datasheet 技术支持