no1:コンピュータとは何か?stimai/r02pdf/2020lectureno1...計算理論では、算法...

49
No1:コンピュータとは何か? 電卓との類似点と相違点という観点から説明をスタートします 香川大学大学院 工学研究科 創造工学部 今井慈郎

Upload: others

Post on 03-Aug-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

No1:コンピュータとは何か?電卓との類似点と相違点という観点から説明をスタートします

香川大学大学院工学研究科

創造工学部

今井慈郎

Page 2: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

あらまし

• (突然ですが・・)チューリングマシンとは• アラン・マシスン・チューリング(Alan Mathieson Turing)という天才• ヒルベルトという数学の巨人と計算可能性について• 万能チューリングマシン• プログラム内蔵方式とフォン・ノイマン• では電卓とは何か• 電卓を電子回路で実現するには• ICとは• 嶋正利とIntel 4004• 結局、電卓とコンピュータはどこが違うのか

2

Page 3: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

(突然ですが)チューリングマシンとは

• アラン・チューリングが「計算可能性」に関する議論のために提示した抽象機械(「計算可能性について──決定問題への応用」(1936年)において提示)

•実際の計算機の基本的動作も、このチューリング機械の原理に従うことに。計算機はチューリング機械よりも遥かに複雑で、有限の記憶領域のみ。しかし「計算機で原理的に解ける問題」は「チューリング機械で解ける問題」と同じとも。計算理論では、算法or算譜をチューリング機械と同一視する(チャーチ=チューリングのテーゼ)。

•数学の形式体系はこの機械の動作に還元できるといわれる。この機械で決定できない命題:ex与えられたチューリング機械が停止するかどうかをチューリング機械で決定することはできない(停止性問題)も存在(これはゲーデルの不完全性定理の別の表現の形とも)

3

Page 4: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

チューリングマシンとは(2)

• その表面に記号を読み書きできるテープ。長さは無制限。

• 読み書きヘッドと、テープ左右へのシークを制御する機能を持つ、有限オートマトン

• テープに読み書きされる有限個の種類の記号

• 最初から(初期状態において)テープにあらかじめ書かれている記号列

• 有限オートマトンの状態遷移規則群。

https://plato.stanford.edu/entries/turing-machine/

ハードウェアを定義

ソフトウェアを定義

4

Page 5: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

アラン・チューリングという数学の天才

• アラン・マシスン・チューリング(Alan Mathieson Turing)という天才。

•業績を紹介する時、チャーチ=チューリングのテーゼと計算可能性理論への貢献が業績の1つ。アルゴリズムを実行するマシンを形式的に記述した「チューリングマシン」にその名を残し、任意のチューリングマシンを模倣(エミュレート)できる「万能チューリングマシン」は、同分野の基本的な定理のひとつである停止性問題の決定不能性定理と関係する。

• 1936年9月から1938年7月に、プリンストン高等研究所においてアロンゾ・チャーチに師事し、博士号を取得。暗号理論も学び、電気機械式乗算器も試作。この時期、ジョン・フォン・ノイマンも同じくプリンストンにおり、二人は親交あり。英国の政府暗号学校にて独暗号器エニグマの解読に当たった。

5

Page 6: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

チャーチ=チューリングのテーゼ (Church-Turing thesis)

• チャーチのテーゼ (Church‘s thesis) とは、「計算できる関数」という直観的な概念を、帰納的関数と呼ばれる数論的関数のクラスと同一視しようという主張。このクラスはチューリングマシンで実行できるプログラムのクラス、ラムダ記法で定義できる関数のクラスとも一致。簡単にはテーゼは、計算が可能な関数とは、その計算を実行できるような有限のアルゴリズムが存在するような関数、コンピュータで実行できる関数と同じ(ようなもの)だと主張。主張は数学的定理ではないので証明されるべき事柄ではない。

• 1933年から1935年頃、チャーチやクリーネが関数の構成的な定義法であるラムダ記法を用いて定義可能な関数のクラスを規定。1935年から1936年にかけ、ポストとチューリングは、チューリングマシンの概念を用い、抽象機械で実行可能なプログラムのクラスを規定。

6

Page 7: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ヒルベルトという数学の巨人と計算可能性

• 1928年、ドイツの数学者ダフィット・ヒルベルトは、「決定問題」への注目を呼びかけた。チューリングは、重要な論文 “On Computable Numbers, with an Application to the Entscheidungsproblem”(「計算可能数、ならびにそのヒルベルトの決定問題への応用」1936年)で、この問題の解決に重要な役割を果たす。

• この論文の重要な点を、現代の数学および数学基礎論およびコンピュータ科学の視点からまとめる、(1)「チューリングマシン」という計算モデルを提示し、自然言語での記述で曖昧さのあったアルゴリズムを形式的に表現する手法を確立し、「何らかのチューリングマシンで計算可能な関数を計算可能関数とする」という計算可能性理論における重要なテーゼであるチャーチ=チューリングのテーゼを示す。

7

Page 8: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ヒルベルトという数学の巨人と計算可能性(2)

• (2)どんなチューリングマシンの動作も「エミュレート」できる、「万能チューリングマシン」が可能であることを証明し、その構成法を示した。(注意: この(1)と(2)が表現していることを曖昧に理解しないように注意すること。「テーゼ」は証明ではない(証明できるような性質のものではない)。しばしば、万能チューリングマシンによりあらゆる計算が可能であることを証明した、というような誤解が見受けられる。)

