電子計算機とコンピュータは一体どのような歴史を辿ってきたのか!?

エンジニアとしてステップアップするためには、コンピュータの原理を学ぶ事が推奨されます。

低レイヤ技術といえば、OS・CPU・メモリなど色々ありますが、私が物事の本質を考える時、一番気になるのが歴史…なぜその考えに至ったのか時代背景など。

一応IT業界でエンジニアとして働いているので、コンピュータの歴史を知らないのはどうかなと思い、ざっくりレベルで計算機の歴史(そろばん〜量子コンピュータ迄)に目を向けてみました。

ちなみにコンピュータの本質に触れる意味で、この書籍は色んな有識者の方が推奨されています。

そろばんの歴史

計算機の源流はそろばんと言われています。

誰しも小学校の頃、一度はそろばんに触れた事があると思いますが、そろばんの歴史は随分古く、約6000年前に人類最古の文明といわれるシュメール文明の都市国家にまで遡ります。

シュメール文明の壁画には宇宙船やロケットのような絵が描かれていたり、当時の科学では知り得るはずのないDNAの記述らしき内容が残っていたり、宇宙人文明と言われる謎多き文明ですが、彼らが建築した神殿の一部に、数字の印象痕と穴のついた1枚の粘土板を発見。

これが世界最古の計算用具と言われ、長い時間をかけて進化していきます。

ギリシャでは盤の上に線を引き、その上に珠を置いて計算する縦型のそろばんが発明、東洋では中国の漢が終わる1700年前、日本では16世紀終わりの室町時代に伝来し、明治以降には社会の多くの人達の希望で学校教育に採用され今日に至ると。

アナログから電子計算機へ

現存する最古の計算機は17世紀頃、フランスの哲学者にして数学者で有名なパスカルが作ったもので、桁数に等しいだけの数の歯車を並べ、間に桁上げの仕組みを組み込んだ手動式計算機でした。

その後ドイツの哲学者・ライプニッツも乗算が行える計算機を作り、1800年代ではイギリス人のバベッジが階差機関、解析機関、長い複雑な計算を自動的に解析できる自動計算機を考案。

現代に繋がる電子計算機はいつ頃誕生したのか!?

電子計算機の発明はアメリカ陸軍が弾道計算のためにENIAC(エニアック)を開発、18000本の電流増幅機能を持つ真空管を使ったシステムで、デジタル回路で数値・論理演算を実行していたらしい。

TaNA
ちなみにアメリカとソ連は一時期、宇宙開発で競い合っていましたが、アポロ計画は総額245億ドル(現在価値で1350億ドル(14兆円))の莫大な費用を投じ、当時の技術が転用された結果、コンピュータの集積回路や燃料電池の研究・開発に寄与、色んなアイディアが生まれ、システム開発でも大きな影響を与えたそうです。

やはり世界トップレベルの国家や軍が絡むと規模や実現されるレベルが桁外れ。

ノイマン型コンピュータ

現在のコンピュータはノイマン型と呼ばれるコンピュータ。

1949年世界初のフォン・ノイマン型コンピュータであるEDSAC(エドサック)が発明、名称はハンガリー出身の数学者フォン・ノイマンから採用、今日のソフトウェアにおける原点となっています。

ノイマン型コンピュータは以下5つの要素から構成。

コンピュータ内部での動きについて、メモリやI/Oにはアドレス(番地)が採番、アドレス毎には様々な情報(命令とデータ)が保持され、CPUはアドレスを指定することでデータを取得、CPU内部で演算を行われ、結果をメモリ保持させたり、I/Oを通して画面等に表示させています。

コンピュータと2進数

プログラム上の10進数や文字情報は、コンピュータ内部でコンパイル後に2進数の値に変換され、実行時に2進数の情報として扱われますが、なぜコンピュータでは2進数が採用されているのか!?

コンピュータ内部ではIC(黒いボディの両側に数本〜数百本のピンがついたムカデのような形状)と呼ばれる電子部品で構成され、ICが持つ全てのピンは、直流電圧0Vか+5Vのいずれかの状態。

POINTICのピン1本では2つの状態しか表わせないので、コンピュータ内部では2進数を採用!!

多くのICでは電源電圧が+5Vですが、消費電力を抑えるために+5V以下の電圧を使うICもあります。

量子コンピュータ

何かと話題の量子コンピュータですが、Wikipediaには以下のように紹介されています。

量子力学的な重ね合わせを用いて並列性を実現するとされるコンピュータ。

いわゆる電子式など従来の一般的なコンピュータの素子は、情報を「0か1」などなんらかの2値をあらわすいずれかの状態しか持ち得ない「ビット」で扱い、量子コンピュータは「量子ビット」により、重ね合わせ状態によって情報を扱う。

あのビルゲイツも「量子コンピューターは理解できない」と言って話題になりましたが、特定の問題に対して既存のコンピューターに比べて最大1億倍高速に解くことが出来るとか。

現在のコンピュータ演算処理では難しい天候予測や科学的な実験などに対応するため、次世代コンピュータとして量子コンピュータが注目されてますが、今後もし一般化すれば、処理速度を求めるシステム(AIとかブロックチェーン)でも利用され、今とは全然違った世界になっているのかも。

ちょっと想像できませんが…