Menu

10進数から2進数への変換ツール

整数を入力すると2進数で表示され、その下に2で割る各ステップが並びます。最初は101010になる42が入っています。

著者 Nethanel Bar, Co-founder & CEO

最終更新

本気でプログラミングを学びませんか?

Coddyはブラウザ上で実際にコードを書きながら学ぶサービスです。インタラクティブなレッスン、即時フィードバック、行き詰まったときのAIサポート付き。

10進数を2進数に変換する方法

2で割るたびに余りは0か1になり、その余りが右から順に次のビットになります。42の場合:42 ÷ 2 = 21 余り 0、21 ÷ 2 = 10 余り 1、10 ÷ 2 = 5 余り 0、5 ÷ 2 = 2 余り 1、2 ÷ 2 = 1 余り 0、1 ÷ 2 = 0 余り 1。余りを下から上へ読むと101010になります。

小さい数なら別の方法も便利です。収まる最大の2のべき乗(42なら32)を見つけて引き、残り(10、次に8、次に2)で同じことを繰り返します。使ったべき乗の位に1、それ以外に0を書きます。

変換ツールは入力した整数について割り算の手順を表示します。BigIntを使うので、大きな値も正確なままです。

10進数を2進数で書くときに知っておきたいこと

  • 最後に書いた余りが左端のビットになります。
  • 2進数では偶数の末尾は0、奇数の末尾は1です。
  • 数を2倍すると2進数の末尾に0が1つ付きます。21は10101、42は101010です。
  • 128〜255の数はちょうど8ビット必要で、9ビットが必要になる最初の数は256です。

10進数から2進数への変換例

42

10進数

42

2進数

101010

42 = 32 + 8 + 2 なので、32、8、2のビットが1で、残りは0です。

255

10進数

255

2進数

11111111

255は256より1小さいので、256未満のビットがすべて立ち、1が8個並びます。

サブネットマスクの1バイト

10進数

192

2進数

11000000

192 = 128 + 64。255.255.255.192のようなサブネットマスクは、このように1バイトずつ読みます。

2のべき乗

10進数

1024

2進数

10000000000

1024は2¹⁰なので、1のあとに0が10個続きます。

10進数を2進数に変換するときのよくある間違い

  • 余りを上から下へ読んでしまう。最初の余りが右端のビットなので、最後の余りから最初へ逆順に読みます。
  • 割り算を1回早く止めてしまう。商が0になるまで割り続けます。最後の余りの1が先頭のビットです。
  • 負の数や小数を同じ方法で変換してしまう。負の数は2の補数を使い、小数には別の方法が必要です。
  • 固定幅に必要な先頭の0を落としてしまう。5は101ですが、1バイトで書くと00000101です。

10進数から2進数への変換:よくある質問

10は2進数でいくつ?
1010です。10 = 8 + 2 なので、8と2のビットが1になります。
100は2進数でいくつ?
1100100です。100 = 64 + 32 + 4。
Pythonで10進数を2進数に変換するには?
bin(42) は '0b101010' を返し、format(42, 'b') は接頭辞なしの '101010' を返します。JavaScriptでは (42).toString(2) を使います。
ある数を表すには何ビット必要?
商が0になるまで2で割った回数がビット数です。42なら6ビット、255なら8ビット必要です。

詳しく見る

その他の開発者ツール

Coddyのプログラミング言語のイラスト

Coddyでコードを学ぼう

始める