- 締切済み
10ビット→1バイト
ほんの思いつきです: 現行のコンピュータは、8ビットを1バイトとして成り立っていますが(ノイマン式?)、70年前に遡って、10ビット(「10進法」)を1バイトとして始めることも可能だったのではないかと思うのですが、どうなんでしょう? また、今後コンピュータが発達していく中で(50年後くらい)、「ノイマン式ロジック」を変更することはあり得ることなのでしょうか?
- みんなの回答 (9)
- 専門家の回答
みんなの回答
- SPROCKETER
- ベストアンサー率26% (2125/7983)
最初は6ビットを1バイトにする計画だったそうで、6ビットあれば、64種類の数字を表現出来るので、10進数が10種類、アルファベットが26種類で合計36種類、他は制御コードなどに使って64種類にするはずだったそうですが、もっと増やした方が良いというクレームが付いて、7ビット、さらには8ビットと増える結果になったようです。 8ビットは256種類の数字を表現出来るので、10進数ではBCDコードで00~99まで表現出来るなど、十分過ぎるほどの数値表現が出来るのですが、漢字表現には4096種類以上必要だったので、日本語表示には不向きで、8ビットパソコンは漢字ワープロには向かなかったようです。 10ビットあれば、1024種類の数字を表現出来ますが、それでも漢字表示には足りません。漢字表示するには16ビット以上必要になります。 今から振り返ってみると、8ビットではなくて、12ビットが1バイトであれば、漢字表示には最低限足りる量だったわけですし、12ビットあれば4096種類の数字を表現出来るので、RGBでは16:16:16で16諧調の4096色表示が出来ますし、 12ビットあればPCM音源でも十分な音色が出せるはずです。そういう意味では、12ビット=1バイトが理想だったわけですが、そこまで考えてなかったのでしょうね。 1バイト=12ビットで、24ビットでアドレッシングする12ビットCPUだったら、16MBのアドレス領域があるわけで、12ビットパソコンが最初から普及していたら、ずいぶん違っていたかもしれませんね。 もっとも、8ビットパソコンでも、実は贅沢だと呼ばれていたわけで、4ビットパソコンが普及していても不思議ではありませんでした。実際、4ビットCPUがありましたし、4ビットでも16種類の数字を表現出来るので、10進数は表現出来たわけです。 8ビット=1バイトという規格は定着しているので、今さら変える事は出来ません。技術的な混乱を生むだけです。
アナログ計算機の時代なら10進数も有り得ましたが。 デジタル計算機はその昔『リレー計算機』から始まっています。 ですから『2進数』で計算するのが得策だったです。 メモリ容量だって数百バイトしかなった。 データと命令を待って処理するのが『ノイマン式』 現在では3進数での計算が研究されている様です。
- okwavey2
- ベストアンサー率15% (251/1593)
ビットは2進数の桁数のことだと思うのですが、何桁にしても2進数は2進数にかわりがなくて、十進数になることはないと思うのですが、何を思いついたのでしょうか。 逆に言うと、2桁の十進数は二進数になるのか?みたいなことだと思いますが、10~99のことで、バリバリ10進数ですね。
お礼
書き込み有難うございました。 「10進法」と挿入したのは勘違いでした。
- dragon-man
- ベストアンサー率19% (2711/13692)
十進法と10バイトはまったく関係ありません。ノイマン方式(ロジックではありません)もまったく別の概念(ストアドプログラム方式)でビット数とは関係ありません。 初期のコンピュータは48ビット、もしくは36ビット単位でした。IBMが360システムを作ったとき8ビットを単位にしたので(正確にはパリティビットを入れて9ビット)そうなっているだけのことです。
- KEIS050162
- ベストアンサー率47% (890/1879)
8ビットを1バイトとしたのは、フォン・ノイマンではないと思いますが、 穴が空いている・空いていない、光ってる・光ってない、石がある・ない、電気がある・ない、白・黒、などいずれにしてもデジタル計算は二つの状態を表す、二値が都合が良かったので、2進数が基本となったのでしょう。 また2進数は、3bit で8進数に、4Bitで16進数に変換し易い利点もあります。演算器を作るにも、回路を作るにも、その昔は歯車式計算機もありましたが、2,8,16進数の方が実現手段が容易だったのでしょう。 デジタル式のコンピュータでは、2進数から変ることは先ずないと思いますが、全く異なる構造のコンピュータ(例えばアナログコンピュータなど)が普及すれば、変ってくるかも知れませんね。
お礼
ご意見ありがとうございました。
集積回路は、結局電気が流れてるか流れてないか(1か0か)で 情報を判断するので2進数のほうが無駄が少ない。 もし10進数なら計算機はイコールボタンを推してから 答えが出るのに1秒かかり、ファミコンは動作が重く、 宇宙進出は何年も遅れていたかもしれない。
- nanasidesuyo
- ベストアンサー率20% (122/609)
10bitがなにゆえ、10進法になるか私には理解できない。 10bitで10進数の一桁を表すというのか? IBMなどは、4bitで10進数の一桁を表す2進化10進数を長らく採用していた。
お礼
書き込み有難うございました。
- asuncion
- ベストアンサー率33% (2127/6289)
10だと人間には都合がいいですが(無意識のうちに十進法を使っているから)、 二進法を使うコンピューターにはあまり都合がよくなさそうに思います。 2^n = 10 のnが整数にならないから。
お礼
書き込み有難うございました。
- ballville
- ベストアンサー率47% (233/487)
>10ビット(「10進法」) とわざわざ断り書きが必要になるわけです。二進数の世界で構成するなら、 「1010」(2進4ケタ)を使うより、2進3ケタの「100」(8)を採用したほうが、草創期のコンピュータにとってリソースが軽く済んだと思われます。 とはいえ、草創期には1バイト=8ビットでないマシンもたくさんありました。ただ、上記の理由で現在まで生き残っているものはないようです。 http://diode.matrix.jp/LEGEND/BYTE.htm
お礼
書き込み有難うございました。 「10進法」と挿入したのは勘違いでした。 これからコンピュータもより発展していくためには、何か根本的な部分を変えないといけないのではないかというのが質問の発端です。
お礼
ご説明痛み入ります。 「今更変えることは出来ません」という固定観念への疑問がこの質問の動機です。