跳轉到內容

68000 彙編/暫存器

來自華夏公益教科書,開放的書籍,開放的世界

除了 16 位狀態暫存器之外,所有 68000 暫存器都是 32 位寬。

有八個資料暫存器:d0、d1、d2、d3、d4、d5、d6 和 d7。它們旨在儲存數字,這些數字將進行各種數學和邏輯運算。

有七個地址暫存器:a0、a1、a2、a3、a4、a5 和 a6。它們通常用作指標。

有一個活動堆疊指標:SP,也稱為 a7。通常情況下,處理器處於使用者模式。在使用者模式下,SP 指向使用者堆疊指標 (USP) 暫存器。(在中斷期間,活動堆疊指標 SP 是另一個稱為中斷堆疊指標或系統堆疊指標的暫存器。68020 及更高版本的處理器有第三個稱為主堆疊指標的暫存器。ISP 和 MSP 都不能在使用者模式下訪問)。

68K 包含特殊的定址模式,使使用任何地址暫存器操作資料堆疊結構變得容易。

程式計數器 (PC) 指向當前指令。在 68000 上,只有低 24 位輸出到任何引腳,最大定址範圍為 16MiB。程式計數器在載入新指令或使用 BRA、Bcc、BSR、JMP、JSR、RTS 或 RTE 指令時會自動更改。它也可以用作 PC 相對定址模式中的指標。

條件碼暫存器 (CCR) 由狀態暫存器 (SR) 的低位元組組成。只有低位元組在使用者模式下可訪問,其中只有前五個位有用。在監控模式下,整個 16 位暫存器都是可訪問的。該暫存器如下所示

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
T1 T0 S M 0 I2 I1 I0 0 0 0 X N Z V C

以下是解碼後的暫存器內容

描述
C 進位
V 溢位
Z
N
X 擴充套件
I0 中斷優先順序遮蔽位 1
I1 中斷優先順序遮蔽位 2
I2 中斷優先順序遮蔽位 3
M 主/中斷開關。如果設定了 S,則確定要使用的堆疊模式。如果 M 清除,SP 指向 ISP,否則 SP 指向 MSP。此位在低於 68020 的處理器型號上始終清除。
S 監控模式標誌。如果清除,SP 指向 USP。如果設定,請檢視 M 以確定 SP 指向哪個堆疊。
T0 跟蹤位 1。如果設定,則在程式流更改時跟蹤。此位在低於 68020 的處理器型號上始終清除。
T1 跟蹤位 2。如果設定,則允許在任何指令上跟蹤。請勿同時設定兩個跟蹤位!
華夏公益教科書