1. 需求最開始的出現
- 給機器編程的需求,在計算出現之前就已經存在了
- 最著名的例子來自紡織業,例如在一塊布上,不想要純色,而是有圖案的布,例如條紋或者方格
- 約瑟夫·瑪麗·雅卡爾 發明了可編程紡織機,1801 年首次亮相
- 很多人認爲雅卡爾織布機是最早的編程
2. 穿孔紙卡
- 便宜、可靠、易懂
- 用於 1890 年美國人口普查
- 早期彙總機不算計算機,因爲它們只做一件事:彙總數據。操作是固定的,不能編程。
- 穿孔紙卡存的是數據,不是程序
- 用紙卡的最大型程序是美國空軍的 SAGE 防空系統,於 1955 年完成
3. 紙帶
- 穿孔紙卡的親戚
- 基本是一回事,只不過更連續,不是一張張卡
4. 插線板
- 正確執行不同計算
- 面板有很多小插孔,程序員可以插電線,讓機器的不同部分,互相傳遞數據和信號
- 但是,這也意味着運行不同程序要重新接線
- 到了 1920 年,控制面板編程了可拔插,讓編程更加方便,可以給機器插入不同程序
- 世界上第一臺通用電子計算機,ENIAC,完成於 1946 年,用了一大堆插線板,給 ENIAC 連線,最多可能花三個星期
- 早期計算機非常昂貴,停機幾個星期只爲換程序,完全無法接受,人們急需更快、更靈活的新方式來編程
5. 面板編程
- 與其插一堆線到插線板,可以用一大堆開關和按鈕,做到一樣的效果
- 面板上有指示燈,代表各種函數的狀態和內存中的值
- 50和60年代的計算機,一般都有這樣巨大的控制檯
6. 內存
- 1940 年代晚期,1950 年代初,內存變得可行。價格下降,容量上升
- 與其把程序存在插線板,存在內存變得可行,程序易於修改,方便 CPU 快速讀取,這類機器叫「存儲程序計算機」
- 程序和數據都存在一個地方,叫「馮諾依曼結構」
- 馮諾依曼計算機的標誌:一個處理器(有算數邏輯單元)+ 數據存儲器 + 指令寄存器 + 指令地址寄存器 + 內存(存數據和指令)
- 第一臺馮諾依曼架構的「存儲程序計算機」由曼徹斯特大學於 1948 年建造完成,綽號 "Baby"
7. 家用
- 第一款取得商業成功的家用計算機是 Altair 8800
- 兩種版本
- 預先裝好的整機
- 需要組裝的組件