戻る 10 進数から 2 進数への変換



10 進数をどんどん 2 で割って、 余り (0 か 1) を並べていくと 2 進数に変換できます。

下の方に 3 桁の 10 進数が表示されています。
STEP ボタンをクリックすると、 それを 2 で割った商と余りが表示されます。

STEP ボタンを何度かクリックすると、 商が 0 になって枠内の表示が 「 170 = 10101010 」 のように変わります。 これで 2 進数への変換は完了です。
10 進数 「170」 を 2 進数に変換すると、 「10101010」 になります。




Text Field に 1 から 255 までの 10進数を入力すると、 任意の数値を2進数に変換することができます。






では、なぜ 2 で割って余りを並べていくと 2 進数に変換できるのでしょうか。

というと難しそうに思うかもしれませんが、 実は簡単です。
例えば、 13 を 2 進数にすると 1101 ですが、 この 13 を 2 進数にすることを考えてみます。
10 進数の 13 も、 2 進数の 1101 も同じ数字ですから、 10 進数の 13 を 2 で割るのも、 2 進数の 1101 も同じことです。
2 進数を 2 で割ると、 右に一桁シフとします。 1101 は 110 になります。 13 を 2 で割ると商は 6 ですから、 辻褄は合っています。
このとき、 2 進数の 20 の桁は 2 で割れませんから 余り になります。
こうして 2 進数の 20 の桁は 2 で割るたびに次々に余りになりますから、 最後にこれを並べてやると元の 1101 になる、 というわけですが、 なんだか狐につままれた話みたい、 ですか?




関連事項:  2 進数から 10 進数への変換  2 進数 


情報処理概論 に戻る   目次 に戻る  戻る

Java applet 圧縮アーカイブファイル    自由利用マーク
update: 2012.09.29  address