• (3)「万能チューリングマシン」の概念を利用し、停止性問題を否定的に証明した(これはゲーデルの不完全性定理と同等の結果とも言えるもの)。

8

Page 9: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

万能チューリングマシン

•当時の機械はある特定の目的のために作られており、異なるプログラムで動く機械は異なる機械として構成する方式。チューリングもこの意味で、何種類ものチューリングマシン(個別の機械)を考案。

•中でも特に素晴らしく画期的で優れた機械は、「万能チューリングマシンUniversal Turing Machine」と言える。万能チューリングマシンの重要性はその汎用性にあり、これがあれば、全て(汎用)の目的を実行することが可能に。 ・・抽象的ではあるが、計算機の原型

•万能チューリングマシンはプログラム「P」を入力データ「x」と共に受け取る。プログラム「P」を入力値と一緒に受け取ることで、異なるプログラムを実行する時に新しく機械を構成する必要がない。

https://gihyo.jp/book/pickup/2018/0033

9

Page 10: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

万能チューリングマシン(2)

• チューリングマシンの有限オートマトンの遷移規則を巧く構成すれば「いかなるチューリングマシンでも、それを模倣可能なチューリングマシン(万能チューリングマシン=UTM)」を構成することが可能。

• UTMは、与えられた、別のチューリングマシンを記述した記号列と、そのチューリングマシンへの入力記号列を読み込み(Initial Program loading)、それに従って動く。(エミュレータの原理)

https://gihyo.jp/book/pickup/2018/0033

10

Page 11: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

万能チューリングマシン(3)

• The universal Turing machine(UTM) which was constructed to prove the uncomputability of certain problems, is, roughly speaking, a Turing machine that is able to compute what any other Turing machine computes. Assuming that the Turing machine notion fully captures computability, it is implied that anything which can be "computed", can also be computed by that one universal machine.

• This is the theoretical power of the universal machine concept, that one relatively simple formal device captures all "the possible processes which can be carried out in computing a number"(Turing 1936–7). It is also one of the main reasons why A. Turing has been (retrospectively=遡及的に) identified as one of the founding fathers of computer science.

https://plato.stanford.edu/entries/turing-machine/

11

Page 12: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

プログラム内蔵方式とフォン・ノイマン

•万能チューリングマシンはプログラム「P」を入力データ「x」と共に受け取る。プログラム「P」を入力値と一緒に受け取ることで、異なるプログラムを実行する時に新しく機械を構成する必要がない。

• すなわち、万能チューリングマシンが1台あれば、目的に応じてプログラムを作成し、必要なデータを準備して、同時に万能チューリングマシンへ与える(ローディングする)ことで、様々な問題解決を1台の機械が実行することが原理的に可能となる。

•現在ではこのような考え方を「プログラム内蔵方式」と呼び、計算機(=コンピュータ)誕生の大きな礎(え)となった。

• プログラム内蔵方式=Stored Programming はジョン・フォン・ノイマンのアイデアと言われている。 https://gihyo.jp/book/pickup/2018/0033

12

Page 13: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

プログラム内蔵方式とフォン・ノイマン(2)

•自動計算機の歴史は古く 17 世紀(パスカリーヌ)まで遡るが、1945 年にジョン・ フォン・ノイマン(John von Neumann)発表の「プログラム内蔵方式」は,汎用ディジタルコンピュータの基本デザイン。

• この方式では、実行したい命令列をデータ集合と共に主記憶装置に格納し、逐次的に読出し・解釈・実行することで、複雑な計算処理を自動的に行うこ とが可能。

•初期の電気式計算機は、異なる計算処理を実行するためには配線やスイッチなどを人手でやりなおす必要あり。しかし、ノイマンが発表した方式は、プログラム(+データ) を入れ替えることにより実現するため、高い汎用性を獲得している。

http://www.ieice-hbkb.org/files/06/06gun_04hen_01.pdf

14

Page 14: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

プログラム内蔵方式とフォン・ノイマン(3)

•数学的には、主記憶装置の容量が充分であればこの方式はチューリング完全な実装となっており、あらゆる計算可能な問題を解くことが可能。

• この方式は、史上初(諸説ある)のコンピュータ ENIAC を開発したジョン・エッカート(J.Presper Eckert)とジョン・モークリー(John Mauchly)がEDVAC 開発計画にて考案し、ノイマンは数学的な裏付けを与えた。

• しかし上述の 1945 年、ノイマン自身の名前で論文発表したため、ノイマン型の名前で広く知られた。EDVAC 開発難航のため、史上初のノイマン型コンピュータは、この論文に影響を受け、1949 年、ケンブリッジ大学のウィルクス (Maurice Vincent Wilkes)により開発されたEDSAC となっている。 http://www.ieice-hbkb.org/files/06/06gun_04hen_01.pdf

15

Page 15: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

プログラム内蔵方式とフォン・ノイマン(4)

• プログラムをデータと一緒に記憶装置に格納する方式を指す「プログラム内蔵方式」という呼び方もある。「ノイマン型」と「プログラム内蔵方式」はほぼ同じ文脈で用いられるが、厳密には、ノイマン型コンピュータはプログラム内蔵方式コンピュータの一種類である。

