命令セット・アセンブリ
上のRISC-Vのコードを実行した後、レジスタa2の値はいくらか。
addi a0, zero, 5
addi a1, a0, 3
add a2, a0, a1
- A8
- B13
- C15
答えと解説を見る
正解:B. 13
1行目はzero(常に0)に5を足してa0=5、2行目はa0に3を足してa1=8、3行目はa0とa1を足してa2=5+8=13になります。RISC-Vの算術命令は「命令 書き込み先, 読み出し元1, 読み出し元2(または即値)」の順に書き、最初のレジスタが結果の入る先です。zeroはx0の別名で、定数を作るときによく使います。
- A. 8はa1の値です。
- B. 正しい。5+8=13です。
- C. a1を5+3=8として計算し直してください。