2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

i8080 ニーモニック ⇔ 機械語 対照表

Last updated at Posted at 2021-02-22

はじめに

  • ハンドアセンブル/ダイレクトコーディングのお供にどうぞ。
  • ニーモニックはザイログ風にしてあります。

表記

ニーモニック

  • 《オペコード》
  • 《オペコード》 《オペランド》
  • 《オペコード》 《オペランド1》,《オペランド2》

オペランド

  • r: 8bitレジスタ
  • rr: 16bitレジスタ
  • n: 8bitイミディエート
  • nn: 16bitイミディエート
  • cc: 分岐条件
    • 0~2文字で、0文字(無条件)の場合は、続く,ごと無くなります。

転送 (8bit)

A B C D E H L (HL)
LD r,n 3E 06 0E 16 1E 26 2E
LD A,r 7F 78 79 7A 7B 7C 7D
LD B,r 47 40 41 42 43 44 45
LD C,r 4F 48 49 4A 4B 4C 4D
LD D,r 57 50 51 52 53 54 55
LD E,r 5F 58 59 5A 5B 5C 5D
LD H,r 67 60 61 62 63 64 65
LD L,r 6F 68 69 6A 6B 6C 6D
LD (HL),r 77 70 71 72 73 74 75
LD (BC),A 02 - - - - - -
LD A,(BC) 0A - - - - - -
LD (DE),A 12 - - - - - -
LD A,(DE) 1A - - - - - -
LD (nn),A 32 - - - - - -
LD A,(nn) 3A - - - - - -

転送 (16bit)

BC DE HL SP AF
LD rr,nn 01 11 21 31
LD (nn),HL - - 22 -
LD HL,(nn) - - 2A -
EX (SP),HL - - E3 -
EX DE,HL - - EB -
LD PC,HL$^{※}$ - - E9 -
LD SP,HL - - F9 -
PUSH rr C5 D5 E5 -
POP rr C1 D1 E1 -
  • LD PC,HLJP (HL)

演算 (8bit)

A B C D E H L (HL)
INC r 3C 04 0C 14 1C 24 2C
DEC r 3D 05 0D 15 1D 25 2D
ADD r 87 80 81 82 83 84 85
ADC r 8F 88 89 8A 8B 8C 8D
SUB r 97 90 91 92 93 94 95
SBC r 9F 98 99 9A 9B 9C 9D
AND r A7 A0 A1 A2 A3 A4 A5
XOR r AF A8 A9 AA AB AC AD
OR r B7 B0 B1 B2 B3 B4 B5
CP r BF B8 B9 BA BB BC BD
ADD A,n C6 - - - - - -
ADC A,n CE - - - - - -
SUB A,n D6 - - - - - -
SBC A,n DE - - - - - -
AND A,n E6 - - - - - -
XOR A,n EE - - - - - -
OR A,n F6 - - - - - -
CP A,n FE - - - - - -
RLCA$^{※}$ 07 - - - - - -
RRCA 0F - - - - - -
RLA 17 - - - - - -
RRA 1F - - - - - -
DAA 27 - - - - - -
CPL 2F - - - - - -
SCF 37 - - - - - -
CCF 3F - - - - - -
  • 混乱するのですが、RLCARRCAC は'Circular'で、アキュムレータ内で回転するイメージです。
    • 終端で押し出されるビットは、キャリーフラグにも格納されます。
  • 対して、RLARRA は、'through carry'で、キャリーを含めて回転します。

演算 (16bit)

BC DE HL SP
INC rr 03 13 23
DEC rr 0B 1B 2B
ADD HL,rr 09 19 29

分岐・制御

- NZ Z NC C PO PE P M
JP cc,nn C3 C2 CA D2 DA E2 EA F2
CALL cc,nn CD C4 CC D4 DC E4 EC F4
RET cc C9 C0 C8 D0 D8 E0 E8 F0
JP (HL) E9 - - - - - - -
0 1 2 3 4 5 6 7
RST - C7 CF D7 DF E7 EF F7
NOP 00 - - - - - - -
HALT 76 - - - - - - -
DI F3 - - - - - - -
EI FB - - - - - - -

入出力

A
OUT (n),A
IN A,(n)

フラグのビット配置

   7     6     5     4     3     2     1     0  
i8080 $S$ $Z$ $0$ $H$ $0$ $P$ $1$ $C$
uPD8080A $S$ $Z$ $\scriptsize{SUB}$ $\small{CY_4}$ $1$ $\small{P_{/\overline{M}}}$ $1$ $C$

おわりに

  • 例えば、こちらで遊べます。
  • お読みいただきましてどうもありがとうございました。

蛇足

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?