|
|
アセンブラ仕様 |
仮想コンピュータ アセンブラ仕様
| 1. | 命令はすべて 1 語長(8 ビット)。 上位 4 ビットは命令コード、下位 4 ビットはオペランド (ただし、オペランドがない命令は、8 ビット全てが命令コード)となります。 |
| 2. | 使用できる文字は英数字と記号“ : ; , % $ # ”、空白文字(space)とタブ(tab)です。 |
| 3. | ‘;’の後にコメントを書くことができます。 どんな文字でも使用できますが、仮想コンピュータでは日本語は表示が化けます。 |
| 4. | インデックスアドレッシング(IX)を指定すると、オペランドは “0000” になります。 オペランド“0000” は、分岐命令以外はインデックスアドレッシングモードを意味します。 このため、原則として 0 番地のデータは参照できません。 (0 番地のメモリにアクセスするには、インデックスレジスタを “0000” にした上で、 インデックスアドレッシングを使用します。) |
| 5. | オペランドは 10 進数、16 進数、2 進数のいずれでも記述できます。 2 進数は 4 桁で表記します(0000〜1111)。 ソースプログラム上で明示する場合は、識別子として“%”、“$”、“#” をつけることができます。 (例: 13、D、1101、%13、$D、#1101 はすべて同じ。) |
| 6. | 疑似命令 STORE のアドレスとデータは、識別子を省略すると 10 進数と見なされます。 10 進数であることを明示する、あるいは 16 進数、2 進数を使用する場合は、識別子 “%”、“$”、“#” を使用し ます。 |
| 7. | 分岐命令の飛び先番地を指定するために任意のラベルが使用できます。
末尾に‘ : ’ をつけるとラベルとして認識されます。 例: LOOP: READ 13 JEZ LOOP これで、READ した(13 番地の)データが 0 であれば READ を繰り返すプログラムになります。 |
| 7. | ラベル、命令語、オペランドの間には、任意の数の空白文字(space)、タブ(tab)が使用できます。 |
| 8. | 疑似命令 STORE の番地とデータの間は‘,’ (comma)で区切ります。 |
情報処理概論 に戻る 講義資料 に戻る アセンブラ プログラミング に戻る 戻る
2004.03.05 ueyama@infonet.co.jp