8085微处理器中的RAL指令


在8085指令集中,还有一个助记符**RAL**,代表旋转累加器左移,并且在旋转过程中涉及Cy标志。它将累加器的内容左移1位。下图描述了指令的执行逻辑。

RAL Accumulator

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

助记符,操作数操作码(十六进制)字节
RAL171

该指令可用于多种用途。

  • 查找累加器的最高位,执行左移。

  • 执行乘以2的操作。我们知道,如果我们将一个数字乘以2n,则该数字将进行n位左移。

  • 由于旋转过程中会产生一个空位,因此为了在这个最低位空位放入一个新的位,我们也可以使用这个助记符。

让我们考虑以下示例以便更好地理解。

示例1

35H ---> 0011 0101
0 0110 1010 ---> 6AH (Prev. Cy bit as the Last bit)



之前之后
(A)
35H6AH
(Cy)
00


地址十六进制代码助记符注释
200317RAL旋转累加器左移

注意,与之前的值相比,累加器的值已加倍。

示例2

35H ---> 0011 0101
0 0110 1011 ---> 6BH(Prev. Cy bit as the Last bit)



之前之后
(A)
35H6BH
(Cy)
10


地址十六进制代码助记符注释
200317RAL旋转累加器左移

这里,与累加器的初始内容相比,当前累加器的值没有加倍。因为在这种情况下,累加器的最高位在旋转前是1。

针对此指令**RAL**执行的时序图如下:

RAL

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

更新于:2019年7月30日

5K+ 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告