曲径通幽论坛
标题:
8086的乘除指令
[打印本页]
作者:
beyes
时间:
2009-4-1 01:40
标题:
8086的乘除指令
一、乘法指令
MUL
(1)
两个相乘的数,要么都是 8 位,要么都是 16 位。如果是 8 位,一个默认在 AH 中,另一个放在 8 位寄存器或内存字节单元中;如果是 16 位,一个默认在 AX 中,另一个放在 16 位寄存器或内存单元中。
(2) 结果:
如果 8 位乘法,结果默认放在AX中;如果是 16 位乘法,结果高位默认在 DX 中存放,低位在 AX 中存放。
格式: mul reg
mul 内存单元 ( mul byte ptr ds:[0] ,mul word ptr [bx + si + 8] )
二、除法指令 DIV
(1)
除数:有 8 位和 16 位两种,在一个寄存器或内存单元中。
(2)
被除数:默认放在 AX 或 DX和AX 中,如果除数为 8 位,被除数则为 16 位,默认在 AX 中存放;如果除数为 16 位,被除数则为 32 位,在 DX和AX 中存放,DX存放高 16 位, AX存放低 16 位。
(3)
如果除数为 8 位,则 AL 存储处罚操作的商,AH 存储除法操作的余数;如果除数为 16 位,则 AX 存储除法操作的商, DX 存储处罚操作数的余数。
欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/)
Powered by Discuz! X3.2