8085 微处理器中累加器旋转指令


在 8085 指令集中,有一组指令可以将累加器的内容向左或向右旋转。需要注意的是,旋转操作只能对累加器的内容执行。这些指令集列在下面:

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


助记符 **RLC** 代表“累加器左移旋转”。它将累加器的内容向左旋转 1 位。下图明确显示了此操作:


在此图中,它描绘了累加器的最高有效位将移出,左移旋转将在最低有效位处创建一个空位,并且这个移出的位将被复制到空位以及标志寄存器中的 Cy 位上。因此,Cy 标志获取从 MS 位位置移出的位的副本。请注意,Cy 标志不参与旋转,它只是累加器内容的 8 位旋转。只有 Cy 标志受此指令执行的影响。

助记符 **RAL** 代表“累加器左移旋转”,并且还涉及 Cy 标志参与旋转。它将累加器的内容向左旋转 1 位。下图描绘了指令的执行逻辑。


从图中我们可以看到,由于左移旋转,从最高有效位移出的位将被复制到 Cy 标志位。而之前的 Cy 位将被移到累加器的最低有效位位置。因此,它是累加器和 Cy 内容的 9 位旋转。只有 Cy 标志受此指令执行的影响。

助记符 **RRC** 代表“累加器右移旋转”。借助此指令,我们可以将累加器的当前内容向右旋转 1 位。下图将描绘旋转操作:


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

助记符 **RAR** 代表“累加器右移旋转,涉及 Cy 标志参与旋转”。它将累加器的内容向右旋转 1 位。从下图中,我们获得了操作细节:


从图中我们可以看到,在右移旋转期间,最低有效位移出并被复制到 Cy 标志位,而之前的 Cy 标志位将被移到累加器的最高有效位位置。它是一个 1 字节指令。并且它是累加器和 Cy 内容的 9 位旋转。只有 Cy 标志受此指令执行的影响。

更新于: 2020-06-27

3K+ 次浏览

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告