なぜコンピューターは2進数を使うのか
コンピューターは内部で電気が「流れる/流れない」の2状態しか区別できません。この2状態を1と0に対応させたのが2進数です。電子回路と相性がよく、あらゆるデータが最終的には0と1の並びで表現されます。
ただし2進数は桁がすぐ長くなります。10進数の255はわずか3桁ですが、2進数では「11111111」の8桁になります。人が読み書きするには不便なため、より短く書ける16進数がよく併用されます。
2進数・8進数・10進数・16進数を相互変換できます。2〜36進数の任意の基数にも対応しています。
設定
このツールについて
はい、完全無料です。登録不要で、回数制限もありません。
いいえ。すべての変換はブラウザ内で完結します。入力した値がサーバーに送信されることはありません。
はい。内部でBigInt(多倍長整数)を使って計算しているため、桁数が大きくても誤差なく変換できます。
どちらでも変換できます。「FF」でも「ff」でも同じ値として扱います。表示は見やすさのため大文字に統一しています。
はい。「任意の基数に変換」で2進数から36進数まで指定できます。入力側も同様に2〜36進数を選べます。
普段は10進数で数えますが、コンピューターの世界では2進数・8進数・16進数が欠かせません。それぞれの役割と、変換のコツを整理します。
コンピューターは内部で電気が「流れる/流れない」の2状態しか区別できません。この2状態を1と0に対応させたのが2進数です。電子回路と相性がよく、あらゆるデータが最終的には0と1の並びで表現されます。
ただし2進数は桁がすぐ長くなります。10進数の255はわずか3桁ですが、2進数では「11111111」の8桁になります。人が読み書きするには不便なため、より短く書ける16進数がよく併用されます。
16進数は0〜9とA〜Fの16種類で1桁を表します。16は2の4乗なので、2進数4桁がちょうど16進数1桁に対応します。この対応関係のおかげで、2進数と16進数は相互変換が非常にしやすいのが特徴です。
たとえば2進数「1111 1111」は、4桁ずつ区切ると「F」「F」となり、16進数では「FF」。色コードの #FFFFFF やメモリアドレス、文字コード(U+3042 など)で16進数が使われるのは、この扱いやすさが理由です。
8進数は0〜7の8種類で表す方式で、2進数3桁が8進数1桁に対応します。現在もっともよく見かけるのは、Linux・macOSのファイル権限(パーミッション)です。「chmod 755」の755は8進数で、rwx(読み・書き・実行)のビットを3桁で表しています。
7は「111」=読み書き実行すべて許可、5は「101」=読みと実行のみ、という具合です。ビットの意味を知っていると、755や644といった数字の意味がすぐに読み取れます。
10進数から他の進数へ変換するときは、基数で割った余りを下から並べます。たとえば13を2進数にするなら、13÷2=6余り1、6÷2=3余り0、3÷2=1余り1、1÷2=0余り1。余りを下から読んで「1101」です。
逆に2進数を10進数へ戻すときは、各桁に2の累乗(右から1, 2, 4, 8…)を掛けて合計します。「1101」なら 8+4+0+1=13。仕組みを理解したうえで、答え合わせや大きな桁の変換にこのツールを活用してください。
このサイトでは、アクセス解析や広告配信のために Cookie を使用します。詳しくはプライバシーポリシーをご覧ください。