i8085資料


1.定義命令

 インテルニーモニック。
 i8080から追加定義された命令は、背景色を変えて記述。

略称フラグ名称
サインフラグ(sf)
ゼロフラグ(zf)
補助キャリーフラグ
パリティフラグ(pf)
キャリーフラグ(cf)
表記説明
 11に変化
 00に変化
 #演算結果に沿った変化
 ?不定
 -変化しない

8ビットロード命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
MOV r,sr←s ----- 01   r     s 114 r,s Reg.
000 B 001 C
010 D 011 E
100 H 101 L
111 A
MOV r,Mr←(HL) ----- 01   r   110 127
MOV M,r(HL)←r ----- 01 110   r 127
MVI r,nr←n ----- 00   r   110
--- n ---
 227
MVI M,n(HL)←n ----- 00 110 110
--- n ---
36
 
2310
LDAX BA←(BC) ----- 00 001 0100A127
LDAX DA←(DE) ----- 00 011 0101A127
LDA mnA←(mn) ----- 00 111 010
--- n ---
--- m ---
3A3413
STAX B(BC)←A ----- 00 000 01002127
STAX D(DE)←A ----- 00 010 01012127
STA mn(mn)←A ----- 00 110 010
--- n ---
--- m ---
323413

16ビットロード命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
LXI rp,mnrp←mn ----- 00 rp0 001
--- n ---
--- m ---
 3310 rp Pair Reg.
00 B(BC)
01 D(DE)
10 H(HL)
11 SP
LHLD mnH←(mn+1)
L←(mn)
----- 00 101 010
--- n ---
--- m ---
2A3516
SHLD mn(mn+1)←H
(mn)←L
----- 00 100 010
--- n ---
--- m ---
223516
SPHLSP←HL ----- 11 111 001F9116
PUSH rq(SP-2)←rqL
(SP-1)←rqH
SP←SP-2
----- 11 rq0 101 1312 rq Pair Reg.
00 B(BC)
01 D(DE)
10 H(HL)
11 PSW(AF)
POP rqrqH←(SP+1)
rqL←(SP)
SP←SP+2
----- 11 rq0 001 1310

8ビット算術論理演算命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
ADD rA←A+r ##### 10 000   r 114 r Reg.
000 B 001 C
010 D 011 E
100 H 101 L
111 A
ADD MA←A+(HL) ##### 10 000 110 127
ADI nA←A+n ##### 11 000 110
--- n ---
 227
ADC s
ACI n
A←A+s+cf ##### ** 001 ***     ADD,ADI命令と
同様の繰り返し
s=r,M,n
SUB s
SUI n
A←A-s ##### ** 010 ***
SBB s
SBI n
A←A-s-cf ##### ** 011 ***
ANA s
ANI n
A←A and s ##1#0 ** 100 ***
XRA s
XRI n
A←A xor s ##0#0 ** 101 ***
ORA s
ORI n
A←A or s ##0#0 ** 110 ***
CPA s
CPI n
A-s ##### ** 111 ***
INR rr←r+1 ####- 00   r   100 114 
INR M(HL)←(HL)+1 ####- 00 110 100 1310
DCR ss←s-1 ####- ** *** 101    INR命令と同様の
繰り返し
s=r,M

16ビット算術演算命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
DAD rpHL←HL+rp --?-# 00 rp1 001 1310 rp Pair Reg.
00 B(BC)
01 D(DE)
10 H(HL)
11 SP
INX rprp←rp+1 ----- 00 rp0 011 116
DCX rprp←rp-1 ----- 00 rp1 011 116

ジャンプ命令/コール命令/リターン命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
JMP mnPC←mn ----- 11 000 011
--- n ---
--- m ---
C3
 
 
3310 cc 条件
000 NZ non zero
001 Z zero
010 NC non carry
011 C carry
100 PO parity odd
101 PE parity even
110 P sign positive
111 M sign negative
Jcc mn条件がccなら
PC←mn
そうでなければ
何もしない
----- 11 cc  010
--- n ---
--- m ---
 33
True
10
3
False
7
PCHLPC←HL ----- 11 101 001E9114
CALL mn(SP-1)←PCH
(SP-2)←PCL
SP←SP-2
PC←mn
----- 11 001 101
--- n ---
--- m ---
CD
 
 
3518
Ccc mn条件がccなら
CALL mnに同じ
そうでなければ
何もしない
----- 11 cc  100
--- n ---
--- m ---
 35
True
18
3
False
9
RETPCL←(SP)
PCH←(SP+1)
SP←SP+2
----- 11 001 001C91310
Rcc条件がccなら
RETに同じ
そうでなければ
何もしない
----- 11 cc  000 13
True
12
1
False
6
RST p(SP-1)←PCH
(SP-2)←PCL
SP←SP-2
PCH←0
PCL←p×8
----- 11   p  111 1312p=0〜7

入出力命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
IN nA←(n) ----- 11 011 011
--- n ---
DB
 
2310 nがAB0〜AB7
0がAB8〜AB15
OUT n(n)←A ----- 11 010 011
--- n ---
D3
 
2310

CPU制御命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
NOPNo OPeration ----- 00 000 00000114  
HLTCPU halted ----- 01 110 11076115 NOPの無限ループ
DIIFF←0 ----- 11 110 011F3114  
EIIFF←1 ----- 11 111 011FB114
SIMSOD←A7
----- 00 100 00020114Set Interrupt mode
RIMA7←SID
A3←IFF
----- 00 110 00030114Read Interrupt mode

アキュムレータ操作命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
DAAパックト10進加減算の
結果補正
##### 00 100 11127114 Decimal Adjust Accumulator
CMAA←not A
Aの1の補数をとる
--1-- 00 101 1112F114 CoMplement Accumulator
CMCcf←not cf --?-# 00 111 1113F114 CoMplement Carry flag
STCcf←1 --0-1 00 110 11137114 SeT Carry flag
RLC
A
A7A6 A5…2 A1A0
cf
cf
A6A5 A4…1 A0A7
A7
--0-# 00 000 11107114 Rotate Left Circular
accumulator
RRC
A
A7A6 A5…2 A1A0
cf
cf
A0A7 A6…3 A2A1
A0
--0-# 00 001 1110F114 Rotate Right Circular
accumulator
RAL
A
A7A6 A5…2 A1A0
cf
cf
A6A5 A4…1 A0cf
A7
--0-# 00 010 11117114 Rotate Accumulator
Left
RAR
A
A7A6 A5…2 A1A0
cf
cf
cfA7 A6…3 A2A1
A0
--0-# 00 011 1111F114 Rotate Accumulator
Right

エクスチェンジ命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
XCHGDE←→HL ----- 11 101 011EB114  
XTHLH←→(SP-1)
L←→(SP)
----- 11 100 011E31516  


μPD780余多話に戻る


2.PC−8801モニタで使用できる命令

 PC−8800シリーズに搭載されているi8080用モニタが認識するμPD780(Z80)の命令を掲載。インテルニーモニック準拠。実際にi8080/i8085で動作する訳ではないので、データは無し。

ジャンプ命令

ニーモニックオペレーションフラグOPコードバイトマシン
サイクル
ステートコメント
76 543 210Hex
JMPR mn        00 011 000
-- e-2 --
18
 
2   cr 条件
00 NZ non zero
01 Z zero
10 NC non carry
11 C carry
JRcr mn        00 1cr 000
-- e-2 --
 2  
DJNZ mn        00 010 000
-- e-2 --
10
 
2  

e 相対アドレッシングモードにおける変位値(符号付き2の補数-128〜+127)
e-2 eの実効変位値(オペランド即値)


μPD780余多話に戻る