§1 計算機械から コンピュータへ

ガイダンス補足
• 出欠
出席者は記録をとるように
(ただし、原則として出席は点数化しない)
• 講義中
– 第2章より高校までの(数学+社会)÷2のよう
な板書中心になるので、ノートの筆記が重要
– ただし、第1章(本日分)は、スライド中心
(スライドは近日中にWebにアップロードする予定)
前回の復習
• コンピュータはセマンティク・ギャップが大きい
– semantic(形)=意味論の・語義論の
• コンピュータは、決して、人間が考えるように
何かをしてるわけではない
• 汎用性
– 「コンピュータは汎用性がある道具」といわれる
– コンピュータの汎用性とは?
§1 計算機械から
コンピュータへ
コンピュータの発明者は誰か?
コンピュータの歴史(1/2)
コンピュータの歴史を知る意義
1. 何がコンピュータかを理解する
(セマンティック・ギャップを埋める)
2. 初代のコンピュータの原理
=現在のコンピュータの原理
•
•
60年間原理は何も変わっていない!
従って、単なる昔話ではない。
コンピュータの歴史(2/2)
歴史を知るための文献
1. 「誰がどうやってコンピュータを創ったのか?」
(星野力、共立出版)
2. 「コンピュータ開発史」(大駒誠一、共立出版)
3. 「Brains~コンピュータに賭けた男たち~(1・2
巻)」
(作:伊藤智義 ・画:久保田眞二、集英社(ビジネスジャ
ンプにて連載)、ただし出版社品切れ中)
数の計算の必要性
BC 50C
古代
中世
AC18・19C
近代
AC20C
現代
ピラミッドの建築
(建材・人員の計算)
暦・天文学
経済活動
商取引
貨幣の流通・税金
科学のめばえ(ルネッサンス)
産業革命(機械生産)
科学技術計算
国勢調査
競馬のオッズ計算
兵器開発(第二次世界大戦)
世論調査・金融
計算機械に必要な機能
問い:人に代わって計算(仮に、足し算)
をしてくれる道具、計算機械を作りたい。
もたせるべき機能を挙げてみよう。
(例1) 124
+ 234
358
(例2) 124
+ 738
862
初期の計算機械
• そろばん(加減乗除)
– 少なくともローマ時代(2-3C)には使われていた
• ネピアの骨(乗除)
– ネピア(1550-1617)
– 九九表を使いやすく配置
4
7
9
4
7
9
Ⅱ
8
1
4
1
8
Ⅲ
1
2
2
1
2
7
Ⅳ
1
6
2
8
3
6
Ⅴ
2
0
3
5
4
5
Ⅵ
2
4
4
2
5
4
Ⅶ
2
8
4
9
6
3
Ⅷ
3
2
5
6
7
2
Ⅸ
3
6
6
3
8
1
Ⅰ
ネピアの骨で
計算(その1)
479×8=?
ネピアの骨で
計算(その2)
4
7
9
4
7
9
Ⅱ
8
1
4
1
8
Ⅲ
1
2
2
1
2
7
Ⅳ
1
6
2
8
3
6
Ⅴ
2
0
3
5
4
5
千
Ⅵ
2
4
4
2
5
4
3
(2+5) (6+7) 2
Ⅶ
2
8
4
9
6
3
3
(7+1)
3
2
Ⅷ
3
2
5
6
7
2
3
8
3
2
Ⅸ
3
6
6
3
8
1
Ⅰ
479×8=?
百
十
一
加減算の自動化(1)
パスカリーヌ
パスカル(1623-1662)
哲学者(「人間は考える葦である。」)
物理学者(パスカルの原理・気圧の単位)
税務官吏を父にもつ
繰り上がり機能付き歯車(HD)
累算器(現在の数値に新しい数値を加え記憶)
演算装置(加算)と(数の)記憶装置の役割
累算器を結合し(1)一桁の加算と(2)桁上げ機構を実現
フランスの通貨
1ソル=12ドゥニエ
1リーブル=20ソル
53台作って10~15台売れた
加減算の自動化(2)
シッカートの計算機
–
–
–
パスカリーヌより先(1623)
ケプラーが利用
シッカート(1571-1630)
チュービンゲン大学(ドイツ)のヘブライ語教授
–
–
乗算部:ネピアの骨
加減算部:繰り上がり機能付き歯車(累算器)
累算器
現在の数値に与えられた数値を追加する機
能をもった装置
–
演算機能:憶えている数値に与えられた数値
を加える
– 記憶機能:次々と更新される数値を憶えてい
る
例:カウンター:指示により一ずつ増える
0⇒1⇒2⇒3⇒4⇒
計算機械:循環する累算器を結合
0⇒1⇒2⇒3⇒…⇒7⇒8⇒9
乗除算の自動化(1)
• 手回し計算機
– ライプニッツの計算機(1700)
• ライプニッツ(1646-1716)
数学者(微積分の記号(dy/dx, ∫))
– オドナーの計算機
仕様を公開し世界的に広まる
– タイガー計算器(HD)(大本寅治郎)
• 計算の仕方(HD)
乗除算の自動化(2)
• 乗除算の機械化の仕組み
– 乗算=和算の繰り返し
– つまり、乗算は従来の計算機械で計算可能
ex. 256×3=256+256+256(3回転)
– これを累積器で実現
計算機械 のさらなる発展
大学出の初任給
• 手回し計算機
• 電動計算機
手回し部をモーターで
1960'sのベンツ
演算部の電子化
• 電卓(電子卓上計算機)
計算機械
計算機械に共通した仕組み
入力装置
演算装置
出力装置
入力装置:計算対象(被加算数・加算数)の入力
演算装置:累算器による
(1)一桁の計算(2)桁上げ
の実現
出力装置:結果の表示機能
そろばんにも、入力装置・演算装置・出力装置が
揃っているか考えてみよう
前回の復習
• 文明の発祥以来われわれは数を計算してきた
• 計算の効率化のため計算機械が発明され、改良
が続けられた
– 計算は累算器によりに機械化できる
– 改良の結果、最新鋭のものが電卓
– 電卓の演算装置はコンピュータの演算装置と質的な差
はない(もちろん性能の差はある)
– 実際、初期のPCは、電卓のために設計されたLSIを流用
することから始まった
• しかし、計算機械ではまだわれわれはコンピュータ
とよばない
• それは、なぜか?
計算機機械に足らないもの(1/2)
大学出の初任給
• 手回し計算機
• 電動計算機
手回し部をモーターで
1960'sのベンツ
演算部の電子化
• 電卓(電子卓上計算機)
• コンピュータ(1940年代)
いくら機械化を
進め便利に
なっても、計算
機械は計算機
械
コンピュータと
は呼ばれない
計算機機械に足らないもの(2/2)
1. 目的:計算機械(そろばんや電卓)もコンピュータ
も計算するという目的の点では同じ
•
コンピュータ(computer)
compute = calculate(計算する), estimate(評価する)
•
もちろん、コンピュータは文字や画像も処理することが出来るが
2. 計算機械の仕組み
–
–
演算装置(累算器)による計算の機械化
方式には、歯車から電子式(LSI(コンピュータの部
品))までいろいろ
入力装置
演算装置
出力装置
計算機械がコンピュータとなるには
何が足らないのか?
コンピュータの父
少なくとも3人いる
• バベッジ(英・ 1791-1871・数学者) (HD)
• ツーゼ(独・1910-1995・エンジニア)(HD)
• アタナソフ(米・1903-1995・物理学者)(HD)
コンピュータの発明(考案)
バベッジ(1791-1871)
– 数学者(ケンブリッジ大学ルーカス講座教授職)
#2ニュートン、#17ホーキング
– コンピュータの父
– 階差機関と解析機関を発明(但し製作には不成
功)
計算機械
コンピュータ
*情報処理の教科書でも、両者が区別されていなかった
り、混同されていることが多い。
階差機関とは(1)
• 数表の危機
数表:建築・航海等における現場で必要なデー
タをあらかじめ計算し表にしたもの
数表に頻繁な間違い(計算ミス・印刷ミス)
船が遭難することも
当時英国は、資本主義経済の世界的中心地で
あった。世界各地を植民地支配しており、数表
作成は国策的大事業
• 階差機関の目的
計算の自動化+印刷の自動化
階差機関とは(2)
べき式の計算
例:
x
1
y
19
2
43
3
93
4
181
5
319
6
519
y  2 x3  x 2  7 x  9
階差機関とは(3)階差とは
べき式の階差
例:
x
1
y
19
y  2 x3  x 2  7 x  9
第1階差
第2階差
第3階差
24
2
43
26
50
3
93
12
38
88
4
181
12
50
138
5
319
62
200
6
519
12
階差機関とは(4)階差とは
べき式の階差
例: y  2x3  x 2  7 x  9
x
1
y
19
•(x+1)3 – x3=(x3+3x2+3x+1)-x3
第1階差
24
2
43
50
3
4
5
6
93
•(x+1)2 – x2=(x2+2x+1)-x2
= 2x+1
88
•(x+1) – x=1
138
つまり、階差をとるとべきの次数が下
がる
200
従って、階差をとり続けるといつかは
べきの次数がゼロ、つまり、定数とな
る
181
319
519
= 3x2+3x+1
階差機関とは(5)
x
1
y
19
第1階差
第2階差
第3階差
① 24
2
② 26
43
④ 12
③ 50
3
⑤ 38
93
⑦ 12
⑥ 88
4
⑧ 50
181
⑨ 138
5
319
19
24
26
12
一つ一つが
累算機
(数を記憶する
装置)
階差機関とは(6)
べき式の階差
3
2
y

