近藤/春のプロジェクト/第11回
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[近藤/春のプロジェクト]]
*Verilog HDLによる記述 [#m2c22130]
**keyword [#yd68ba67]
-ニーモニック
--コンピュータが実行可能な機械語(マシン語)のプログラムを、人間が理解・記述しやすいように簡略化した英単語や記号の組み合わせに置き換えたもの。
--「アセンブラコード」などとも呼ばれる。
-符号拡張 &br;
下記は下位12ビット irout[11:0] を16ビットに符号拡張した値
{{4{irout[11]}},irout{11:0}}
上記の
{4{irout[11]}}
は、繰り返し演算子を用いており、irout[11] を4つ並べた4ビットのビット列となる。
そして、後ろの irout[11:0] と連結することにより、符号拡張した16ビットのビット列になる。
**カウントダウンを行う機械語プログラムとアセンブリ言語プログラム [#e7473c3a]
1 000:D000 IN
2 001:300C L1: POP n
3 002:200C PUSH n
4 003:E000 OUT
5 004:200C PUSH n
6 005:500B J2 L2
7 006:200C PUSH n
8 007:1001 PUSHI 1
9 008:F001 SUB
10 009:300C POP n
11 00A:4002 JMP L1
12 00B:0000 L2: HALT
13 00C:0000 n: 0
**命令セット、ニーモニックと命令コード [#x2df5fc0]
||ニーモニック|16進数表示| ||ニーモニック|16進数表示|
|CENTER: 1|HALT |0000| |10|BAND|F005|
|CENTER: 2|PUSHI I |1000+1| | |BOR|F006|
|CENTER: 3|PUSH A |2000+A| | |BXOR|F007|
|CENTER: 4|POP A |3000+A| | |AND|F008|
|CENTER: 5|JMP A |4000+A| | |OR|F009|
|CENTER: 6|JZ A |5000+A| | |EQ|F00A|
|CENTER: 7|JNZ A |6000+A| | |NE|F00B|
|CENTER: 8|IN |D000| | |GE|F00C|
|CENTER: 9|OUT |E000| | |LE|F00D|
|10|OP f |F000+f| | |GT|F00E|
| |ADD |F000| | |LT|F00F|
| |SUB |F001| | |NEG|F010|
| |MUL |F002| | |BNOT|F011|
| |SHL |F003| | |NOT|F012|
| |SHR |F004| | | | |
終了行:
[[近藤/春のプロジェクト]]
*Verilog HDLによる記述 [#m2c22130]
**keyword [#yd68ba67]
-ニーモニック
--コンピュータが実行可能な機械語(マシン語)のプログラムを、人間が理解・記述しやすいように簡略化した英単語や記号の組み合わせに置き換えたもの。
--「アセンブラコード」などとも呼ばれる。
-符号拡張 &br;
下記は下位12ビット irout[11:0] を16ビットに符号拡張した値
{{4{irout[11]}},irout{11:0}}
上記の
{4{irout[11]}}
は、繰り返し演算子を用いており、irout[11] を4つ並べた4ビットのビット列となる。
そして、後ろの irout[11:0] と連結することにより、符号拡張した16ビットのビット列になる。
**カウントダウンを行う機械語プログラムとアセンブリ言語プログラム [#e7473c3a]
1 000:D000 IN
2 001:300C L1: POP n
3 002:200C PUSH n
4 003:E000 OUT
5 004:200C PUSH n
6 005:500B J2 L2
7 006:200C PUSH n
8 007:1001 PUSHI 1
9 008:F001 SUB
10 009:300C POP n
11 00A:4002 JMP L1
12 00B:0000 L2: HALT
13 00C:0000 n: 0
**命令セット、ニーモニックと命令コード [#x2df5fc0]
||ニーモニック|16進数表示| ||ニーモニック|16進数表示|
|CENTER: 1|HALT |0000| |10|BAND|F005|
|CENTER: 2|PUSHI I |1000+1| | |BOR|F006|
|CENTER: 3|PUSH A |2000+A| | |BXOR|F007|
|CENTER: 4|POP A |3000+A| | |AND|F008|
|CENTER: 5|JMP A |4000+A| | |OR|F009|
|CENTER: 6|JZ A |5000+A| | |EQ|F00A|
|CENTER: 7|JNZ A |6000+A| | |NE|F00B|
|CENTER: 8|IN |D000| | |GE|F00C|
|CENTER: 9|OUT |E000| | |LE|F00D|
|10|OP f |F000+f| | |GT|F00E|
| |ADD |F000| | |LT|F00F|
| |SUB |F001| | |NEG|F010|
| |MUL |F002| | |BNOT|F011|
| |SHL |F003| | |NOT|F012|
| |SHR |F004| | | | |
ページ名: