2進数10進数変換|初心者でもすぐわかる基数変換

2進数⇔10進数 変換

クイック変換:よく使われる数値をクリックして素早く変換
10
100
255
1024
1111
11111111

変換方法の詳細解説

10進数から2進数への変換方法

10進数を2進数に変換するには、2で割り続ける方法が最も一般的です。

  1. 変換したい10進数を2で割る
  2. 商と余りを記録する
  3. 商が0になるまで、商を2で割り続ける
  4. 余りを下から上に並べると2進数になる
具体例:10進数「13」を2進数に変換
13 ÷ 2 = 6 余り 1
6 ÷ 2 = 3 余り 0
3 ÷ 2 = 1 余り 1
1 ÷ 2 = 0 余り 1

余りを下から読むと:1101

別の方法:2の累乗を使用する方法もあります。13 = 8 + 4 + 1 = 2³ + 2² + 2⁰ なので、8桁目、4桁目、1桁目に1を立てると「1101」となります。

2進数から10進数への変換方法

2進数を10進数に変換するには、各桁の重みを掛けて合計します。

  1. 右端(最下位桁)から順に、位置を0, 1, 2, 3…と番号付けする
  2. 各桁の数値に、2のその位置乗を掛ける
  3. すべての値を合計する
具体例:2進数「1101」を10進数に変換
1
2³=8
1
2²=4
0
2¹=2
1
2⁰=1
1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13

2進数と10進数の対応表

よく使われる2進数と10進数の対応関係を一覧にしました。プログラミングや情報処理試験対策に役立ちます。

10進数 2進数 10進数 2進数
001610000
113111111
21032100000
31163111111
4100641000000
51011271111111
611012810000000
711125511111111
81000256100000000
910015121000000000
10101010231111111111
111011102410000000000
1211002048100000000000
13110140961000000000000
141110819210000000000000
15111116384100000000000000

2の累乗表

2進数の各桁が持つ重み(10進数での値)を示します。この表を使えば、暗算でも変換が可能になります。

桁位置 2の累乗 10進数値 用途例
2⁰111ビット目
222ビット目
443ビット目
884ビット目
2⁴16165ビット目
2⁵32326ビット目
2⁶64647ビット目
2⁷1281288ビット目(1バイト)
2⁸2562569ビット目
2⁹51251210ビット目
2¹⁰102410241キロバイト(概算)
2¹⁶655366553616ビット整数最大値+1

実用的な変換例

IPアドレスとサブネットマスク

ネットワーク設定でよく使用される数値の2進数表現です。

  • 255(10進数) = 11111111(2進数)- サブネットマスクで頻出
  • 254(10進数) = 11111110(2進数)- 使用可能ホスト数
  • 192(10進数) = 11000000(2進数)- クラスCネットワーク
  • 128(10進数) = 10000000(2進数)- サブネット分割
RGBカラーコード