• この 2 つを分けて考える場合、ノイマン型コンピュータの逐次性や同じ転送路によってデータとプログラムを取り込むこと(NeumannBottleneck)、実行中のプログラムを書き換えることなどの特徴が注目される・・但し、後者は現在では非推奨となっている。

• コンピュータの五大装置とは、制御装置、演算装置、記憶装置、入力装置、出力装置の5つ。それぞれの機能(制御、演算、記憶、入力、出力)を指して「五大機能」と呼ぶこともある。

http://museum.ipsj.or.jp/about/index.html

16

Page 16: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

パスカルの計算機 ・・ Pascaline(パスカリーヌ)• パスカルは1642年、19歳のときから計算機(機械式計算機。歯車で計算する機械。)について研究を始めている。徴税官だった父の手伝いをしていた彼は、仕事の負担を軽減する道具を作ろうと考えた。1652年までに50台もの試作機を作ったが、売れたのは1ダース強である。高価であったことと複雑であったこと(さらに減算すら簡単ではなかったこと)などが原因で、それ以上売れることはなく1652年に計算機の製作を止めた。

• その頃にはパスカルの主な興味が他に移っていて、気圧の研究や哲学へと関心が向かっていたというためもある。

• Pascalineは10進法ベースの機械である。しかし、当時のフランスの通貨(リーブル)は10進系ではなく、市中での計算の需要としては科学技術や工学的な計算よりも多い、金額の計算にPascalineを使おうとすると、計算結果を更に変換する必要があった。

• 1799年、フランスはメートル法に切り替えた。このとき、パスカルの基本設計に触発された職人が登場したが、彼らも商業的には成功しなかった。

Pascaline, パスカルの名前入り(1652年)著名な数理学者ブレーズ・パスカルが1640年代に製作したものPascaline(パスカリーヌ)またはMachine Arithmétiqueと呼ばれる。

機械式計算機=歯車で計算する機械

17

Page 17: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

黎明期の計算機• コンピュータの基本的な考えは1800年代からあったが、現在のデジタル計算機の基本系ができたのは1946年に開発されたENIACが最初。このマシンはアメリカ陸軍の大砲の弾道計算を目的に開発。 17468本の真空管、70000個の抵抗器、消費電力は150kW、開発費の総額は49万ドル、メモリーは変数が20個、定数が300個(性能は現在の電卓以下)

• このENIACは計算の為のデータと命令を遂一、計算機本体に一つ一つ外部より与えて計算を進める「遂次制御方式」。 要するに電卓タイプ

•基本的には後述のプログラム内蔵型ではなく、現代的な意味での「コンピュータ」とは言い難いもの=電子式10進計算機となっていた。

http://www.iwata-system-support.com/CAE_Computer/computer_history.htm

18

Page 18: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

黎明期の計算機• ENIACの次がEDVACという計算機。ノイマンが「プログラム記憶(内蔵)方式(Stored Program)」を提案し、プログラムとデータを同じメモリに蓄えて、処理を行うという画期的なもの。

•既に述べたように、ENIAC は、歯車式( Pascalineのような)計算機を電子式=真空管実装に置き換えただけの10進計算機でしたが(その意味では電卓のような)、EDVAC は上記のような斬新な2進計算機だった。EDVACは1950年に完成しております。加算に846μ秒、乗算に2900μ秒を要した。

• EDVAC 完成の遅れで、エッカートとモークリーは開発メンバから離脱し、会社を設立し、世界初の「大量生産」コンピュータ、UNIVAC I を送り出す。

• それまで真空管型だった計算機が、 1950年代後半からトランジスタ型の計算機が現れ、 1964年に集積回路であるICを使った計算機: IBM-360が登場する。

http://www.iwata-system-support.com/CAE_Computer/computer_history.htm

19

Page 19: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

黎明期の計算機

•かつて「コンピューター」とは人間のことだった。18世紀、革命期のフランスでは、メートル法導入に伴う土地台帳の変更のために数十人が雇われて計算作業に当たり、膨大な数表を作成した。コンピューターとは、彼ら"計算人"を意味していたのだ。

• この作業の機械化に最初に挑んだのが、英国の数学者バベッジだ。彼は産業革命のまっただ中に最初の機械式計算機「階差機関」を設計し、1832年にその試作モデルを完成した。その後継となる本格的なコンピューターの設計図も作った。演算を担うプロセッサーとデータを保存するメモリーを備え、外部入力によってプログラムを変えることもできる、現在のコンピューターの機械版だ。資金不足のために実現には至らなかったものの、後世になって、バベッジが遺した設計図をもとに実際に作られた。

http://www.nikkei-science.com/page/magazine/0912/200912_048.html

20

Page 20: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

黎明期の計算機

• バベッジの計画が頓挫した後、再びデジタルコンピューターが脚光を浴びたのは、第二次世界大戦のころだ。米ペンシルベニア大学ムーア校の計算機科学者モークリーと工学者エッカートが、それまで使われていた機械式アナログコンピューターの電子化に取り組んだ。1945年にこうして誕生したのが、最初の電子式計算機ENIACだ。その後天才数学者のノイマンがチームに加わり、現在も主流となっているプログラム内蔵型のコンピューターアーキテクチャーを開発。後継機となるEDVAC開発へとつながった。

• 本稿「コンピューターの起源」ではバベッジが始めノイマンが完成させた「プログラム内蔵型デジタルコンピュータ」の軌跡を追う。またハードウエアとソフトウエアの発展を振り返り、マイクロソフトのビル・ゲイツらをこの分野に呼び込んだ発明についても紹介している。