2
x

x
 7x  9
例:
 2  x  x  x  x  x  7  x  9
x=1, 2, 3, 4, 5, 6 の値を求める
•
まじめに計算
–
–
•
各計算毎に、掛け算4回、足し算3回
全部で、掛け算24回、足し算18回
階差により計算
–
全部で、足し算9回
(注)掛け算が介在しないことは省エネ効果絶大
x=1.001, 1.002, 1.003, 1.004, 1.005, 1.006
のように、桁数が大きくなればなるほど(精度が必要になれ
ばなるほど)、掛け算の労力は大きい。
階差機関プロジェクトとその挫折
• 階差機関プロジェクト
バベッジ(設計)とクレメント(技術者)
英国政府17,000ポンド+バベッジ私財20,000ポンド
(cf.蒸気機関車784ポンド)
10年間で資金打ち切りに
• プロジェクトの失敗理由
– 機械精度×(ガセびあ)
1985年の再現プロジェクトで動いた
– クレメント(不正経理の疑いも)との確執○
がせビア
• トリビアとは?
– 「トリビアの泉」
• 2002年10月深夜から始まるフジテレビのバラエティ番組
– トリビア
• 番組では、トリビア=役に立たない雑知識
• trivial(形)ささいな、つまらない、あたりまえ
• ガセビアとは?
– トリビアに似て非なる全くのでたらめ… (タモリ)
– 都市伝説の知識版
– 「嘘つき!」(緒川たまき)
解析機関とは(1)
• ジャカード織機(HD)
– ジャカール(仏、1752-1821)の発明
– 織物(HD)
縦糸
×
制御
通糸(つうじ)
制御
カード
読み取り器
横糸
通糸による縦糸の引き上げあり
⇒開口ができる
⇒横糸を通す
解析機関とは(2)
ジャカード織機
自動織機
+ カード読み取り機
入れ替え
計算機械
+ カード読み取り機
プログラム制御計算機
• 計算手順のカード化⇒計算の自動化
「ジャカード織機が花や葉を織るように
解析機関は代数的なパターンを織り出す。」(エイ
ダ)
• プログラミング(プログラムを作る)と
いう概念の登場
*バベッジの協力
者エイダ(詩人バイ
ロンの娘)は「世界
初のプログラマー」
という言い方がされ
ている。
解析機関とは(3)
•
バベージは、解析機関未完のまま解析機関の構想
にかかる。
解析機関の仕様=現代のコンピュータとほぼ同じ
•
–
プログラム制御計算機
•
•
•
事前に作成したプログラムにより自動計算
あらかじめ定められた順番通りの処理だけではなく「条件分岐」
も可能
条件分岐:条件により異なった処理を行う(実際には、書かれた
プログラムの読み飛ばし)
(例1)雨が降ったら、昼食は屋内で
(例2)条件=PCのメニューの選択により、メニューに応じた命令を実行
–
–
•
2進数計算(cf.講義第2章)
演算装置と記憶装置とを分離(cf.講義第4章)
階差機関の挫折もあり構想するにとどまる
空白の百年
• ショイツ親子(スェーデン)
– 実業家
– 階差機関の試作機(1843)
– 階差機関の実用機(1853)
• パリ・ロンドン万国博で展示
– 破産(1873)
• 数表危機は手動計算機械で解決されていた
• 他の計算ニーズが低かった
コンピュータ(バベッジの構想)
が実現した20C
20Cの科学技術水準(バベッジの19Cとの違い)
–
–
–
電球
電話
カード読み取り器
20Cの社会状況
–
–
科学技術計算の高度化
戦争の世紀=国家予算による兵器開発
–
–
原爆開発・ロケット開発
社会的統計処理(人口・保険・賭博)
カード読み取り器の進化(1)
• ホリレス
–
–
–
–
パンチカードの特許(1889)
Tabulating Machine Companyを設立
経営難により会社を1911に売却
売却先:Computing-Tabulating-Recording
Company
(後のInternational Business Machines Corporation、
つまりIBM)
カード読み取り器の進化(2)
ホリレス機械のカード孔読み取り機構
ブラシ
孔
カード
金属ブラシと金属ロー
ラ間の通電・非通電に
よりカード上の孔のパ
ターンを情報として取り
出す。
金属ローラ
カード読み取り器の進化(3)
• 電気信号は機械装置の制御を非常に容易にした
• パンチカード式統計機械
– 穿孔(せんこう)カードを電気伝導で読み取り
– その結果本格的な情報処理が可能に
• 作表機能(カードデータを集計し、統計・小計計算結果を表とし
て表示)
• 分類機能(カード自身の区分け)
• 情報処理機能(カード内容が言わばスイッチとなって処理を開
始)
ツーゼのZ1(1938)
• コンラッド・ツーゼ(独・1910-1995)
– ドイツにおけるコンピュータの父
– 機械式計算機を自宅で自費作成
– バベッジのことを何も知らなかった
使用済み映画フィルムを使用したプログラム読み取り器
(10進数ではなく)2進数で計算
• 誤作動が多く実用性はなかった
元々はV1(Versuchsmodel=実験モデル)という名前だったが、
独軍のV1ロケットとかぶるため変更
• ツーゼの業績について知られるようになったのは
1960以降
ツーゼのZ2
• シュライヤー(電子工学専攻の院生)の参加
• Z1を改良
– リレー式演算装置(リレーは電話会社の中古品)
• 回路のスイッチを別の回路(電磁石)で操作(ON/OFF)(坂村
p139)
• 交換機(たくさんの電話機を一対一につなぐ装置)で当時すでに使
われていた
– 機械式2進記憶装置
• 同時に、真空管による電子式演算装置を試作
– 真空管はラジオ・TVに用いられる電流増幅器
– 入力電圧を高・低の2種類と思えばリレーと同じ働きであ
ることに気がついていた
– リレーの1000倍の速度での演算が可能に
• 連合軍の空爆で焼失(1940)
ツーゼのZ3(1941)
• 演算装置・記憶装置ともリレー式
– Z2が機械式メモリだったのを変更
• 世界初のプログラム制御計算機
=バベッジの構想を100年後に実現
• 連合軍の空爆により焼失
ツーゼのZ4(1944)
• 会社を興し作成(世界初のコンピュータ会社)
– リレー式演算装置
– 機械式記憶装置(Z3で一度リレー式にしたものを
変更)
• 連合軍の空爆により疎開
• 戦渦により作成不能の期間(1945)は、プラン
カルキュール(今のプログラム言語に相当)を
考案
• チューリッヒ大学(スイス)へ貸し出し
• 売却さらに買い戻し(実物が現存)
前回の復習
• 計算機械のままでは、コンピュータとは呼ば
ない。なぜか?
– 一つの大きな要素
– プログラム制御計算機
• バベッジ(英)が19cにすでに構想
• ツーゼ(独)が1941に作成(Z3)
• だれがコンピュータを創ったのか?
– 本当にENIAC(米)か?
計算の高速化(1)
• 必要は発明の母
– バベッジの時代に比べ計算に対するニーズが具体的に
なっていた
• 科学技術計算の高度化
• 兵器開発(原爆開発・ロケット開発)
• 社会的統計処理(人口・保険・賭博)
• ただし、コンピュータの有用性が認められるために
は、手回し計算機を使った人海戦術(計算係はま
さしくcomputerと呼ばれた)より少なくとも速く計算
できる必要
計算の高速化(2)
• 機械(歯車)式
– ツーゼZ1(1938)
– Harvard Mark-I(1944)
• 電気機械式(機械式累算器の回転を電気で制御)
• 加減算0.3秒、乗算3.6秒
• リレー方式
– ツーゼZ3(1941)
– Harvard Mark-II(1947)
• 真空管方式
– ABC(1937)
– ENIAC(1946)
• 加減算0.2m秒、乗算2.8m秒
リレー:電話システムで用
いられる電磁石を使ったス
イッチ
真空管:ラジオ・テレビで用
いられる増幅器
ハーバードMark-I(1944)
– エイケン(米、1900-1973)
• ハーバード大物理学科&米国海軍軍人
– パンチカードシステムで経験蓄積あるIBMの技術協力
– 電気機械式(機械式累算器の回転を電気で制御)
• 最初からリレー式との話もあり?
– 世界初の実用化プログラム制御計算機
• 紙テープからプログラムを供給する
– バグ(Bug)の語源
– Mark-II(1947)
• IBMの資金援助
• リレー式
• 完成時にはリレー式は時代遅れとなっており、IBMがコンピュー
タ業界進出に遅れたきっかけとなったと言われている
ENIAC(1946)(1)
• Electronic Numerical Integrator And Computer
– 世界初のコンピュータとして紹介されていることが多い
• モークリー&エッカート(米)
– ペンシルベニア大ムーア校
• 米国陸軍弾道研究所(ゴールドスタイン)の委託に
よる開発プロジェクト
– 射撃表(砲弾の着弾距離と砲身仰角・火薬量)作成ため
の弾道計算(気温・湿度・風速等を考慮した約3000通
り)
– 200名の計算手(computer)が手回し計算機で計算
– 1弾道当たり12時間
– 一表あたり12時間×3000本÷200人=7.5日
• 1944にフォンノイマンが参加
ENIAC(1946) (2)
• 超巨大装置
–
–
–
–
幅24m、高さ2.4m、奥行き0.9m
重さ30t
消費電力140KW
真空管1800本、ハンダ付け500万箇所
• 世界初の実用的な電子式(真空管式)計算機
– 10進数計算
– 計算速度の向上
• 加減算0.2m秒、乗算2.8m秒
• 機械式(ハーバードMark-I)の1000倍
• 弾道計算が着弾より速く終了できると評された
– 真空管式のため(真空管の寿命が短い)連続運転ができ
なかったという伝説もあるが、実際には安定に稼動
ENIAC(1946) (3)
• 完全なプログラム制御方式ではない
– 計算内容に応じて累算器ユニットを結線で結びなおす必
要も
– 繰り返し制御はできたが、条件分岐(例の、雨が降ったら
…)はできなかった
– 従って、電子計算機ではあったがコンピュータではない
• 稼動時(1946)には第2次世界大戦は終結しており、
主要な計算は、弾道計算から水爆の計算などにシ
フトした
• モークリとエッカートは、ノイマンと決別後、コン
ピュータ会社を起業
• 他社に買収されるが商用コンピュータとして著名な
UNIVACを世にだす
ABCマシン(1)
(Atanasoff-Bery Computer)(1942)
• アタナソフ(米・1903-1995)とベリー(米・19181963)
– アイオワ州立大学
• 米国におけるコンピュータの父
– ENIACのコンピュータとしての特許権の所在について
争う裁判において、最初のコンピュータがアタナソフの
ABCマシンであることを理由に特許権の帰属をENIAC
に認めない判決
– 裁判により栄誉を受ける以前にベリーは自殺
• 世界初の電子式計算機
– 演算装置に真空管を採用し2進数計算
ABCマシン(2)
(Atanasoff-Bery Computer)(1942)
• 現在使われているダイナミックメモリの原型
– 一秒に1回転するドラム表面に1500個のコンデンサ(蓄
電器)を埋め込む
– データを読み出すとデータが消えるので、読み出すたび
にその結果を書き込む
• 専用計算機(プログラム制御計算機ではない)
– 連立方程式の解のみが求められる
– 計算途中人手が必要で完全な計算自動化はできなかっ
た
• 記憶装置の容量が必要最小限で、途中経過を一度カードに書き
出し、そのカードを入力装置で読み込ませる必要があった
• 計算時間30時間+人の作業25時間と見積もられた
– 従って、コンピュータではなかった
プログラム内蔵方式(1)
•
記憶機能の強化の必要性
– 累算器は、装置一つで記憶機能と演算機能を持っている
•
•
–
ABCマシン(1942)の記憶装置
•
•
–
記憶機能:元のデータを憶え続ける
演算機能:元のデータに新たなデータを加える
同じ入力データを何度も参照するため入力データを記憶装置に記
憶
しかし、計算結果(途中経過)を参照できないため、計算結果を一
度カードとして排出。入力カードとして入力装置に移動させていた
(計算時間と同じだけ人間が作業)。
貧弱な記憶機能では、計算の完全自動化は無理
プログラム内蔵方式(2)
•
記憶装置の効用
–
–
計算途中のデータの記憶
プログラム内蔵方式(別名、ノイマン方式)が可能に
•
•
計算途中のデータに止まらずプログラム(計算命令)も記憶
プログラム内蔵方式
– 従来の自動計算機
プログラム(計算命令)の書かれたカードを読み取りながら逐次的に
計算を実行
カードの読み取り速度は大変遅い
– プログラム(計算命令)が内部に記憶されることにより演
算装置へつぎつぎと命令を送り込むことが可能に
プログラム内蔵方式(3)
記憶装置
命令語
①
命
令
の
ア
ド
レ
ス
選
択
②
命
令
読
み
出
し
データ語
④
デ
ー
タ
読
出
し
⑤
デ
ー
タ
書
込
み
命令レジスタ
③命令
の解釈・
実行
制御装置
演算装置
プログラム内蔵方式(4)
•
プログラム内蔵方式の特徴
1. カード読み取りの遅さからの解放・計算の完全自
動化
–
計算の速度・信頼性の向上
2. 考えうる最大限の汎用性の獲得
– プログラム自由度の向上
– 条件分岐(命令のジャンプ)や繰り返しが容易に可能
– カードをジャンプし(前後に読み飛ばし)たり戻って読み返した
りするのは大変時間がかかる
•
計算の途中でプログラムが書き換えられることも
–
–
–
–
プログラム(計算の命令)もデータの一つでしかない
機械自身が与えられた指示を書き換える
機械として質的な大転換
講義の第4章で説明予定
プログラム内蔵方式(5)
• EDVAC(Electronic Discrete Variable Automatic
Computer、電子式デジタル変数自動計算機)
– ENIACグループによる後継機構想
– 1945にはプログラム内蔵方式を検討
– フォンノイマンがプログラム内蔵方式の論文を単著で発表
• 以降、プログラム内蔵方式=ノイマン方式と呼ばれる
– ENIAC主要メンバーの離散の後、1951に完成
従って、世界初のプログラム内臓方式計算機とはならなかった
プログラム内蔵方式(6)
• EDSAC(Electronic Discrete Delay Storage Automatic
Calculator、電子式デジタル遅延蓄積自動計算機)
(1949)
– ウィルクス(英)
• ENIACグループ(米)による夏期講習会(1946)に参加
– 世界初の実用プログラム内蔵方式計算機
以降のプログラミングの基礎
• SSEM(Small-Scale Experimental Machines)(1948)
– 愛称Baby
– ウィリアムズ(英、1911-1972)とキルバーン(英、1921-2001)
• マンチェスター大学
– オリジナルのウィリアムズ・キルバーン管が記憶装置として
働くかの実証機
– 世界初のプログラム内蔵方式計算機(=コンピュータ)
(EDSACとする坂村p152は誤り)
現代のコンピュータ(1)
•
プログラム制御計算機
– バベッジによって発案
– ツーゼZ3が実現
•
プログラム内蔵方式の装置構成(アーキテク
チャ)
1. プログラム制御であるだけでなく、プログラムをコン
ピュータ内部(記憶装置)に保持
2. プログラム(命令手順)を計算データと区別せず記憶
3. 与えられた命令すら機械自身が書き換えてしえるとい
う汎用性の高い機械へ(「コンピュータは知能を持って
いるか」ということが議論されたが、否定されている)
•
電子計算機
– 演算装置の電子化
– 真空管⇒トランジスタ⇒IC⇒LSI⇒超LSI
現代のコンピュータ(2)
• プログラム内蔵方式(ノイマン型)
CPU
制御装置
入力装置
演算装置
出力装置
主記憶装置
命令・データの流れ
外部記憶装置
制御命令の流れ
(1)入力装置:キーボード、マウス、マイク、イメージ・スキャナ、etc
(2)記憶装置:(i)主(高速)(ii)外部(低速)
(3)演算装置 (4)制御装置
(5)出力装置:ディスプレイ、プリンタ、スピーカー、etc
CPU(Central
Processing Unit)
とまとめられることも
現代のコンピュータ(3)
• 手回し計算機や電卓との比較
– 人間の役割
• 演算方法を逐一指示
• データの入力
入力装置
演算装置
人間
(Computer)
出力装置
現代のコンピュータ(4)
CPU(演算装置)
内部記憶装置
*RAM=Random
Access Memory
同期式=時計が送り出
す等間隔のパルスにあ
わせて各装置間の情報
転送が行われる。
1GHz=1秒間に109回の
パルス
現代のコンピュータ(5)
• PCの内部(筐(きょう)体)
http://www.sugilab.net/より転載
現代のコンピュータ(6)
• PCの内部
http://www.sugilab.net/より転載
現代のコンピュータ(7)
• PCの内部(マザーボード(1))
http://www.sugilab.net/より転載
現代のコンピュータ(8)
• PCの内部(マザーボード(HD)(2))
現代のコンピュータ(9)
コンピュータの進化=演算装置の高速化・集積化の歴史
世代
年代
演算デバイス
0.1
~
1.0ms
Mark-I
ENIAC
EDASAC
UNIVAC-I
10
~
1.0μ(10-6)s
USSC
IBM1401
第1世代
トランジスタ
第2世代
1950's後期
~
1960's前期
1960's中期
~
1970's前期
中規模集積回路
第4世代
1970's中期
~
例
機械
電気
真空管
1939年
~
1950's前期
第3世代
時間/1命令
(小規模)集積回路(IC)
大規模集積回路(LSI)
1.0
~
0.1μ(10-6)s
超大規模集積回路
(VLSI)
マイクロ・プロセッサ
0.1μ(10-6) s
~
1n (10-9) s
PC
現代のコンピュータ(10)
コンピュータの世代進化
演算装置の高速化・集積化の歴史
マイクロ・プロセッサ
CPUの回路全体を一つの半導体チップに載せたもの
0.1ミクロン(10-6m)超微細構造作成技術による超LSI
数ミリ角のチップ一個に1000万個のトランジスタ(スイッチ)
(髪の毛は100ミクロン)
基本的な(根本的な)装置構成は何も変わっていない(ノイ
マンのボトルネック)
現代のコンピュータ(11)
CPU内部構造
http://www.sugilab.net/より転載
現代のコンピュータ(12)
• 現代コンピュータの限界=ノイマンのボトル
ネック(ノイマンにまつわるもうひとつの話題)
– プログラム内臓方式では演算装置と記憶装置とが
の分離
– 記憶装置・演算装置間のデータ転送が必須となる
– しかし、データ転送速度<演算速度
– つまり、演算装置はもっと速く計算できるのに、
データが来ないので計算を進めることができないと
いうことが起こっている
コンピュータ史ガセびあ(1)
世界最初のコンピュータはENIAC(1946)である。
(坂村p.103-)
– ENIACのコンピュータとしての特許権の所在について
争う裁判において、最初のコンピュータがアタナソフの
ABCマシンであることを理由に特許権の帰属をENIAC
に認めない判決。
それ以降、米国の教科書では世界最初のコンピュータ
はABCマシンとなっている。
– しかし、ABCマシンは電子式計算機械であるが、コン
ピュータと言えるか?
•
コンピュータの定義をプログラム制御の計算機とすると最初は
Z1(ツーゼ, 1938)となる。他方、プログラム内蔵型にすると最
初はBaby(ウイリアム&キルバーン, 1948)となる。
– ABCマシンが世界初のコンピュータではないにしても、
いずれの意味でもENIACは最初ではない。
誰がコンピュータを創ったか?
•
プログラム制御計算機
1. バベッジ(英)によって考案
2. ツーゼ(独)のZ3が世界初(1941)
3. エイケン(米)のハーバードMark-Iが実用機一号
(1944)
•
プログラム内蔵方式計算機
1. ENIACグループ(米)のEDVAC草案によって提案
(1945、完成は1951)
2. ウィリアムズとキルバーン(英)によるSSEM(通称
Baby)が世界初(1948)
3. ウィルクス(英)によるEDSACが実用機一号(1949)
•
電子式計算機
1. アタナソフとベリー(米)によるABCマシーンが世界初
(1942)
コンピュータ史ガセびあ(2)
現在のコンピュータはノイマン型コンピュータとよ
ばれていることから分かるように、
これを考案したのはフォンノイマン(米)である。
– 「EDVACレポート草稿」 (1945)でノイマンが単著で発
表
– しかし、ENIACの後継機EDVAC構想自体はENIAC
グループの共同作業
– また、ノイマンがENIACに加わったのは1944年と最終
局面
– これをきっかけにENIACグループは離散してしまう
コンピュータ史ガセびあ(3)
バベッジの階差機関は、機械式のため、歯車に
十分な精度を与える技術水準になく未完となった。
(坂村p.96)
– バベッジ生誕200年記念行事として階差機関
の複製を作成(1985)
– 当時の技術水準で作成し、バベッジの断念が
技術的な問題でないことを証明
– 世界初の政府研究助成の難しさや技術者クレ
メントとの確執などが言われている
前回の復習
現代のコンピュータの条件
– プログラム制御
– プログラム内蔵方式
プログラム制御を更に進めて、プログラム(計算指示書)を記憶装
置に保持
少し前なら、「PCを買うときは、予算が許せば、メモリ(記憶装置)を
できるだけ大きくした方がよいよ。」と言ったものこのため(10
年前のPCでは新たにプログラムを開くとき既に開いているプロ
グラムを閉じなければいけなかった)
– 電子計算機化
•
•
演算を高速化するため
バベッジの19cではなく、20cにコンピュータが登場したのは電
気・電子の技術による
• リレー⇒真空管⇒トランジスタ⇒IC⇒LSI
1940年代のコンピュータの登場以降、コンピュータの変更点はこの
点だけともいえる
第1章から第2章へ
では、
• なぜ、リレーや電子回路によって計算ができるのか?
• なぜ、計算を意図して作られたコンピュータが計算以外
の情報処理ができるようになったのか?
• もしコンピュータの筐体を開くと歯車式の加算器が
動いていたなら(パスカルのパスカリーヌのように)、セ
マンティックギャップはなかったはず
• また、加算器だけであれば計算しかできないはず
アナログ計算機(1)
• 計算尺(乗算)
– オートレッド(1631)
– 数→長さ⇒長さの計算(和)→数
• 長さX=log(x), 長さY=log(y)
• X+Y=log(x)+log(y)=log(xy)
• 例:4.0×9.0=36.0
4.0
1.0
36.0
10.0
1.0
100.0
10.0
9.0
100.0
アナログ計算機(2)
• 積分器
– ケルビン
– y=f(x)のグラフのカーブを機械でなぞり積分∫f(x)dxを
評価
• 微分解析機
– ブッシュ(1931, 1942)
– 他変数の連立微分方程式
⇔ケルビンの積分器を歯車・伝動軸で結合
– 精度10-4
アナログ計算機(3)
• 積分器の原理
– 積分とは?
y=f(x)
y
x
積分S=∫f(x)dx
=グラフの面積
=上の緑の長方形の面積の和
アナログ計算機(4)
• 積分器の原理
– 概念図
軸からの距離=f(x)
ローラーの回転数が積分値
∵ 軸から離れるほど(比例して)回転距離が長い
θ
f1
f1θ
f2θ
f2
トラック競技と
同じ
アナログ計算機(5)
• 積分器の原理
y=f(x)
y
456789
3
2
1
x
積分値=
1
2
5
+
+
3
9
6
…
4
7
8
アナログ計算機(6)
• 微分解析機
– ブッシュ(1931, 1942)
– 多変数の連立微分方程式
⇔ケルビンの積分器を歯車・伝動軸で結合
– 精度10-4
• アナログ計算機:解くべき方程式のと同じ方程式
に従う物理システムからなる計算機
– analog computerという表現は、 それが意味する内容か
らanalogous(類似的, =similar(相似的))という単語から
つけられた。
– digitalに対する対義語としてanalogという言葉が使われ
ているが、 analog computerという言葉がanalogという言
葉より先であり、元からあった言葉ではない。
アナログ計算機(7)
• 量子コンピュータ
日本の計算機開発史
• リレー
• パラメトロン(後藤英一)
⇒トランジスタ⇒IC⇒LSI
• 論理回路による設計
第一章のまとめ
問い 手回し計算機や電卓に代表される計算機械と内部装
置を比較することによってコンピュータをコンピュータたらし
めている特性について述べよ。
との内容の問いに答えられるか確認しておくこと。