問題
10進数の演算式 7÷32 の結果を2進数で表したものはどれか。
ア 0.001011
イ 0.001101
ウ 0.00111
エ 0.0111
解答 ウ
2の補数
負の数を表すには、2の補数で表現します。2の補数を行うには、以下の手順になります。
①まず、ある数値Aに対して、Aの全てのビットを反転させる。
例)A=00001011(10進数ではA=11)であったなら、A=11110100とする。
②反転させたAに対して、1を加える。
例)反転させたA=11110100に1を加える。A=11110100 + 1 = 11110101
上の例)では、A=11110101(10進数ではA=-11)が2の補数になり、最初のA=00001011(10進数ではA=11)の負の数となります。
ある数nに対する2の補数(-n)を行う過程を論理式で表すと、以下になります。
①②nと11111111の論理和(XOR)を求めて、1を加える。
A = (n XOR 11111111) + 00000001
.jpg)