「コンピューターの起源」M. キャンベル=ケリー(英ウォーリック大学)

21

Page 21: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ENIAC以前 ( https://www.unisys.co.jp/com/eniac/ )

• ENIACは最初のコンピュータではなかった

• 最初のコンピュータという名誉は、イギリスのチャールス・バベッジ(Charles Babbage)が作った機械に与えられるべき。バベッジは1839年に最初で真の機械式ディジタル・コンピュータを設計し開発。"差分機(difference engine)"と称したが、これは簡単に微分方程式問題を解くために開発。貴族にして数学者のバイロン卿(Lord Byron)の娘エイダ・カウンテス・ラブリス(Ada Countess Lovelace)が、手伝ったことは著名。

• バベッジは、ラブリスと共に、機械式計算によって数式を解いたが、そのことがバベッジをして、次々に、もっと野心的な分析エンジンの設計へと駆り立てた。その機械は完成こそしなかったが、その構想にはコンピュータ動作に関する多くの原理が盛り込まれていた。

22

Page 22: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ENIAC以前 ( https://www.unisys.co.jp/com/eniac/ )

• ENIACは最初の電子で計算する装置でもなかった

• 物理学者は、1930年代初頭にはENIACのように、真空管を使った放射線カウンタを使用。ムーア・スクールでの研究が始まる前に、複数の研究所では、1から10までをカウントできる環状計数器として知られる装置が製造。1930年代後半から1940年代初頭の間に、計算問題に狙いを定めた電子回路の試作が、別々に少なくとも3カ所でなされていたという事実。

• ジョン・アタナソフ(John Atanasoff)、英国情報機関(British Intelligence)そしてIBMである。最も初期の試みは、1937年から1941年の間に、アイオワ州立大学の物理学教授であるアタナソフによってなされた。アタナソフは高速計算についての一般的問題に興味をいだき、線形方程式の中でもとくに複雑な問題を解くことに特化した機械の設計に着手。アタナソフ−ベリーコンピュータ(ABC)は、彼の大学院生クリフォード・ベリー(Clifford Berry)の多大な貢献により、1941年にはほとんど完成の域に達した。

• IBMも電子式乗算機を1941年に設計。パンチカード・システムの製表機で、1930年代末にIBMはコロンビア大学教授のウォーレス・エッカート(Wallace Eckert)と共同で、各種の科学技術計算にどう使えるか研究。1940年には、電子式乗算機は同エッカートが行っていた、ある種の計算を非常に高速に行えることが判明。IBMは同エッカートとともにそうしたシステムの設計を実施。

23

Page 23: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ENIAC以前 ( https://www.unisys.co.jp/com/eniac/ )

• 電子回路により計算を解くという3つ目の試作:英国情報機関(British Intelligence)の“Colossus”と呼ばれたコンピュータは大型の電子式機械であり、1942年頃ブレッチリー・パーク(BletchlyPark)で組立てられた。オハイオ州立大学のアタナソフとIBMには開発資金に制約があったが、"Colossus"の開発には、その後のペンシルバニア大学ムーア・スクールと同様に、第二次大戦を遂行するために投じられた巨額の研究開発資金を利用できた。しかしColossusはENIACと違って、特定目的の機械であった。Colossusはたんに機密電文の解読を目的として設計。Enigmaと呼ばれたドイツ軍の暗号解読機に対抗できるように特化して開発。

• 事実、これらの3つのシステム、「アタナソフ−ベリーコンピュータ(ABC)」「IBMの電子式乗算機」および英国情報機関の「Colossus」の総てが特定目的遂行のため、ある装置を特別に設計するという、これまでの伝統の域を脱し切れておらず、これら3つの試作=電子式計算機械=Electronic Computing Machine は、非常に革新的ではあったが、汎用的に計算を処理するような設計ではなかった。

24

Page 24: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ENIAC(Electronic Numerical Integrator and Computer)

• ENIACの技術的構成: 真空管 17,468本、リレー 1500個、抵抗器 17万個、コンデンサ 1万個、スイッチ 6千個、ネオン管 4千本、ダイヤル 数百個総重量 30トン、消費電力は140Kw、真空管等からの放出熱量冷却のため24馬力換気システムを必要

• ENIACの性能: 加算速度0.2ms,乗算速度 10桁×10桁で2.8ms,除算速度 6ms

• プログラムは配線によって実現。記憶装置として10桁レジスターを20個もつだけの小規模構成。

• しかし機械式リレー計算機と比較して大きく性能改善され、十進の乗算を3ミリ秒で実行し、これはその直前に作られたハーバードMARKI の1000倍の速度

25

Page 25: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ENIAC(Electronic Numerical Integrator and Computer)

• ENIACの歴史: 誕生の前後のコンピュータ技術史を掲載したWebサイト:日本ユニシス社「ENIAC誕生50周年記念 ---その歴史を追って」( https://www.unisys.co.jp/com/eniac/ ) アタナソフ・ベリー・コンピューター(ABC)などENIACに先立つ電子計算機なども含め、ENIACの誕生に関わる詳しい歴史的説明が掲載

• ENIAC関連のWebページ: 上山清二(関西外国語大学短期大学部)「ENIAC」『情報処理概論』( http://www.infonet.co.jp/ueyama/ip/history/eniac.html )

•計算尺から最初期の電子計算機「ENIAC」、世界初のシューティングゲーム「Spacewar!」まで。発祥から辿る「コンピューター歴史博物館」

• https://valed.press/_ct/17299691

26

Page 26: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

EDVACについて(Wikipediaから)• EDVAC(Electronic Discrete Variable Automatic Computer)は、前身のENIACとは異なり、十進数ではなく二進数を採用し、プログラム内蔵方式として設計。

• ENIACを開発したジョン・モークリーとジョン・プレスパー・エッカートはENIACがまともに動作するようになる前の1944年8月、EDVACの設計と構築を提案。その設計はENIAC構築中に考案された重要なアーキテクチャ上または論理上の改良を取り入れ、高速?な記憶装置を採用。ENIACと同様、EDVACはペンシルベニア大が米陸軍アバディーン実験場の弾道研究所のために製作。エッカートとモークリーを含むENIAC設計者らはコンサルタントという立場のジョン・フォン・ノイマンと合流して設計を開始。1945年、フォン・ノイマンは論理設計について話し合った結果を 『EDVACに関する報告書の第一草稿』という報告書で公開。

• 新しいコンピュータの開発契約は1946年4月に結ばれ、当初予算は10万米ドル、コンピュータの名前はElectronic Discrete Variable Automatic Calculatorとされた。EDVACに実際かかった費用はENIACとほぼ同額の50万米ドル弱であった。

27

Page 27: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

EDVACについて(Wikipediaから)No2• EDVACは二進数を使用し、加算、減算、乗算、プログラムによる除算が可能で、メモリは遅延記憶装置で[1]1000ワード(1語=44ビット、後に1024ワードに拡張)

• 物理的には約6,000本の真空管と約12,000個のダイオードが使われ、消費電力は56 kW。設置面積は45.5平方mで7,850 kgの重量。30人が8時間交代で運用。

• EDVACは1949年8月に弾道研究所に運び込まれ、いくつかの問題に対処した後、1951年に部分的に稼動した。完成までに時間がかかったのは、ペンシルベニア大学とエッカート&モークリーとの間で特許権を巡る争いがあったためと言われている。このためエッカートとモークリーは大学を離れ、エッカート・モークリー・コンピュータ社を設立しEDVACに関わった技術者も引き抜いた。

• 1960年には、EDVACは一日に20時間エラー無しで動作した。平均では一日8時間動作していたという。EDVACは1961年にBRLESCに置き換えられるまで動作した。それまでの実績をみると、当時としては非常に高い信頼性と生産性であったと言える。

28

Page 28: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

EDVACについて(Wikipediaから)No3• プログラム内蔵方式、いわゆるノイマン型の着想は、主要メンバーのジョン・モークリーとジョン・プレスパー・エッカートが考案していたとも。開発チームに後から加わったジョン・フォン・ノイマンの単著で報告書が広まり、今もノイマンの名で参照されることも多い(このような経緯からあえてその名を使わない研究者も)。

• ENIACの主要開発メンバーであるモークリーとエッカートは技術面で優れており、開発メンバーのノイマンは理論的側面で優れていた。「ノイマン型」などと呼ばれる理由としては、有名な文献『EDVACに関する報告書の第一草稿』の著者がノイマン単独となっており、当時のコンピュータ関連の他の多くの資料が軍事機密で、この文献=報告書のみが部外者へ配布されたため。

• これは、一流数学者の名前を利用してEDVACの名声をあげたいペンシルベニア大学側の思惑も。モークリーとエッカートの開発メンバーからの離脱は、このことへの反発があるとも。主要メンバーが離脱したEDVAC開発は大きく遅れ、世界初の実用的に稼働したプログラム内蔵方式コンピュータは1949年のEDSACとなってしまった。EDVACは1951年になって完成する。

29

Page 29: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

では電卓とは何か

電卓とコンピュータの違い

•電卓の機能はほぼコンピュータにおいても対応する機能に置き換えできる• 電卓の表示部→ ディスプレイ

• 入力ボタン→ キーボード

• 演算機能→ CPU

• では一体、両者の違いは何か。それは、電卓では計算手順が使用者の頭の中にあるのに対し、コンピュータでは計算手順そのものをプログラムという形式でメモリに記憶している点である。後者のこの方式を「プログラム内蔵方式」と呼んでいる。

https://weekly.ascii.jp/elem/000/002/609/2609304/

https://qiita.com/mogulla3/items/4535dd94014db8c68273

30

Page 30: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

電卓とは何か(2) ・・電卓 vs (電子)計算機

•演算装置で計算をする部分は、両者とも高速実行可能

•電卓が利用者の指示に従って・・ということは、その指示が遅いと、それだけ全体の処理時間は遅くなる・・動作する、のに対し、

•計算機は、プログラム内蔵方式≒汎用チューリングマシンのやり方に従い、メモリ(記憶装置)に格納されたプログラム(内容:命令系列とデータ集合)を、自動的に①読み出し、②解釈し、③実行(この部分が、「電卓」での演算処理に相当)することになる。

•電卓と比べて、計算機では、プログラム内蔵方式を採用することで、本質的に高速処理が可能となる方式となっている。

31

Page 31: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

電卓を電子回路で実現するには

https://weekly.ascii.jp/elem/000/002/609/2609304/

電卓(左)を電子回路(右)

電卓は「演算機能」を高速に実行するため、電子回路で演算装置を実現することになる。その意味では、EDVAC/EDSACよりENIACに近い、とも言える。

右図は電卓と電子回路である。電卓を小型化するには、電子回路自体を小型化する必要があった。ではどうすれば、電子回路を小型化できるか?

マイクロプロセサ4004

32

Page 32: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

電卓を電子回路で実現するには

• ENIAC は 17,468 本もの真空管を使った大規模な電子式計算機械だったので、以下のような故障と戦いだったと想像される。

•真空管を 1 本使っている装置は平均すると 2,000 時間に 1 度真空管が壊れて故障する可能性あり。真空管を 2 本使うと、それぞれの真空管が 2,000 時間に 1 度壊れる可能性があるので、装置全体としては 1,000 時間に 1 度故障する計算に。

•同様に、真空管20 本の装置では 100 時間に 1 度故障し、200 本だと 10 時間、 2,000 本なら 1 時間…。 真空管を 2 万本近く使っているENIAC は、単純計算では、 0.1 時間 (6分)に一度、真空管のどれかが壊れて故障することに ・・・ これは悪い冗談に。

http://www.infonet.co.jp/ueyama/ip/history/eniac.html

33

Page 33: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

電卓を電子回路で実現するには(2)

• ENIACの設計者エッカートも、実装した個々の真空管自体の稼働性を高めるため、通常より低電圧で動作させるなど、信頼性を高める様々な工夫を凝らすことを余儀なくされた。

•同様に電卓でも、「電子式の計算機械とは言え、まさか真空管で実装することは、価値を半減し、価格を高騰させ危険あり」となる。

• そこで、機器の信頼性を高めることが至上命題に。

•結局、電子式計算機械=電子回路での実装を、高い稼働性で実現するため、まず真空管からトランジスタへ、そして部品点数を低減して信頼性(RAS)を向上させるため、集積回路(IC)への道へ踏み出すことになった。

http://www.infonet.co.jp/ueyama/ip/history/eniac.html

34

Page 34: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

IC(集積回路)とは•真空管から半導体へ

• PN接合からダイオード、トランジスタへ

•バイポーラトランジスタから集積回路の実装が容易なMOSFETへ

先走って、結論を述べると・・

•本来は、電卓用のIC(あるいは、その高集積バージョンであるLSI)を開発するつもりが、どのような電卓にでも、そして電卓以外での様々な応用も可能な「汎用の計算機械(万能チューリングマシンを思い出してください)」を作る方が得策ということに。 これがマイクロプロセ(ッ)サ開発の原点に

35

Page 35: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

•電子機器のほとんどの機能をLSIの中に集積できるようになると、LSI設計は電子機器の設計と基本的に同じレベルとなる。このため電子機器の性能・特性・外形(寸法など)の仕様を決めるときから、LSI設計者も参加する方向にシフトしてきた。

• LSIの付加価値は、「いかに作るか」から「何を作るか」に移ってきたので、システム(電子機器)設計が重要になってきたのである。同時並行的にLSIメーカの形態も変化している。

•最近は、LSIの設計だけを専門に行う会社(デザインハウス)も多くなり、LSI製造装置を購入すれば、ある程度の性能のLSIを製造することができるようになった。製造装置メーカが技術力を高め、装置の能力も向上してきたからである。LSI製造だけを請け負う会社(ファウンドリ)も多い。

36

IC(集積回路)とは(2)

Page 36: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

• LSIには、トランジスタなど構成する素子だけで目的の機能を実現する場合と、プログラムによって演算処理する場合とがある。

•前者を「ハードウェア処理」または「ワイヤードロジック」などといい、LSIチップの中で論理回路構成が固定化されている。機能を実現するための最適化設計が行われている場合が多く、比較的高速・低消費電力で動作する。

•後者を「ソフトウェア処理」という。基本的にはプログラム内蔵方式のコンピュータと同様に、プロセッサで処理を行う。このため、プログラムを書き換えるだけで処理内容を変更できる。柔軟性は高いが、一般にはハードウェア回路に比べて処理速度は遅い。

37

http://semicon.jeita.or.jp/icgb/

IC(集積回路)とは(3)

Page 37: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ICとは何か、その魅力と経済効果は何か

•我々の生活になくてはならない電子機器の1つとして携帯電話機がある。日本では1987年にその第1号機「802型」が登場。

•当時は画期的な製品だったが、それでも重さ約900g,体積約907cc,連続待受時間が約6時間と、携帯するには性能の低い存在。

• それが第3世代携帯電話機では、重さ、体積とも約1/10に、連続待受時間は約70倍と飛躍的に性能が向上。

•通話機能だけでなく、データ通信機能、カメラ機能、電子マネー機能、音楽再生機能、ラジオやテレビの受信機能といった多くの機能も付加。

• この小型化、軽量化、薄型化、低消費電力化、多機能化を実現したのが、半導体の高集積化・低消費電力化技術である。

38

http://semicon.jeita.or.jp/index_j.html

Page 38: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ICとは何か、その魅力と経済効果は何か(2)

•家電には、パソコンや新三種の神器である薄型テレビ、デジタルスチルカメラ(DSC)、DVDレコーダには、MPU(Micro Processor Unit)、DSP、DRAM、フラッシュメモリ、画像処理LSI、CCD(電荷結合素子)といった各種の半導体が使われており、機器の性能向上や小型化,省エネルギー化の実現に多くの貢献を果す。

•自動車にも、多くの半導体が使用されている。エンジン制御系には、MCUやパワー半導体が使われ、排気ガスの適正化や燃費などの性能向上に寄与し、環境汚染防止や温暖化防止に貢献し、ブレーキアシストやエアバッグなどの安全性確保にも半導体が活用され役立つ。

•半導体=IC(集積回路)の無い生活は想像できない(IC=創造的)

39

Page 39: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

ICとは何か、その魅力と経済効果は何か(3)

• 1980年代の主要民生用電子機器の普及率の推移をみると、急速に普及した製品はVTRとCDプレーヤ。1990年代以降には、パソコンや携帯電話機、DVDプレーヤ、デジタルスチルカメラ。これらは半導体の進歩によって新たに需要を喚起した代表例。

•半導体の技術進歩と電子機器からの要求が相互に影響し,それぞれが発展。半導体技術が進歩するに従い、微細加工が進み、集積度が向上。

• LSI1個あたりの面積が小さくなり、同じ面積なら搭載する素子数が多くなる。素子間の距離が短くなり、駆動電圧を下げることができ、高速動作や低消費電力動作が可能に。

•半導体の採用で、電子機器は小型・軽量になり、機能や性能が向上し、低消費電力になる。低価格化も実現でき、さらに普及が加速し、機器の数量が増加。

40

Page 40: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

生産性を上げるためにはLSI化は必然!?

•同じ機能のLSIでも、外形が小さくなると、機器内にはほかの部品を搭載する余地・領域が生まれ、新機能を取り込むことが可能となり、新製品が生まれ、新市場を創出。

•半導体は、従来メカニカルな制御をしていた機器の電子制御を可能にするという機能も。時計やカメラの電子化がその代表例。新製品の電子機器を生み,同時にその機器の性能を飛躍的に向上。

•電子化は,デジタル時計や電卓から始まり,民生・産業機器へと拡大。工場のFA(Factory Automation)や計測機器,制御機器なども例外ではない。

•自動車もエンジン制御や安全性・快適性の追求で、電子化が飛躍的に進捗。半導体(IC)は,さまざまな産業のエレクトロニクス化を急激に進め、半導体産業の拡大へと相乗効果。

41

Page 41: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

日本人が開いた高性能マイクロプロセッサへの道

https://news.mynavi.jp/article/computer_architecture-31/

42

Page 42: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

嶋正利とIntel 4004•嶋正利(1943年8月22日生れ、東北大卒。ビジコン社電卓部門へ)は、

1968年11月に、10進コンピュータ・アーキテクチャとROMを使ったストアード・プログラム論理方式(注)のプリンタ付き電卓を開発。1969年6月に渡米し、10進コンピュータ・アーキテクチャの事務機向け汎用LSIシステムを開発するため、インテル社と協同で世界初のマイクロプロセサ4004の開発を1971年3月に成功。

• 16ピン・パッケージという制限のため、4ビット時分割システムバスを導入し、4ビットCPU(4004)+命令格納ROM(4001)+データ格納RAM(4002)+出力拡張ポート(4003)の4種類LSIでシステムを構成。(既に、LSIファミリ「チップセット」という発想もあったことが分かる)

http://museum.ipsj.or.jp/pioneer/shima.html

43

Page 43: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

嶋正利とIntel 4004(2)• CPUには2,300個のトランジスタを使い、750KHzの動作周波数で約

0.065MIPSの性能を達成。チップ面積は12mm角。嶋は、4004を使ったプリンタ付き電卓を1971年に開発し、世界初のマイクロプロセッサ使用者となった。

• 1972年11月にインテルに移り、8ビット・マイクロプロセッサ8080と現在のパソコンにも使われている周辺機器制御用ペリフェラル・チップなどを開発。8080には5,500個のトランジスタを使い、2MHzの動作周波数で約0.33MIPSの性能を達成。チップ面積は19.6mm角。8ビット・マイクロプロセッサ8080は、高性能マイクロプロセッサへの道を拓き、「計算力」を若き創造者に開放し、世界初のパソコンを誕生させ、「プログラムの時代」をもたらし、ソフトウェア産業を花開かせた。

• 2000年に会津大学に移り、マイクロプロセッサ開発技術者を養成。

https://www.shmj.or.jp/dev_story/pdf/develop43.pdf

https://xtech.nikkei.com/it/article/Watcher/20060224/230661/

44

Page 44: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

嶋正利とIntel 4004(3)• 1969年、シャープがLSI採用電卓を発売し、電卓業界はLSI化への道を進み、日本計算器製造(1970年「ビジコン」に社名変更)は、電卓のタイプ毎に、ランダム論理制御(ワイヤードロジック)により異なるカスタムLSIを開発・使用する方式ではなく、複数タイプの電卓間でLSIを共通化し、ROM内容を書き換えることで各タイプに対応するプログラム論理制御の電卓を企画(同じLSIを、似たような計算が必要な伝票発行機などに流用も意図)

• LSI開発の提携先としてインテルが選ばれ、嶋が渡米までにシステム構成を考えることに。嶋らをサンフランシスコ空港で出迎えたのは、後にマイクロコンピュータの基となるアイディアを出したテッド・ホフ。

• 要求仕様についてインテルに伝えれば、LSIの論理設計(詳細設計)から製造までインテル側で行われると思っていたビジコンの技術者は、大きな誤解があった。実は本契約はまだ交わされておらず、インテル側は単にコンサルティングだけという状態だった。

https://ja.wikipedia.org/wiki/Intel_4004

https://ja.wikipedia.org/wiki/嶋正利

45

Page 45: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

嶋正利とIntel 4004(4)• ビジコン側(嶋)が提案:電卓全体の方式ではプログラム論理制御とし、電卓の用途に応じてメモリに書き込むプログラムを替え、様々なタイプの電卓に対応させる。周辺機器などの制御にはそれぞれ専用のLSIを用意し、プリンタの制御はランダム論理制御としていた。新規設計のLSIを10種類前後使用する。

• この提案には、LSIパッケージング問題もあり、この構成では、40ピンなどの比較的大きなパッケージも必要とし、インテル側ではパッケージ問題にも対応できず、当時メモリなどに使っていた16乃至18ピンのパッケージを利用を前提していた。

• テッド・ホフは、このビジコン案に対し、そのプログラム論理制御という点に興味を示す。しかし、インテル社からビジコン社への回答には、ビジコンが望む規模と価格でのLSIの生産は不可能、と読める内容が記載され、ほとんど暗礁に。

• その後、嶋らの所へホフが訪れ(口癖である「My idea is」を発しながら)「4ビットで汎用の、コンピュータのCPUのようなLSIを作れば良いではないか」というアイディアを説明。

https://ja.wikipedia.org/wiki/Intel_4004

https://ja.wikipedia.org/wiki/嶋正利

46

Page 46: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

嶋正利とIntel 4004(5)• ビジコン案は、電卓の加算であれば、それに特化したハードウェア構成(レジスタでの処理方式)であり、一個の加算命令で全桁の加算を一度に実行する「マクロな命令」によるプログラム制御であったが、ホフのアイディアは、4ビットの汎用のコンピュータのCPUのようなものを作り、たとえば加算命令は4ビットで十進一桁の計算をするのみという「マイクロな命令」で、電卓の機能をプログラムで実現する方式だった。少し踏み込んで説明すれば、ハードウェアを汎用化して、各命令を単純化=単機能化し、プログラム(命令の組合せ、ソフトウェア)側で複雑な処理を実現する方式とも言え、後年のCISCからRISCへの流れを思わせるアイデアとも言えた。

https://ja.wikipedia.org/wiki/Intel_4004

https://ja.wikipedia.org/wiki/嶋正利

47

Page 47: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

嶋正利とIntel 4004(6)• ビジコン側とIntel側の考え方を整理すれば、前者はプログラム制御の電卓を計画し、そのためのチップセットの開発を後者に依頼。前者の当初案では、マクロ命令による制御で電卓を動作=計算させるため、10個前後のチップが必要としており「電卓としては汎用(プログラム次第でいろいろな電卓ができる)だが、電卓用という意味では専用のLSIチップを外注」という立場だった。

• 一方、当時の後者の規模ではそれだけ多くの種類のチップを同時に開発するのは難しく、後者の技術者テッド・ホフは、4ビットのワード長ながら、汎用のコンピュータそのものという構成を提案。複数桁の演算処理は、1桁(4ビット)の演算の反復で置き換えればよく、また、外部機器の制御も、ソフトウェアによる制御に置き換えればよい、プログラム制御≒コンピュータ制御という方式を提案し、開発チップの種類を削減した。(後に、マイクロプロセサ=CPUの原点と言われた)

https://ja.wikipedia.org/wiki/Intel_4004

https://ja.wikipedia.org/wiki/嶋正利

48

Page 48: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

嶋正利とIntel 4004(7)• この「テッド・ホフのアイディア」に基づき、前者の嶋正利と後者のフェデリコ・ファジンが中心となり、嶋が論理設計を、ファジンが物理設計(回路設計とマスクレイアウト)を行うことで、4004を完成させる。

• 当初の契約では、このチップはビジコンに対する専売となっていたが、チップの汎用性に気付いたインテルが他への販売を希望し、一方でビジコン側は資金の要求があった事から、契約金の一部をビジコンに払い戻すことでインテルはチップの販売権を得て、1971年11月15日に4004として出荷が開始。

https://ja.wikipedia.org/wiki/Intel_4004

https://ja.wikipedia.org/wiki/嶋正利

49

Page 49: No1:コンピュータとは何か?stimai/R02pdf/2020LectureNo1...計算理論では、算法 or算譜をチュー リング機械と一視する(チャーチ=チューリングのテーゼ)。•数学の形式体系はこの機械の動作に還元できるといわれる。この機

結局、電卓とコンピュータはどこが違うのか

• ENIACは計算の為のデータと命令を遂一、コンピュータに一つ一つ外部より与えて計算を進める「遂次制御方式」というコンピュータ

• EDVACはJ.von.Neumanにより提案されたプログラム(=命令系列とデータ集合)を予め同じメモリに蓄えて、処理(=読出し、解釈、実行)を行うという画期的な「プログラム内蔵(Stored Program)方式」に基づくコンピュータ

•特に、後者は、今まで10進法計算であったものが2進法計算に改められ、コンピュータを構成する要素として、制御装置、演算装置、記憶装置、入力・出力装置という5大要素を採用。

50