次のプログラム中の に入れる正しい答えを,解答群の中から選べ。
関数 rev は8ビット型の引数 byte を受け取り、ビットの並びを逆にした値を返す。
例えば,関数revをrev(01001011) として呼び出すと,戻り値は11010010となる。 なお,演算子 ∧ はビット単位の論理積,演算子 ∨ はビット単位の論理和,演算 子 >> は論理右シフト,演算子 << は論理左シフトを表す。例えば,value >> n は value の値を n ビットだけ右に論理シフトし,value << n は value の値を n ビット だけ左に論理シフトする。
[プログラム]
○8ビット型: rev (8ビット型: byte)
8ビット型: rbyte ← byte
8ビット型: r ← 00000000
for (iを1から8まで1ずつ増やす)
endfor
return r
出典令和4年度 基本情報技術者試験 科目B サンプル問題 問6
ア
r ← (r << 1) ∨ (rbyte ∧ 00000001) rbyte ← rbyte >> 1
イ
r ← (r << 7) ∨ (rbyte ∧ 00000001)
rbyte ← rbyte >> 7
ウ
r ← (rbyte << 1) ∨ (rbyte >> 7) rbyte ← r
エ
r ← (rbyte >> 1) ∨ (rbyte << 7) rbyte ← r