8085 微处理器中的 RRC 指令


在 8085 指令集中,RRC 代表“累加器右移”。借助此指令,我们可以将累加器的当前内容向右旋转 1 位。下图将描述旋转操作。

RRC Accumulator

在此右移操作中,最低有效位将从累加器中移出,并被复制到标志寄存器中的 Cy 位,并也被复制到累加器的最高有效位位置。请注意,Cy 标志不参与旋转,它只是累加器内容的 8 位旋转。只有 Cy 标志受此指令执行的影响。

助记符,操作数 操作码(十六进制) 字节数
RRC 0F 1

此指令可用于以下多种操作:

  • 通过 cy 位的值来检查累加器最低有效位的值。

  • 它可以用来执行除以 2 的操作。我们知道,如果我们将累加器除以 2n,则累加器的内容将向右移动 n 位。

这些指令的执行已通过以下示例进行了说明:

示例 1

之前 之后

(A)

8AH 45H

(Cy)

任意值 0

8AH --->    1000 1010
 0100 0101 ---> 45H (Last bit 0 is copied to Cy bit)

地址 十六进制代码 助记符 注释
2002 0F RRC 累加器右移

请注意,累加器值减半。

示例 2

之前 之后

(A)

8BH C5H

(Cy)

任意值 1

8AH --->    1000 1011
 1100 0101 --->C5H (Last bit 1 is copied to Cy bit)

地址 十六进制代码 助记符 注释
2002 0F RRC 累加器右移

请注意,在这种情况下,累加器值没有减半,因为累加器的最低有效位在旋转之前为 1。

针对此指令RRC执行的时序图如下所示:

RRC

总结 - 因此,此指令RRC需要 1 个字节、1 个机器周期(操作码获取)和 4 个 T 状态才能执行,如时序图所示。

更新于: 2019 年 7 月 30 日

7K+ 次查看

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告