汇编 8086 中的 SHR 命令
Posted
技术标签:
【中文标题】汇编 8086 中的 SHR 命令【英文标题】:SHR command in assembly 8086 【发布时间】:2019-02-23 10:05:59 【问题描述】:我得到了以下代码,我想在每一步之后写下观察结果。代码是:
MOV AL,15
MOV AH,0FFH
XOR AL,AL
MOV CL,3
SHR AX,CL
现在唯一让我困惑的是 SHR 命令。我知道它会将 AX 的值移动 3 次,但它会怎么做呢?
【问题讨论】:
“它将如何做到”是什么意思?你想要一个关于班次如何工作的带有门的示例图吗?你是在问它将如何填充新移动的 inf 位? 中间结果(如果您将其视为 3 个班次的序列)将无法在软件中观察到。您将仅观察最终结果和所用时钟的适当数量(8086/8088 为 8+4*CL 时钟)。如果这就是你要问的。 你真的在问AX如何别名AH:AL吗?如果是这样,这是 x86 Calculating AX given AH and AL? 的副本 【参考方案1】:它将采用AX
中的位值并将它们向右移动。例如,假设:
AX
= 15
CL
= 3
二进制中的 15 将是 16 位寄存器中的 00000000 00001111
(AX
是)
将这些位向右移动 3 位将导致:00000000 00000001
(请注意:我没有尝试使用您问题中的值,因为它们似乎是学校作业)
最低三位已“移入”位桶或空位。他们走了。
【讨论】:
以上是关于汇编 8086 中的 SHR 命令的主要内容,如果未能解决你的问题,请参考以下文章