8 ビットの2進数 11010000 を右に 2 ビット算術シフトしたものを,00010100 から減じた値はどれか。ここで,負の数は2の補数表現によるものとする。
00001000
00011111
00100000
11100000
8ビットの2進数 11010000 は最上位ビットが 1 なので負の数であり,2の補数表現で −48-48−48 を表す。これを右に 2 ビット算術シフトすると,符号ビットを保持したまま右へ 2 ビット移動し,上位 2 ビットには符号ビットの 1 が入るので,11110100(−48÷4=−12-48 \div 4 = -12−48÷4=−12)になる。
00010100 は 202020 なので,20−(−12)=3220 - (-12) = 3220−(−12)=32 となり,2進数では 00100000 である。
したがって,正解は「ウ」である。