本連載はHisa Ando氏による連載「コンピュータアーキテクチャ」の初掲載(2005年9月20日掲載)から第72回(2007年3月31日掲載)までの原稿を再掲載したものとなります。第73回以降、最新のものにつきましては、コチラにて、ご確認ください。

I/O命令群

RAM/ROMをアクセスして読み書きを行ったり、I/Oポートをアクセスしてデータのやり取りを行ったりするのがI/O命令である。次の表に示すようにI/O命令はOPAで指定される15種のバリエーションがあり、OPAの値により、アクセス対象がRAMであるかROMであるか、あるいはI/Oポートであるかなどが指定される。

  • 4004のI/O命令

WRM命令とRDM命令

WRM命令は、SRC命令と後述のDCL命令で選択されたRAMのMM文字にアキュムレータの内容を書き込む。RDM命令はWRM命令の逆であり、SRC命令と後述のDCL命令で選択されたRAMのMM文字からデータをアキュムレータに読み込む。

WR0/1/2/3命令とRD0/1/2/3命令

WR0/1/2/3命令は、SRC命令と後述のDCL命令で選択されたRAMの状態文字 0/1/2/3にアキュムレータの内容を書き込む。RD0/1/2/3命令はこれらと対になり、SRC命令と後述のDCL命令で選択されたRAMの状態文字 0/1/2/3のデータをアキュムレータに読み込む。

WMP命令

WMP命令は、選択されているRAMチップの出力ポートにアキュムレータの内容を書き出す。

WRR命令とRDR命令

WRR命令は、SRC命令で選択されたROMチップの出力ポートにアキュムレータの内容を出力する。RDR命令は、SRC命令で選択されたROMチップの入力ポートのデータをアキュムレータに読み込む。

SBM/ADM命令

SBM命令は、SRC命令と後述のDCL命令で選択されたRAMのMM文字からデータを読み込み、ボローとともにアキュムレータから減算する。ADM命令は、SRC命令と後述のDCL命令で選択されたRAMのMM文字からデータを読み込み、キャリーとともにアキュムレータに加算する。