2020年04月19日
10進数の-10を2進数で表すと
2進数でマイナスを表す時には、2の補数を使います。
補数は、全部のビットを反転して1を加える。
10進数の10を、2進数で表すと1010になります。
1010
↓↓
0101 反転した状態。これに1加えると。
↓↓
0110 これが2進数で表した-10。
確かめ方は、「1010」「0110」を足し算する。
「0110」が-10なら、足し算の結果は「0」になるはず。
1010
0110
-----
0000 4ビット2進数なので桁上がりの5ビット目は無視されます。
ちなみに、全部を反転させたものを1の補数といい
「1010」と足し算することで最大値を求めることができます。
1010
0101
----
1111 これが4ビット2進数の最大値。
最後に、1バイトは8ビット。
8ビットで扱える数字の範囲は-128〜127まで。
なぜ、+側は127まで。それは0が含まれるから。
16ビットだと-32768〜32757。
32ビットだと-2147483648〜2147483647。
これは一般的なコンピュータの話です。
量子コンピュータは量子ビットで情報を扱うので。
† 地球の末路!? †
補数は、全部のビットを反転して1を加える。
10進数の10を、2進数で表すと1010になります。
1010
↓↓
0101 反転した状態。これに1加えると。
↓↓
0110 これが2進数で表した-10。
確かめ方は、「1010」「0110」を足し算する。
「0110」が-10なら、足し算の結果は「0」になるはず。
1010
0110
-----
0000 4ビット2進数なので桁上がりの5ビット目は無視されます。
ちなみに、全部を反転させたものを1の補数といい
「1010」と足し算することで最大値を求めることができます。
1010
0101
----
1111 これが4ビット2進数の最大値。
最後に、1バイトは8ビット。
8ビットで扱える数字の範囲は-128〜127まで。
なぜ、+側は127まで。それは0が含まれるから。
16ビットだと-32768〜32757。
32ビットだと-2147483648〜2147483647。
これは一般的なコンピュータの話です。
量子コンピュータは量子ビットで情報を扱うので。
† 地球の末路!? †
【このカテゴリーの最新記事】
-
no image
-
no image
posted by 得ナビ8!おまんこっちんこうし at 00:00
| プログラミング(Java)