コンピュータプログラミングにおける20の最大の発明
私の編集長との会話の中で、私は質問をされました。, “最初のプログラマーはどのようにプログラムしましたか?” これはBabbageとAda Lovelaceについての議論につながりました、そしてその最後に、私は研究に割り当てられました どうやって それ すべてが始まった - それはコンピューティングの歴史の中で多くの最初のものです.
私は本やウェブサイトを掘り下げ、多くの啓示を受けました。 発明者 コンピュータの中でも、FORTRANは間違いなく最初の高水準プログラミング言語ではありませんでしたし、私たちはCRTスクリーン用のスタイラスを使用していました。.
また、私たちの教科書で無視していた多くの女性の貢献に加えて、コンピュータ開発の急速な進歩に不可欠な戦争がどのように重要な役割を果たしているのかを知り、私は驚きました。それゆえ、コンピュータとプログラムの歴史におけるギャップを埋めるために、私はボウリングボールから第二次世界大戦まで、そしてその間にあるすべてのものの、コンピューティングの世界で20の最初をまとめました。.
1.最初のコンピューター “差分エンジン” (1821)
の “差分エンジン” 数学的な表を出力するのに使用されるために提案された機械的なコンピュータでした。 Charles Babbage(別名Computerの父)はイギリス政府の委託を受けて作業を開始しましたが、その高い生産コストのために資金調達は中止されました 機械は決して完成しなかった.
2.最初の汎用コンピュータ “分析エンジン” (1834)
の “分析エンジン” また、提案された機械式コンピュータでもあり、その入力は、プログラムとデータがパンチされたパンチカードであることになっていました。チャールズバベッジの別の発案、このマシンも完成しなかった.
3.最初のコンピュータプログラム:ベルヌーイ数を計算するためのアルゴリズム(1841 - 1842)
Ada Lovelace(世界初のコンピュータープログラマー)は、1841年にイタリアの数学者Luigi Menabreaの記録をBabbageの分析エンジンに翻訳し始めました。翻訳の間、彼女は機械に興味を持ち、メモを残しました。メモの1つ - メモG, 分析エンジンによってベルヌーイ数を計算するためのアルゴリズムが含まれています。これは最初のコンピュータープログラムと考えられています。.
4.最初に動作するプログラマブルコンピュータ:Z3(1941)
Konrad Zuse(コンピューターの発明者)は既に実用的な機械式コンピューターZ1を持っていましたが、それは一度に数分間しか作動しませんでした。別の技術の使用 - リレー、Z2そして最終的にZ3につながった。 Z3はプログラムとデータが外部のパンチテープに保存された電磁計算機でした。それはドイツ政府の秘密のプロジェクトであり、ドイツ航空機研究所によって使用されました。オリジナルのマシンは1943年にベルリンの爆撃で破壊されました.
5.最初の電子計算機:Atanasoff-Berry Computer(ABC)(1942)
John Vincent Atanasoff&Clifford Berryによって作成された、そのために命名されたAtanasoff-Berry ComputerまたはABCは、連立一次方程式の解を見つけるために使用されました。機械式ではなくデータと電子スイッチを表すためにバイナリを使用したのは、これが最初のコンピュータでした。しかしコンピュータはプログラム可能ではなかった.
6.初のプログラマブル電子計算機:巨像(1943)
トミーフラワーズによって作成された巨像は、第二次世界大戦に戻って、イギリスがロレンツ暗号によって暗号化されたドイツのメッセージを解読するのを助けるために作成された機械でした。それは電子スイッチとプラグによってプログラムされました。巨像は暗号化されたメッセージを数週間から数時間に解読する時間をもたらしました.
7.初の汎用プログラマブル電子計算機:ENIAC(1946)
米軍、ENIACまたは 電子数値積分器とコンピュータ John Mauchly&J. Presper Eckertによってペンシルベニア大学のMoore School of Electrical Engineeringで開発されました。 ENIACは幅150フィートで、ループのような複雑な操作を実行するようにプログラムすることができました。プログラミングは、電子スイッチとケーブルを変更することによって行われました。入力にはカードリーダー、出力にはカードパンチを使用しました。世界初の水素爆弾の実現可能性を計算するのに役立ちました.
8.最初のトラックボール:(1946/1952)
最初のトラックボールが2年間続くのはなぜですか?説明させてください.
最初の年は、1946年に低空飛行用の監視システムに取り組んでいたときに世界初のトラックボールバックを作成したと主張したラルフベンジャミンによって与えられた年でした。彼が述べた発明はXY座標を制御するためにボールを使いました画面上のカーソルのデザインは1947年に特許を取得しましたが、それが “軍事の秘密”. 軍は代わりにジョイスティックを選んだ.
1952年にカナダ海軍のDATARシステムで使用された世界初のトラックボールの2番目の候補は、Tom Cranston氏と共同で発明されました。このトラックボールのデザインには、カナダのボウリングボールを使ったモックアップがありました。 “エアベアリング” (下の画像を参照).
9.初のストアドプログラムコンピューター:SSEM(1948)
遅延線メモリの欠点を克服するために、Frederic C. WilliamsとTom Kilburnは、標準のCRTに基づいた最初のランダムアクセスデジタル記憶装置を開発しました。 SSEM(マンチェスター) 小型実験機)実用的な使用のためにその記憶装置を実施するために使用された。プログラムは32個のスイッチを使用してバイナリ形式で入力され、その出力はCRTでした。.
10.最初の高級プログラミング言語:Plankalkül(1948)
Konrad Zuseは1943年以来Plankalkülの研究を始めましたが、彼がそれについての論文を発表したのは1948年のことでした。残念ながらあまり注目されていませんでした。 Joachim Hohmannによって論文で作成されたコンパイラがそのために実装されるには、30年近くかかります。.
11.最初のアセンブラ: “初期注文” EDSAC用(1949)
アセンブラは、ニーモニック(低レベル)を数値表現(マシンコード)に変換するプログラムです。 EDSACでの最初の注文電子遅延記憶自動計算機)はそのようなシステムの最初のものでした。紙のテープ入力からメモリにプログラムを組み立てて入力を実行するために使用されていました。プログラムは、マシンコードではなくニーモニックコードになっていました。 “初期コード” シンボリック低レベルプログラムコードをマシンコードに処理することによって、史上初のアセンブラ.
12.最初のパソコン “サイモン” (1950)
“サイモン” エドマンドバークレーによって4つの操作を実行することができた最初の手頃な価格のデジタルコンピュータ:加算、否定、より大きい、そして選択。入力はパンチ紙で、プログラムは紙テープで走りました。唯一の出力は5灯でした.
13.最初のコンパイラ:UNIVAC 1用のA-0(1952)
コンパイラは高級言語を機械語に変換するプログラムです。 A-0システムは伝説のGrace Hopperによって作成されたプログラムで、一連のサブルーチンと引数として指定されたプログラムをマシンコードに変換します。 A-0は後にA-2へと進化し、そのソースコードとともに顧客にリリースされたので、それはおそらくとても良いものになった。 最初のオープンソースソフトウェア.
14.最初のオートコード:Glennie's Autocode(1952)
オートコードは、コンパイラを使用する高水準プログラミング言語です。最初のオートコードとそのコンパイラは、Mark 1マシンのプログラミングをわかりやすくするために、マンチェスター大学に登場しました。これはAlick Glennieによって作成されたため、Glennie's Autocodeという名前になりました。.
15.最初のリアルタイムグラフィックディスプレイコンピュータ:IBMによるAN / FSQ-7(1951)
AN / FSQ-7は、リアルタイム出力を示した最初のコンピュータの1つ、Whirlwindをベースにしていました。それは半自動地上環境(SAGE)として知られている米国の航空防衛システムのライフラインとなりました。コンピュータは目標の進路を示し、どの防御が範囲内にあるかを自動的に示した。 AN / FSQ-7には100台のシステムコンソールがありました。これがOA-1008シチュエーションディスプレイ(SD)で、スクリーン上のターゲットを選択するのに使用されます。.
16.最初に広く使われた高級プログラミング言語:FORTRAN(1957)
教科書をチェックすると、FORTRANが最初の高水準プログラミング言語としてリストされています。プログラムを書くことを嫌い、プロセスをずっと簡単にするのを助けるためにプログラミングシステムを作成することを決心したジョンW.バッカスによって考えられて、FORTRANの使用は機械を動かすために必要なプログラミングステートメントの数を大いに減らしました。 1963年までに、40を超えるFORTRANコンパイラがすでに利用可能になりました.
17.最初のマウス(1964)
マウスのアイデアが1964年にDouglas Engelbartにやって来たのは、コンピューターグラフィックスの会議セッションに座っていた時でした。画面上のカーソル。プロトタイプ(下記参照)は彼の主任エンジニアであるBill Englishによって作成されましたが、技術的にはそれはEngelbertの使用者であるSRIに属していたので、EnglishとEngelbartの両方がデザインの使用料を受け取りません.
18.最初の商用デスクトップコンピュータ:Programma 101(1965)
Perottinaとしても知られるProgramma 101は、世界初の商用PCです。それは加算、減算、乗算、除算、平方根、絶対値、および分数を実行することができます。それができることすべてのために、それは3,200ドルで販売され(それは非常に異なった時間でした)、そしてなんと44,000台を売ることができました。 PerottinaはPier Giorgio Perottoによって発明され、イタリアのメーカーOlivettiによって製造されました。.
19.最初のタッチスクリーン(1965年)
それほど多くは見えませんが、これは世界がこれまでに知らなかった最初のタッチスクリーンでした。それは容量性タッチスクリーンパネルであり、感圧性がなく(接触または非接触のどちらか)、そしてそれは(マルチタッチとは対照的に)単一の接触点のみを記録する。この概念は、1990年代まで英国の航空管制官が使用するために採用されました。.
20.最初のオブジェクト指向プログラミング言語:Simula(1967)
C. A. R. Hoareのクラス構成概念に基づいて、Ole-Johan DahlとKristen Nygaardは彼らの更新を更新しました。 “SIMULA私” オブジェクト、クラス、サブクラスを含むプログラミング言語その結果、最初のオブジェクト指向プログラミング言語となったSIMULA 67が作成されました。.
最終的な考え
この記事がコンピューティングの歴史における多くの最初のことについて私たちが学ぶことができることについてのものであったのと同様に、歴史自体に自分自身を浸すことは困難です。結果として、少なくとも私にとっては、私たちは 私たちの前に世代によって行われた仕事についてもっと感謝する, そして、私たちが今日住んでいる世界を形作る多くの変化を駆り立てているものをよりよく理解することができます.
この記事が私を奮い立たせたのと同じくらいあなたを奮い立たせてくれることを願って. これらの最初のことについてあなたの考えを共有し、私は私がしたと確信している、私が何かを逃した場合は、コメントにそれらを追加してください.