8085微處理器中的RAL指令
在8085指令集中,還有一個助記符**RAL**,代表旋轉累加器左移,並且在旋轉過程中涉及Cy標誌。它將累加器的內容左移1位。下圖描述了指令的執行邏輯。

從圖中我們可以看到,由於左移,從最高位出來的位將被複制到Cy標誌位。而之前的Cy位將被移到累加器的最低位。因此,它是累加器和Cy內容的9位旋轉。只有Cy標誌受此指令執行的影響。
| 助記符,運算元 | 操作碼(十六進位制) | 位元組 |
|---|---|---|
| RAL | 17 | 1 |
該指令可用於多種用途。
查詢累加器的最高位,執行左移。
執行乘以2的操作。我們知道,如果我們將一個數字乘以2n,則該數字將進行n位左移。
由於旋轉過程中會產生一個空位,因此為了在這個最低位空位放入一個新的位,我們也可以使用這個助記符。
讓我們考慮以下示例以便更好地理解。
示例1
35H ---> 0011 0101 0 0110 1010 ---> 6AH (Prev. Cy bit as the Last bit)
| 之前 | 之後 | |
|---|---|---|
| (A) | 35H | 6AH |
| (Cy) | 0 | 0 |
| 地址 | 十六進位制程式碼 | 助記符 | 註釋 |
|---|---|---|---|
| 2003 | 17 | RAL | 旋轉累加器左移 |
注意,與之前的值相比,累加器的值已加倍。
示例2
35H ---> 0011 0101 0 0110 1011 ---> 6BH(Prev. Cy bit as the Last bit)
| 之前 | 之後 | |
|---|---|---|
| (A) | 35H | 6BH |
| (Cy) | 1 | 0 |
| 地址 | 十六進位制程式碼 | 助記符 | 註釋 |
|---|---|---|---|
| 2003 | 17 | RAL | 旋轉累加器左移 |
這裡,與累加器的初始內容相比,當前累加器的值沒有加倍。因為在這種情況下,累加器的最高位在旋轉前是1。
針對此指令**RAL**執行的時序圖如下:

**總結** - 因此,此指令**RAL**需要1個位元組、1個機器週期(操作碼提取)和4個T狀態來執行,如時序圖所示。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP