これは、機械語命令( インストラクション(コード)とか、 オ ペコード (opcode) とか言ったりします)にほぼ対応した命令を文字 列(アルファベット、数字)で書き表し(これをニーモニック (mnemonic) といいます)その引数( オペランド (operand) と いうことがあります)も、レジスタ番号(記号)やアドレスに名前をふったも の(ラベルといいます)で書き表すことで、生の機械語を書くよりは数段楽に プログラミングすることができます。
ちなみに、アセンブリ言語を機械語に変換するのは(計算機が発明された当初 は人間が手でやっていましたが)アセンブラ (assembler, assemble する もの、の意) というプログラム(ソフトウェア)でおこなうのが一般的で す。このことから、アセンブリ言語のことをアセンブラ(ル)言 語とか、あるいは略してアセンブラと言うこともあります。
TIA 1 AIA 2 AO L0: JUMP L0これの読み方の詳細はやはり 学研の「大人の科学」 No.24 ふろく4ビットマイコン 等をみてみてください(_ _)
TIA 1で、A レジスタに1という値をロード(代入)します。レジスタ(メモリ)の 内容を、そのまま1にする、ということです。
AIA 2で、Aレジス タの値に2を加える、ということでAレジスタの値は3になるわけです。
このCPUにおいて、Aレジスタはデータ処理用の作業領域の役目、と覚えておけ ばよいでしょう。
AOこれは、「Aレジスタの値を数字 LED に表示する」ということですので、ここ では加算された結果の3を表示します。この命令はかならず実行レジスタを1 にします。
L0: JUMP L0これは、「実行フラグが1の場合、ラベル L0 が示すアドレスに制御を移す」 ということで、前の命令で実行フラグは1になったのでこの命令を実行する、 ということは、自分自身を再度実行せよ、ということになります。つまりここ で無限ループに入ることになり、実質的なプログラムの終了です。