曲径通幽论坛

标题: 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