なぜ4進数は使われないのか
解決したいこと
本当に些細なふとした疑問です。
なんで4進数は使われないの?
コンピュータは2進数で動きます。
ただ、0,1の羅列は人間にはまだ早いので、8進数や16進数なども使われます。
では、なぜ4進数が使われてなかったのでしょうか?
今更使い始めることはないでしょうが、技術の進歩の過程で4進数が飛ばされて8進数が使われたのはなぜなのか疑問に思いました。
もし、ご存知の方いらっしゃいましたら教えてください!
本当に些細なふとした疑問です。
なんで4進数は使われないの?
コンピュータは2進数で動きます。
ただ、0,1の羅列は人間にはまだ早いので、8進数や16進数なども使われます。
では、なぜ4進数が使われてなかったのでしょうか?
今更使い始めることはないでしょうが、技術の進歩の過程で4進数が飛ばされて8進数が使われたのはなぜなのか疑問に思いました。
もし、ご存知の方いらっしゃいましたら教えてください!
良い着眼点ですね。
2進数(1bit)
4進数(2bit)
8進数(3bit)
16進数(4bit)
こう並べてみると、3bitよりも2bitの方がコンピュータらしい数に見えます。
今でこそ64bitのコンピュータが当たり前ですが、
昔は6bit、7bit、8bitとか当たり前にありました。
なぜ6bitだったかというと、「英数字を表すのに十分な幅だったから」です。
1bit増やすと、当時は結構なコスト増だったので最小単位に抑えたかったのです。
6bitコンピュータの数を表すのに、8進数(3bit)が2つでちょうどよかったのです。
なので、8進数が昔からある開発言語などで使えるのは当時の名残です。
現在は8bitが基本となっているので、16進数(4bit)を使うのが一般的です。
4進数(2bit)が使われないのは、「特に利用用途がないから」ですね。
@CAT_IS_ME
Questioner
大変勉強になりました!2*2ってきれいだし使いやすいかなと思っていましたが、そのような背景があったのですね。回答ありがとうございました!
初期のコンピュータ(PDP-8)のマニュアルが8進数で書かれていたためだと思います。
PDP-8は12bitコンピュータで、8命令しかないみたいです。8進数にした際1文字でなんの命令かわかるのがいいですね...
下記はwikiを引用しているサイトになります。参考になれば...
http://b67c.com/DECPDP8.html
@CAT_IS_ME
Questioner
回答ありがとうございます!そのような環境で作業されていた先人たちに頭が下がります。
1バイトが1オクテットとなり取り扱いがよかったからではないでしょうか……?
@CAT_IS_ME
Questioner
回答ありがとうございました!おっしゃる通り8がキーワードだったみたいです。
人間にとって「表現の短縮」が不十分だったという点もあるでしょう。
コンピュータは 0 と 1 の膨大なビット列を吐き出します。
人間は、そのような長い羅列を、そのまま理解できるほど強くありません。
そこで人間は工夫しました。
ビットを意味のある塊に分割することで、この冷たい二進数に、少しだけ人間の温度を持たせました。
3ビットずつ区切れば8進数、4ビットずつ区切れば16進数になります。
これに対して4進数は2進数をたった「2桁」ずつしかまとめられません。
2進数: 11010110 (8桁)
4進数: 3112 (4桁。2桁ずつ:11 01 01 10)
16進数: D6 (2桁。4桁ずつ:1101 0110)
4進数は、ほんの少しだけ短くします。16進数は大きく圧縮します。