8 ビットの 2 の補数表現で 10 進数の -37 を表したとき、16 進数表記で正しいものは、次のうちどれか。
正解・解説を確認する
解答正解 5
2 の補数は、元の値のビットをすべて反転して 1 を加えることで得られる。37=00100101 を反転すると 11011010、1 を加えて 11011011=DB になる。検算として、DB(219)-256=-37 となることや、元の 25 と DB を足すと 100(9 ビット目は捨てる)となり 0 になることを確かめられる。
選択肢ごとの判定
1正の値 37 の 16 進表記。負号が表現されていない。
2補数を取る際に下位 7 ビットだけを反転して加算し、最上位の符号ビットを 0 のままにした値。負数では符号ビットが 1 になる。
3符号と絶対値による表現(最上位ビットを 1 にして絶対値 37 を続ける)の値。2 の補数表現とは異なる。
4ビットを反転しただけの 1 の補数の値。2 の補数では、さらに 1 を加える必要がある。
5正しい。37=00100101 を反転して 11011010、1 を加えて 11011011(DB)となる。