負の整数を表現する代表的な方法として、次の3種類がある。
a 1の補数による表現
b 2の補数による表現
c 絶対値に符号を付けた表現(左端ビットが0の場合は正、1の場合は負)
4ビットのパターン1101をa〜cの方法で表現したものと解釈したとき、値が小さい順になるように三つの方法を並べたものはどれか。
ア
a、c、b
イ
b、a、c
ウ
b、c、a
エ
c、b、a
答え エ
【解説 】
各表現方法でビットパターン1101がいくつになるか求める。
1の補数による表現
1101は左端の最上位ビットが1なので負の数であり、絶対値はビットを反転(0→1、1→0)にすると、0010になりこれは10進数で2であるので1101は-2 である。
2の補数による表現
1101は最上位ビットが1なので負の数であり、絶対値はビットを反転にすると、0010になり、これに1を加えると0011になる。これは10進数で3であるので1101は-3 である。
絶対値に符号を付けた表現
1101の最上位ビットを除いた101は10進数で5であり、最上位ビットが1で負の数なので1101は-5 である。
したがって、小さい順に並べると
c: -5、b: -3、a: -2 (エ)になる。
【キーワード 】
・負の整数の表現
【キーワードの解説 】
負の整数の表現
コンピュータで使われる負の整数の表現方法としては、問題文にあるように
1の補数による表現
2の補数による表現
絶対値に符号を付けた表現
がある。(これ以外の表現方法は、はっきり言って知らなくても問題ない。)
各表現方法の特徴は、
1の補数による表現は、各ビットを反転すると、絶対値が同じで正負が逆になった値を得られる。
全ビット0のときと、全ビットが1のときが両方0になり、無駄がでる。
2の補数による表現は、各ビットを反転して、1を加えると、絶対値が同じで正負が逆になった値を得られる。
正負を意識せずに加算処理ができるので、最も使われている。
絶対値に符号を付けた表現は、人間の直感的には扱いやすいが、コンピュータでは使いにくい。
です。
もっと、「負の整数」について調べてみよう。
戻る
一覧へ
次へ