Assembly 更多汇编语言乘法

Assembly 更多汇编语言乘法,assembly,hex,multiplication,Assembly,Hex,Multiplication,我对如何处理汇编乘法感到困惑。我正在解决以下几个问题: Given these hex values for the 8086 registers AX = E204 BX = 30C2 CX = 5C08 DX = 38F1 What are the hex values in DX and AX after executing this instruction: mul cl 对于mul操作,我们是否仅使用al和乘法器进行乘法?例如,此乘法是否仅为4*8=32(十进制)

我对如何处理汇编乘法感到困惑。我正在解决以下几个问题:

Given these hex values for the 8086 registers
AX = E204    BX = 30C2    CX = 5C08    DX = 38F1
What are the hex values in DX and AX after executing this instruction:
mul  cl
对于mul操作,我们是否仅使用al和乘法器进行乘法?例如,此乘法是否仅为4*8=32(十进制),结果存储在ax中

当使用imul时,我们会将ax中的整个值与乘数相乘,然后将结果存储在dx:ax中,对吗

对于这个问题,如果我确实以正确的方式处理它,al*cl=4*8=32。然后:

al = 20

我是保持ah不变(E2)还是将答案归零

请从下载完整的英特尔x86 CPU文档


有关这条指令的详细信息,您可以阅读。

请从下载完整的英特尔x86 CPU文档


有关这一条说明的详细信息,您可以阅读。

为什么不试试?没关系,我是为你做的:

Microsoft Windows XP [Versione 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\db>debug
-a
15AB:0100 mov ax, e204
15AB:0103 mov bx, 30c2
15AB:0106 mov cx, 5c08
15AB:0109 mov dx, 38f1
15AB:010C mul cl
15AB:010E
-g=0100,010e

AX=0020  BX=30C2  CX=5C08  DX=38F1  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=15AB  ES=15AB  SS=15AB  CS=15AB  IP=010E   NV UP EI PL NZ NA PO NC
15AB:010E 0000          ADD     [BX+SI],AL                         DS:30C2=00
-q

C:\DOCUME~1\db>

你为什么不试试?没关系,我是为你做的:

Microsoft Windows XP [Versione 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\db>debug
-a
15AB:0100 mov ax, e204
15AB:0103 mov bx, 30c2
15AB:0106 mov cx, 5c08
15AB:0109 mov dx, 38f1
15AB:010C mul cl
15AB:010E
-g=0100,010e

AX=0020  BX=30C2  CX=5C08  DX=38F1  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=15AB  ES=15AB  SS=15AB  CS=15AB  IP=010E   NV UP EI PL NZ NA PO NC
15AB:010E 0000          ADD     [BX+SI],AL                         DS:30C2=00
-q

C:\DOCUME~1\db>

看起来像是家庭作业。为什么不仔细阅读英特尔指令参考?看起来像是家庭作业。为什么不仔细阅读英特尔指令参考?