Webデザインで使用される色の数値表現です。

  • RGB各色は0〜255の範囲(8ビット = 1バイト)で表現
  • 255 = 最大輝度(11111111
  • 128 = 中間輝度(10000000
  • 0 = 最小輝度(00000000
ファイルサイズとメモリ容量

コンピューターのデータ容量は2進数ベースで管理されます。

  • 1024バイト = 1キロバイト(KB)= 10000000000(2進数)
  • 8ビット = 1バイト
  • 256 = 8ビットで表現できる最大数+1

よくある質問(FAQ)

Q1. 2進数とは何ですか?
2進数は、0と1の2つの数字だけで数を表す方法です。コンピューターは電気信号のON(1)とOFF(0)で情報を処理するため、2進数を使用します。私たちが普段使う10進数は0〜9の10個の数字を使いますが、2進数は2で桁上がりします。
Q2. なぜコンピューターは2進数を使うのですか?
コンピューターの内部は電子回路でできており、電流が流れている(ON)か流れていない(OFF)の2つの状態しか持てません。この2つの状態を0と1に対応させることで、確実かつ高速にデータを処理できます。また、2進数はエラーが起きにくく、回路設計もシンプルになります。
Q3. 8ビットと1バイトの関係は?
1バイト = 8ビットです。8ビットの2進数で表せる数は、00000000(0)から11111111(255)までの256通りです。この256という数字は、コンピューターの世界で頻繁に登場します(例:RGBの各色の範囲が0〜255)。
Q4. 2進数で小数は表せますか?
はい、2進数でも小数を表せます。小数点以下は2⁻¹(0.5)、2⁻²(0.25)、2⁻³(0.125)…という重みを持ちます。例えば、2進数の「1.1」は、10進数で「1.5」(1 + 0.5)となります。この形式は浮動小数点数としてコンピューターで使用されています。
Q5. 2進数の負の数はどう表現しますか?
コンピューターでは「2の補数」という方式で負の数を表現します。最上位ビットを符号ビットとして使い、0なら正、1なら負を示します。例えば、8ビットの符号付き整数では、-1は「11111111」、-128は「10000000」と表現されます。
Q6. 情報処理試験で覚えておくべき2進数の知識は?
基本情報技術者試験などでは、以下を覚えておくと便利です:
• 255 = 11111111(8ビット全て1)
• 15 = 1111(4ビット全て1)
• 2の累乗(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024…)
• 1バイト = 8ビット
• 1キロバイト ≒ 1024バイト(2¹⁰)
Q7. 2進数と16進数の関係は?
16進数は2進数を扱いやすくするための表記法です。2進数の4桁が16進数の1桁に対応します。例えば、2進数「1111」は16進数「F」、2進数「11111111」は16進数「FF」となります。プログラミングやメモリアドレスの表記によく使われます。
Q8. 大きな数の変換を素早く行うコツは?
2の累乗を覚えておくことが重要です。例えば、10進数「1000」を変換する際、512(2⁹)+ 488と分解し、さらに488を256(2⁸)+ 232…と分解していきます。また、255 = 11111111のような基準値を覚えておくと、引き算で効率的に変換できます。

2進数の基礎知識

2進数の歴史

2進数の概念は古代から存在しましたが、数学的に体系化したのは17世紀のドイツの数学者ゴットフリート・ライプニッツです。彼は2進数が「存在」と「無」を表す哲学的な意味も持つと考えました。20世紀に入り、ジョージ・ブールの論理代数と組み合わさることで、現代のデジタルコンピューターの基礎となりました。

ビット(bit)とバイト(byte)
  • ビット(bit):2進数の1桁のこと。binary digitの略。0か1のどちらかの値を持つ
  • バイト(byte):8ビットをまとめた単位。1文字を表すのに必要な情報量
  • ニブル(nibble):4ビット。16進数1桁に相当
  • ワード(word):CPUが一度に処理できるビット数(16/32/64ビットなど)
2進数が使われる場面
  • コンピューターの内部処理:すべてのデータは最終的に2進数で保存・処理される
  • ネットワーク:IPアドレス、サブネットマスクの設定
  • プログラミング:ビット演算、フラグ管理、パーミッション設定
  • デジタル回路:論理ゲート、フリップフロップなどの設計
  • データ圧縮:ハフマン符号化などの圧縮アルゴリズム
  • 暗号化:ビット単位での暗号処理

関連する進数体系

進数名 基数 使用する数字 主な用途
2進数 2 0, 1 コンピューターの内部処理
8進数 8 0〜7 Unixのファイルパーミッション
10進数 10 0〜9 日常生活での数の表現
16進数 16 0〜9, A〜F メモリアドレス、カラーコード
覚え方のヒント:各進数は、その基数で桁上がりします。10進数は10になると桁が上がり、2進数は2になると桁が上がります。16進数は16(10進数)= 10(16進数)で桁が上がります。

実践練習問題

初級問題
  1. 10進数「7」を2進数に変換してください → 答え: 111
  2. 2進数「1100」を10進数に変換してください → 答え: 12
  3. 10進数「16」を2進数に変換してください → 答え: 10000
  4. 2進数「11111」を10進数に変換してください → 答え: 31
中級問題
  1. 10進数「100」を2進数に変換してください → 答え: 1100100
  2. 2進数「10101010」を10進数に変換してください → 答え: 170
  3. 10進数「255」を2進数に変換してください → 答え: 11111111
  4. 8ビットで表現できる最大の10進数はいくつですか? → 答え: 255
上級問題
  1. 10進数「1024」を2進数に変換してください → 答え: 10000000000
  2. 2進数「111111111」(9ビット)を10進数に変換してください → 答え: 511
  3. IPアドレス「192.168.1.0」の「192」を2進数に変換してください → 答え: 11000000
  4. 16ビットで表現できる最大の10進数はいくつですか? → 答え: 65535