8085 微處理器中的累加器或暫存器 A
暫存器 A 是一個 8 位暫存器,用於 8085 執行算術、邏輯、I/O 和載入/儲存操作。暫存器 A 通常被稱為累加器。累加器是計算機 CPU(中央處理器)中用於短期、中間儲存算術和邏輯資料的暫存器。在涉及兩個運算元的算術運算中,一個運算元必須在此暫存器中。算術運算的結果將儲存或累積在此暫存器中。類似地,在涉及兩個運算元的邏輯運算中,一個運算元必須在累加器中。此外,一些其他操作,如求補和十進位制調整,只能在累加器上執行。
現在讓我們考慮一個僅涉及累加器內容的程式段。在 8085 指令集中,**STA** 是一個助記符,代表將累加器內容儲存到記憶體中。在此指令中,累加器 8 位內容將儲存到記憶體位置中,其 16 位地址在指令中以 a16 表示。此指令使用絕對定址來指定目標。此指令佔用 3 個位元組的記憶體。第一個位元組用於操作碼,接下來的兩個連續位元組分別提供分為 8 位的 16 位地址。
助記符,運算元 | 操作碼(十六進位制) | 位元組 |
---|---|---|
STA 地址 | 32 | 3 |
讓我們考慮 **STA 4050** 作為此類指令的一個示例。它是一個 3 位元組指令。第一個位元組將包含操作碼十六進位制值 32H。在 8085 組合語言編碼中,支援低位位元組的地址應首先提及,然後是高位位元組的地址應接下來提及。因此,記憶體中的下一個位元組將儲存 50H,之後 40H 將儲存在最後一個第三個位元組中。假設累加器的初始內容為 ABH,記憶體位置 4050H 的初始內容為 CDH。因此,執行後,累加器內容將保持為 ABH,4050H 位置的內容將變為 ABH,替換其以前的內容 CDH。此指令的內容跟蹤如下所示 -
之前 | 之後 | |
---|---|---|
(A) | ABH | ABH |
(4050H) | CDH | ABH |
地址 | 十六進位制程式碼 | 助記符 | 註釋 |
---|---|---|---|
2008 | 2A | STA 4050H | 記憶體位置 4050H 的內容 ← A |
2009 | 50 | 地址的低位位元組 | |
200A | 40 | 地址的高位位元組 |
此指令 **STA 4050H** 的時序圖如下所示 -
**總結** - 因此,此指令 **SDA 4050H** 需要 3 個位元組、4 個機器週期(操作碼獲取、記憶體讀取、記憶體讀取、記憶體寫入)和 13 個 T 狀態才能執行,如時序圖所示。