メインコンテンツへ
基礎理論情報数学・離散数学

4ビットの2の補数表現において、2進数 1011 が表す10進数の値はどれか。

ア.+11
イ.+5
ウ.-5正解
エ.-4

解説

2の補数では「最上位ビットが1なら負数」。否定してから1を足した値に符号をつけると正体がわかります。

なぜ ウ が正解か

4ビット 2の補数で 1011:最上位ビットが1なので負数。負数の大きさを求めるには全ビット反転→+1。1011 → 反転 → 0100 → +1 → 0101。0101=5 なので、元の 1011 は -5 を表す。ウが正解。別解:-2³ + 2¹ + 2⁰ = -8 + 2 + 1 = -5 とも計算できる。

なぜ ア は間違いか

+11 は 1011 を符号なし整数として読んだ値(8+2+1=11)。2の補数表現で最上位ビット1は負数のサインで、そのまま10進変換してはいけない。

なぜ イ は間違いか

+5 は 0101 の値。1011 の否定+1 した結果の大きさ(5)を負号なしで答えてしまうミス。

なぜ エ は間違いか

-4 は 1100(2の補数で−4)を読んだ値。1011 の全ビット反転は 0100(=4)、そこに+1して 0101(=5)なので、大きさを1少なく計算したミス。

出典: AI生成問題(学習用)