ITmedia NEWS > 社会とIT >

「1Byteが8bitに決まったワケ」についての長い話 まずは「バベッジの階差機関」から(2/7 ページ)

» 2022年02月03日 19時00分 公開
[大原雄介ITmedia]

フォン・ノイマンの草稿

 ENIACもそうで、サイクル速度0.2ms(つまり動作周波数5KHz)で、最大10桁の数字の演算が可能(演算に要するサイクル数は演算の桁とか種類で異なる)だったが、これを構築するのに1万7000本以上の真空管を必要としたという。なにせ1桁分の数字を記憶するのに10bitのRing Counterを利用した関係で、36本の真空管が必要だったというのだから、そりゃデカくなるわけである。

 で、もっと良い方法はないか? という話であるが、ENIACの次に開発されたEDVACの設計の初期段階で、ジョン・フォン・ノイマン博士が“First draft of a report on the EDVAC”(EDVACに関する報告書の第1草稿)なる文書をリリースしている。ちなみにIEEEだと有償の配布になっているが、“First draft of a report on the EDVAC”で検索するとPDFの形であちこちから入手できる(写真3)ので、興味ある方は探してみてほしい。

photo 下の方にあるが、なにせオリジナルは1945年だから、タイプライターか何かで打たれたものであり、これをTeXで清書しなおしたものが1992年に制作されて配布されている格好だ。「膨大なTypoを修正した」とか書いてあるのがなんとも味わい深い

 この草稿の中でノイマン博士は、ENIACで採用された10進ベースの演算回路に代わり、2進ベースの回路にすることで回路がシンプルになり、かつ確実に動作しやすくなることを提案。

 第1草稿では総論(1〜3章)、回路を構成する基本的な素子(4〜6章)、算術演算の回路の構成法(7〜11章)、記憶素子(12・13章)、命令(14・15章)から構成されている。第1草稿とか言いつつも第2草稿は出なかったし、そもそもこの草稿にしてからが最終的に出版もされていない(オリジナルはペンシルバニア大に保管されており、これのコピーがさまざまな経緯で出版されている形だ)。

 実は2進数を使った実装は、ENIACやこの草稿が出る以前の1942年に、アイオワ大で完成したABC(Atanasoff-Berry Computer)が採用しており、決して突飛な考えというわけでもなかった。

 最終的にこの草稿で述べられた構造が、後にノイマン型アーキテクチャの原型として理解されることになる。そしてこの方式を実装するのに、2進数は非常に都合がよかった。

 何しろ基本的に1桁の状態が0か1しかないから、それこそ真空管1本で可能になる。10進1桁は2進数だと4桁必要になるが、それでも真空管4本で済むわけで、圧倒的に回路をシンプルにできる。回路をシンプルにできれば、その分だけ信頼性も上がるし何なら動作周波数を上げられる(というか、当時の表現ならサイクルタイムを短縮できる)から性能も上げやすい。

 コンピュータが2進数をメインにするようになったのは、このEDVAC(さらにその後に開発が始まりつつ先に稼働したEDSAC)が最初で、これに続くコンピュータもほぼ全部が2進数をベースにするようになっている。

Copyright © ITmedia, Inc. All Rights Reserved.