Z80 CPU中的主要指令

表1 - Z80 CPU的主要指令
指令的種類 助記符 功能
運算指令
ADD  A,num
把數值num加到寄存器A的值上
ADD  A,reg
把寄存器reg的值加到寄存器A的值上
SUB  num
從寄存器A的值中減去數值num
SUB  reg
從寄存器A的值中減去寄存器reg的值
INC  reg
將寄存器reg的值加1
DEC  reg
將寄存器reg的值減1
AND  num
計算寄存器A的值和數值num的邏輯積
AND  reg
計算寄存器A的值和寄存器reg的值得邏輯積
OR   num
計算寄存器A的值和數值num的邏輯和
OR   reg
計算寄存器A的值和寄存器reg的值的邏輯和
XOR  num
計算寄存器A的值和數值num的邏輯異或
XOR  reg
計算寄存器A的值和寄存器reg的值的邏輯異或
SLA  reg
對寄存器reg的值進行算數左移運算
SRA  reg
對寄存器reg的值進行算術右移運算
SRL  reg
對寄存器reg的值進行邏輯右移運算
CP   num
比較寄存器A的值和數值num的大小
CP   reg
比較寄存器A的值和寄存器reg的值的大小
內存與CPU之間的輸入輸出指令
LD   reg,num
把數值num寫入到寄存器reg中
LD   reg1,reg2
把寄存器reg2的值寫入到寄存器reg1中
LD   (num),reg
把寄存器reg的值寫入到地址num上
LD   (reg1),reg2
把寄存器reg2的值寫入到存放在寄存器reg1中的地址上
PUSH reg
把寄存器reg的值寫入到棧中
POP  reg
把由棧頂讀出的數據存放到寄存器reg中
I/O與CPU之間的輸入輸出指令
IN   A,(num)
從地址num中讀出數據,存放到寄存器A中
IN   reg,(C)
從存儲在寄存器C中地址上讀出數據,存放到寄存器reg中
OUT  (num),A
把寄存器A的值寫入到地址num中
OUT  (C),reg
把寄存器reg的值寫入到存儲在寄存器C中的地址上
程序流程控制指令
JP   num
使程序的流程跳轉到地址num上,接下來從那個地址上的指令開始執行
CALL num
調用存放在地址num上的子例程
RET
從子例程中返回
HALT
中止CPU的運行
表2 - Z80 CPU的寄存器
Z80 CPU
A F
B C
D E
H L
I R
IX
IY
SP
PC
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章