GMC-4
GMC-4(ジーエムシーフォー)は、4ビットプロセッサを使用したワンボードマイコンで、学研の大人の科学マガジン vol.24 の付録である。1981年発売の学研電子ブロックFXシリーズの一つであるFX-マイコンR-165のマイコンユニットと互換性がある。
概要
編集GMC-4は80ニブル(40バイト)のプログラムメモリ(00~4F番地)と16ニブル(8バイト)のデータメモリ(50~5F番地)のRAMを持つ。この領域に機械語やデータを入力することにより2進LED,7セグメントLED,スピーカー等を制御する。
レジスタセット
編集GMC-4は4つのレジスタと4つの補助レジスタを持つ。
レジスタ | アドレス |
---|---|
A | 6F |
B | 6C |
Y | 6E |
Z | 6D |
A' | 69 |
B' | 67 |
Y' | 68 |
Z' | 66 |
命令セット
編集基本命令として以下のものがある。
オペコード | ニーモニック | 内容 | Flag |
---|---|---|---|
0 | KA | K→Ar | キー入力有→0 |
1 | AO | Ar→Op | 1 |
2 | CH | Ar⇔Br , Yr⇔Zr | 1 |
3 | CY | Ar⇔Yr | 1 |
4 | AM | Ar→(Yr) | 1 |
5 | MA | (Yr)→Ar | 1 |
6 | M+ | Ar+(Yr)→Ar | 桁上がり→1 |
7 | M- | Ar-(Yr)→Ar | マイナス→1 |
8 | TIA □ | □→Ar | 1 |
9 | AIA □ | Ar+□→Ar | 桁上がり→1 |
A | TIY □ | □→Yr | 1 |
B | AIY □ | Yr+□→Yr | 桁上がり→1 |
C | CIA □ | Ar≠□→Flag | 不一致→1 |
D | CIY □ | Yr≠□→Flag | 不一致→1 |
F | JUMP □□ | if(Flag)goto□□ | 1 |
CAL命令は以下の通り。
Opコード | ニーモニック | 内容(CAL命令はFlag=1の時だけ実行) | Flag |
---|---|---|---|
E0 | CAL RSTO | 0→数字LED | 1 |
E1 | CAL SETR | 1→2進LED[Y] | 1 |
E2 | CAL RSTR | 0→2進LED[Y] | 1 |
E4 | CAL CMPL | NOT(Ar)→Ar | 1 |
E5 | CAL CHNG | A,B,Y,Z⇔A',B',Y',Z' | 1 |
E6 | CAL SIFT | Ar%2→Flag,Ar/2→Ar | Ar[0] |
E7 | CAL ENDS | エンド音 | 1 |
E8 | CAL ERRS | エラー音 | 1 |
E9 | CAL SHTS | ショート音 | 1 |
EA | CAL LONS | ロング音 | 1 |
EB | CAL SUND | Arの音階の音 | 1 |
EC | CAL TIMR | (Ar+1)×0.1sec待ち | 1 |
ED | CAL DSPR | (E)→2進LED[0:3],(F)→2進LED[4:6] | 1 |
EE | CAL DEM- | DEC((Y)-Ar)→(Y),Y-- | 1 |
EF | CAL DEM+ | DEC((Y)+Ar)→(Y),Y-- | 1 |