2進数・基数変換の可視化 — ビットをクリックして体感
2進数は「各桁の重み(右から 1・2・4・8…と2倍ずつ)の合計」でできています。下のビットをクリックしてオン/オフすると、10進数・16進数・8進数がリアルタイムに変化します。重みが合計されていく様子を見れば、基数変換の感覚が身につきます。「符号付き(2の補数)」に切り替えると、負の数の表し方も分かります。
↑ 上が「重み」、下が「ビット(クリックで反転)」
| 2進数 | |
|---|---|
| 10進数 | |
| 16進数 | |
| 8進数 | |
| 重みの合計(計算式) |
2進数は「重みの合計」でできている
10進数の 253 が「100が2個、10が5個、1が3個」なのと同じで、2進数も各桁が重みを持ちます。ただし重みは10倍ずつではなく、右から 1・2・4・8・16…と2倍ずつ。1が立っている桁の重みを足すと10進数になります。上の可視化で、ビットをオンにするたびにその重みが合計に加わるのが見えます。
16進数・8進数との関係
2進数4桁がちょうど16進数1桁、2進数3桁が8進数1桁に対応します。だから長いビット列も、区切って読めば短い16進数で表せます(メモリアドレスや色コード #FF8800 などでおなじみ)。上の表で、同じ数が2進・10進・16進・8進でどう表されるか見比べてください。
符号付き(2の補数)で負の数を表す
「符号付き(2の補数)」に切り替えると、先頭ビット(最上位)が負の重みになります(8ビットなら先頭は −128)。これにより −128〜+127 を表現でき、引き算を足し算の回路だけで計算できます。「先頭ビットが1なら負の数」というサインも、切り替えて確かめてください。仕組みの詳しい解説は 2進数と基数変換の記事 にあります。
🧮 数値を打ち込んで変換するなら:10進・2進・8進・16進を相互に一発変換できる 基数変換ツール が便利です。2進数の足し算やビット反転を担う論理ゲートは 論理回路シミュレータ で動かせます。
基本情報技術者試験ではこう出る
「2進数を10進数に」「10進数を2進数に」「2の補数で負の数を表す」「16進数⇔2進数」が定番です。重みの合計という考え方が身につくと、この手の変換問題は一気に得点源になります。関連:2進数と基数変換 / 論理回路 / 可視化一覧。