『壹』 卡片機的編程軟體和plc的編程軟體是一樣的嗎
不一樣,單片機是個晶元只能做輸入輸出,plc是一系列東西,功能很強大的。
『貳』 不插電編程課中用紙卡片能學習真正的編程嗎適合低年級的小學生嗎
這個系列的課程,雖然只是使用自製紙質卡片,要學習的內容可是真正的編程思維邏輯和核心內容。不同於類似的編程玩具類似去做一個小車前進後退的游戲,我們的編程卡片僅僅從幾個簡單的編程卡片(僅四種)和一些編程技能(十來種核心語句)出發學習真正的編程語句,構建我們的程序邏輯。小學生可以在卡片游戲中輕松學編程,初高中學生也可以在其中學習真正編程的編寫邏輯,因為,這些卡片,基本上都是可以逐一轉換為編程語言的語句段,課程的後段內容也會涉及到這部分內容。
『叄』 游戲王卡片製作器!
這個還真的是沒有日本那邊也沒有,游戲漢化和製作是不一樣的,LZ現在都什麼時代了你還在玩城版,建議玩YGOCORE從第一代卡片到現在2014年發行808都有可聯機也可單機,卡片製作軟體的話ygo是有的,況且沒有同調的游戲王算什麼游戲王,ygo卡片製作編程簡單,而且使用OCG游戲王和tcg游戲王大師規則而且每個月都更新動畫卡和官方卡強烈建議LZ玩分什麼的你還是自己留著吧,你這個問題估計是沒什麼人答的了
『肆』 編程是幹嘛的
編程是編製程序的簡稱,程序即做某件事情的步驟,編製程序的過程就是安排做某一件事情具體步驟的過程。
編程的對象一般是計算機,但這個概念源自早期的紡織機,用於設定紡織機紡織出來的圖案,不同的「程序」卡片將使紡織機採用不同的織法,從而使一種機器可以做出不同的產品。早期的計算機沒有編程能力,其用途在設計的過程中就確定了,也就是說它的工作步驟固定在其結構組成中,比如用來計算彈道的計算機就只能用來計算彈道,要拿來做別的用途必須重新連接電氣和機械組成。後來有了通用計算機的概念,將工作步驟和硬體組成分開,用一種機器應對不同需求(這一點和前面提到的紡織機是相似的),這時候就有了現在的編程概念,即規定計算機做某件事情的具體步驟。
比如一個程序,計算從1到100所有數字的和:
int sum=0;
for(int i=1;i<=100;i++)
{
sum=sum+i;
}
它就規定了兩個地址,一個為和,並初始化為0,一個為計數器初始化為1,如果計數器小於等於100,則計數器增加一格並與和中存儲的數值相加,直到計數器大於100,此時和即為所求。
現實中使用的所有軟體都是程序的具體化,是極為復雜的組成,但都可以分解為細微的簡單的部分,其本質都是規定計算機如何工作,來滿足使用者的需求,比如一個視頻播放軟體,在概念上就是以非常快的速度將圖片描繪在顯示器上(每秒24張以上),如何實現呢?這就是編製程序的工作了,如何從文件中提取圖片,如何處理每一個像素,等等。
『伍』 從織布機到計算機 閱讀答案急急急
你知道織布機和計算機有什麼相同之處嗎?它們之間的血緣關系超乎你的想像。擺在寫字台上的台式機,塞在口袋裡的掌上電腦,掛在腰上的行動電話,乃至你家中的很多家用電器,都是1804年誕生的一台織布機的後代。
19世紀早期,法國里昂的絲織工人們織出了圖案絢麗的絲綢錦緞,然而他們使用的工具卻是質量低劣、效率低下的老式手工提花機。這種機器需要有人站在上面,費力地一根一根地將絲線.提起、放下,才能織出精細復雜的絲綢,就好像演員在操縱牽線木偶。
這種煩瑣的勞動隨著1804年雅卡爾提花機的發明發生了改變。這種革命性的織布機利用預先打孔的卡片來控制織物的編織式樣,速度比老式手工提花機快了25倍,就好比從自行車到汽車的飛躍。雅卡爾的打孔卡片不只為絲織業帶來革命,也為人類從此打開了一扇信息控制的大門。
1836年,雅卡爾去世:兩年之後,計算機科學先驅、著名的英國科學家查爾斯·巴比奇製造了一台木齒鐵輪計算機,用來計算很多數學難題,並利用雅卡爾打孔卡片的原理為這台計算機編程。當時巴比奇的女友稱這台木齒鐵輪計算機就如同提花織布一樣,在編織代數模型。革然他沒有使用語言編程(一個世紀以後才正式出現),但是巴比奇畢竟提出了為計算機編程的思想,這一理念啟發了20世紀的計算機科學家。後來,人們將巴比奇稱為計算機的鼻祖。
19世紀未,美國統計學家赫爾曼·霍爾瑞斯借鑒雅卡爾的打孔卡片發明了一種特殊的機器,供戶口調查員處理數據。在19世紀的最後幾十年裡,美國的人口出現了爆炸性的增長,人口普查變得越來越難以操作,要想對一次人口普查的數據進行加工和處理,至少要花上十年的時間。這部被霍爾瑞斯稱為「製表機」的機器大大提高了人口數據處理的速度。製表機的原理與雅卡爾提花機很接近,它在卡片上打出一系列的小孔,代表每一個家庭的每一位公民,不同的孔包含不同的信息。只要運用得當,製表機每小時可以處理幾萬張卡片。
20世紀40年代,IBM公司開始製造計算機,計算機的時代到來了。不過那時候的計算機沒有放棄類似於雅卡爾提花機上的那種打孔卡片,還在利用它編程。這種狀況一直延續到20世紀80年代後期,打孔卡片最終被電子媒介——磁帶和光碟所取代。
看到這里,也許我們可以說,計算機不過是台極其高級的織布機而已。這是多麼令人驚奇的事情,我們現在視為尖端科技的計算機,竟與織布機血脈相連。當你使用計算機的時候,本質上你也是在以光速做著編織工作。
1。閱讀全文,完成下面的填空。 (3分)
本文以 為順序,介紹了雅卡爾發明的用——控制織物的提花機,巴比奇製造的木齒鐵輪計算機,霍爾瑞斯發明的被稱為——的機器,IBM公司製造的計算機。
2.人們為什麼把巴比奇稱為計算機的鼻祖? (4分)
3.為什麼說計算機是「1804年誕生的一台織布機的後代」? (3分)
4.本文主要運用了作比較的方法,請舉出兩例,並加以說明。 (4分)
5.從雅卡爾提花機的發明,到現代計算機的誕生,你從中得到哪些啟示?請分條列出兩點。 (4分)
參考答案:1.時間(或:事物發展) 打孔卡片(或:預先打孔的卡片) 製表機
2.①巴比奇製造了計算機;②巴比奇提出了為計算機編程的思想。(意思對即可)
3.因為從最早的木齒鐵輪計算機到現代的IBM公司早期製造的計算機,都運用了雅卡爾提花機以打孔卡片控制信息的原理。(意思對即可)
4.示例:①把雅卡爾提花機與老式提花機作比較,說明前者編織速度快。②把製表機處理數據的速度和人工處理數據的速度作比較,說明前者處理數據的速度快。③把製表機和雅卡爾提花機作比較,說明兩者的編程原理相通。
5.示例:①科學技術是在繼承前人研究成果的基礎上發展的。②革命性的發明創造會對人類文明產生深遠的影響。③科學發明往往是與社會生活需求緊密聯系在一起的。④讀書學習也需要借鑒吸收前人的知識和經驗。
『陸』 優必傑不插電編程課中卡片編程中有幾種編程卡片
一共只有四種:開始、執行_____、如果_______那麼,以及:重復執行,直到______。
『柒』 電腦毛衣編織機怎麼操作
電腦的肯定要先編程撒,卡片式的插卡片才能織出花
『捌』 請介紹一下計算機的發展史!越詳細越好~
歷史
ENIAC是電腦發展史上的一個里程碑本來,計算機的英文原詞「computer」是指從事數據計算的人。而他們往往都需要藉助某些機械計算設備或模擬計算機。這些早期計算設備的祖先包括有算盤,以及可以追溯到公元前87年的被古希臘人用於計算行星移動的安提基特拉機制。隨著中世紀末期歐洲數學與工程學的再次繁榮,1623年由Wilhelm Schickard率先研製出了歐洲第一台計算設備,這是一個能進行六位以內數加減法,並能通過鈴聲輸出答案的「計算鍾」。使用轉動齒輪來進行操作。
1642年法國數學家Pascal 在WILLIAM Oughtred計算尺的基礎上,將計算尺加以改進,能進行八位計算。還賣出了許多製品,成為當時一種時髦的商品。
1801年,Joseph Marie Jacquard對織布機的設計進行了改進,其中他使用了一系列打孔的紙卡片來作為編織復雜圖案的程序。Jacquard式織布機,盡管並不被認為是一台真正的計算機,但是它的出現確實是現代計算機發展過程中重要的一步。
查爾斯�9�9巴比奇(Charles Babbage)是構想和設計一台完全可編程計算機的第一人,當時是1820年。但由於技術條件,經費限制,以及無法忍耐對設計不停的修補,這台計算機在他有生之年始終未能問世。約到19世紀晚期,許多後來被證明對計算機科學有著重大意義的技術相繼出現,包括打孔卡片以及真空管。Hermann Hollerith設計了一台製表用的機器,就實現了應用打孔卡片的大規模自動數據處理。
在20世紀前半葉,為了迎合科學計算的需要,許許多多單一用途的並不斷深化復雜的模擬計算機被研製出來。這些計算機都是用它們所針對的特定問題的機械或電子模型作為計算基礎。20世紀三四十年代,計算機的性能逐漸強大並且通用性得到提升,現代計算機的關鍵特色被不斷地加入進來。
1937年由克勞德·艾爾伍德·香農(Claude Shannon)發表了他的偉大論文《對繼電器和開關電路中的符號分析》,文中首次提及數字電子技術的應用。他向人們展示了如何使用開關來實現邏輯和數學運算。此後,他通過研究Vannevar Bush的微分模擬器進一步鞏固了他的想法。這是一個標志著二進制電子電路設計和邏輯門應用開始的重要時刻,而作為這些關鍵思想誕生的先驅,應當包括:Almon Strowger,他為一個含有邏輯門電路的設備申請了專利;尼古拉�9�9特斯拉(Nikola Tesla),他早在1898年就曾申請含有邏輯門的電路設備;Lee De Forest,於1907年他用真空管代替了繼電器。
Commodore公司在20世紀八十年代生產的Amiga 500電腦沿著這樣一條上下求索的漫漫長途去定義所謂的「第一台電子計算機」可謂相當困難。1941年5月12日,Konrad Zuse完成了他的機電共享設備「Z3」,這是第一台具有自動二進制數學計算特色以及可行的編程功能的計算機,但還不是「電子」計算機。此外,其他值得注意的成就主要有:1941年夏天誕生的阿塔納索夫-貝瑞計算機是世界上第一台電子計算機,它使用了真空管計算器,二進制數值,可復用內存;在英國於1943年被展示的神秘的巨像計算機(Colossus computer),盡管編程能力極其有限,但是它的的確確告訴了人們使用真空管既值得信賴又能實現電氣化的再編程;哈佛大學的Harvard Mark I;以及基於二進制的「埃尼阿克」(ENIAC,1944年),這是第一台通用意圖的計算機,但由於其結構設計不夠彈性化,導致對它的每一次再編程都意味著電氣物理線路的再連接。
開發埃尼阿克的小組針對其缺陷又進一步完善了設計,並最終呈現出今天我們所熟知的馮·諾伊曼結構(程序存儲體系結構)。這個體系是當今所有計算機的基礎。20世紀40年代中晚期,大批基於此一體系的計算機開始被研製,其中以英國最早。盡管第一台研製完成並投入運轉的是「小規模實驗機」(Small-Scale Experimental Machine,SSEM),但真正被開發出來的實用機很可能是EDSAC。
在整個20世紀50年代,真空管計算機居於統治地位。1958年 9月12日 在Robert Noyce(INTEL公司的創始人)的領導下,發明了集成電路。不久又推出了微處理器。1959年到1964年間設計的計算機一般被稱為第二代計算機。
到了60年代,晶體管計算機將其取而代之。晶體管體積更小,速度更快,價格更加低廉,性能更加可靠,這使得它們可以被商品化生產。1964年到1972年的計算機一般被稱為第三代計算機。大量使用集成電路,典型的機型是IBM360系列。
到了70年代,集成電路技術的引入極大地降低了計算機生產成本,計算機也從此開始走向千家萬戶。1972年以後的計算機習慣上被稱為第四代計算機。基於大規模集成電路,及後來的超大規模集成電路。1972年4月1日 INTEL推出8008微處理器。1976年Stephen Wozinak和Stephen Jobs創辦蘋果計算機公司。並推出其Apple I 計算機。1977年5月 Apple II 型計算機發布。1979年6月1日 INTEL發布了8位元的8088微處理器。
1982年,微電腦開始普及,大量進入學校和家庭。1982年1月Commodore 64計算機發布,價格:595美元。 1982 年2月80286發布。時鍾頻率提高到20MHz,並增加了保護模式,可訪問16M內存。支持1GB以上的虛擬內存。每秒執行270萬條指令,集成了134000個晶體管。
1990年11月: 第一代MPC (多媒體個人電腦標准)發布。處理器至少80286/12MHz,後來增加到80386SX/16 MHz ,及一個光碟機,至少150 KB/sec的傳輸率。1994年10月10日 Intel 發布75 MHz Pentium處理器。1995年11月1日Pentium Pro發布。主頻可達200 MHz ,每秒鍾完成4.4億條指令,集成了550萬個晶體管。1997年1月8日Intel發布Pentium MMX。對游戲和多媒體功能進行了增強。
此後計算機的變化日新月異,1965年發表的摩爾定律發表不斷被應證,預測在未來10~15年仍依然適用。
『玖』 電腦是什麼呀
電腦就是計算機
電子計算機是一種根據一系列指令來對數據進行處理的機器。所相關的技術研究叫計算機科學,由數據為核心的研究稱信息技術。
計算機種類繁多。實際來看,計算機總體上是處理信息的工具。根據圖靈機理論,一部具有最基本功能的計算機應當能夠完成任何其它計算機能做的事情。因此,只要不考慮時間和存儲因素,從個人數碼助理(PDA)到超級計算機都應該可以完成同樣的作業。即是說,即使是設計完全相同的計算機,只要經過相應改裝,就應該可以被用於從公司薪金管理到無人駕駛飛船操控在內的各種任務。由於科技的飛速進步,下一代計算機總是在性能上能夠顯著地超過其前一代,這一現象有時被稱作「摩爾定律」。
計算機在組成上形式不一。早期計算機的體積足有一間房屋大小,而今天某些嵌入式計算機可能比一副撲克牌還小。當然,即使在今天,依然有大量體積龐大的巨型計算機為特別的科學計算或面向大型組織的事務處理需求服務。比較小的,為個人應用而設計的計算機稱為微型計算機,簡稱微機。我們今天在日常使用「計算機」一詞時通常也是指此。不過,現在計算機最為普遍的應用形式卻是嵌入式的。嵌入式計算機通常相對簡單,體積小,並被用來控制其它設備—無論是飛機,工業機器人還是數碼相機。
上述對於電子計算機的定義包括了許多能計算或是只有有限功能的特定用途的設備。然而當說到現代的電子計算機,其最重要的特徵是,只要給予正確的指示,任何一台電子計算機都可以模擬其他任何計算機的行為(只受限於電子計算機本身的存儲容量和執行的速度)。據此,現代電子計算機相對於早期的電子計算機也被稱為通用型電子計算機。
歷史
ENIAC是電腦發展史上的一個里程碑本來,計算機的英文原詞「computer」是指從事數據計算的人。而他們往往都需要藉助某些機械計算設備或模擬計算機。這些早期計算設備的祖先包括有算盤,以及可以追溯到公元前87年的被古希臘人用於計算行星移動的安提基特拉機制。隨著中世紀末期歐洲數學與工程學的再次繁榮,1623年由Wilhelm Schickard率先研製出了歐洲第一台計算設備,這是一個能進行六位以內數加減法,並能通過鈴聲輸出答案的「計算鍾」。使用轉動齒輪來進行操作。
1642年法國數學家Pascal 在WILLIAM Oughtred計算尺的基礎上,將計算尺加以改進,能進行八位計算。還賣出了許多製品,成為當時一種時髦的商品。
1801年,Joseph Marie Jacquard對織布機的設計進行了改進,其中他使用了一系列打孔的紙卡片來作為編織復雜圖案的程序。Jacquard式織布機,盡管並不被認為是一台真正的計算機,但是它的出現確實是現代計算機發展過程中重要的一步。
查爾斯・巴比奇(Charles Babbage)是構想和設計一台完全可編程計算機的第一人,當時是1820年。但由於技術條件,經費限制,以及無法忍耐對設計不停的修補,這台計算機在他有生之年始終未能問世。約到19世紀晚期,許多後來被證明對計算機科學有著重大意義的技術相繼出現,包括打孔卡片以及真空管。Hermann Hollerith設計了一台製表用的機器,就實現了應用打孔卡片的大規模自動數據處理。
在20世紀前半葉,為了迎合科學計算的需要,許許多多單一用途的並不斷深化復雜的模擬計算機被研製出來。這些計算機都是用它們所針對的特定問題的機械或電子模型作為計算基礎。20世紀三四十年代,計算機的性能逐漸強大並且通用性得到提升,現代計算機的關鍵特色被不斷地加入進來。
1937年由克勞德·艾爾伍德·香農(Claude Shannon)發表了他的偉大論文《對繼電器和開關電路中的符號分析》,文中首次提及數字電子技術的應用。他向人們展示了如何使用開關來實現邏輯和數學運算。此後,他通過研究Vannevar Bush的微分模擬器進一步鞏固了他的想法。這是一個標志著二進制電子電路設計和邏輯門應用開始的重要時刻,而作為這些關鍵思想誕生的先驅,應當包括:Almon Strowger,他為一個含有邏輯門電路的設備申請了專利;尼古拉・特斯拉(Nikola Tesla),他早在1898年就曾申請含有邏輯門的電路設備;Lee De Forest,於1907年他用真空管代替了繼電器。
Commodore公司在20世紀八十年代生產的Amiga 500電腦沿著這樣一條上下求索的漫漫長途去定義所謂的「第一台電子計算機」可謂相當困難。1941年5月12日,Konrad Zuse完成了他的機電共享設備「Z3」,這是第一台具有自動二進制數學計算特色以及可行的編程功能的計算機,但還不是「電子」計算機。此外,其他值得注意的成就主要有:1941年夏天誕生的阿塔納索夫-貝瑞計算機是世界上第一台電子計算機,它使用了真空管計算器,二進制數值,可復用內存;在英國於1943年被展示的神秘的巨像計算機(Colossus computer),盡管編程能力極其有限,但是它的的確確告訴了人們使用真空管既值得信賴又能實現電氣化的再編程;哈佛大學的Harvard Mark I;以及基於二進制的「埃尼阿克」(ENIAC,1944年),這是第一台通用意圖的計算機,但由於其結構設計不夠彈性化,導致對它的每一次再編程都意味著電氣物理線路的再連接。
開發埃尼愛克的小組針對其缺陷又進一步完善了設計,並最終呈現出今天我們所熟知的馮·諾伊曼結構(程序存儲體系結構)。這個體系是當今所有計算機的基礎。20世紀40年代中晚期,大批基於此一體系的計算機開始被研製,其中以英國最早。盡管第一台研製完成並投入運轉的是「小規模實驗機」(Small-Scale Experimental Machine,SSEM),但真正被開發出來的實用機很可能是EDSAC。
在整個20世紀50年代,真空管計算機居於統治地位。1958年 9月12日 在Robert Noyce(INTEL公司的創始人)的領導下,發明了集成電路。不久又推出了微處理器。1959年到1964年間設計的計算機一般被稱為第二代計算機。
到了60年代,晶體管計算機將其取而代之。晶體管體積更小,速度更快,價格更加低廉,性能更加可靠,這使得它們可以被商品化生產。1964年到1972年的計算機一般被稱為第三代計算機。大量使用集成電路,典型的機型是IBM360系列。
到了70年代,集成電路技術的引入極大地降低了計算機生產成本,計算機也從此開始走向千家萬戶。1972年以後的計算機習慣上被稱為第四代計算機。基於大規模集成電路,及後來的超大規模集成電路。1972年4月1日 INTEL推出8008微處理器。1976年Stephen Wozinak和Stephen Jobs創辦蘋果計算機公司。並推出其Apple I 計算機。1977年5月 Apple II 型計算機發布。1979年6月1日 INTEL發布了8位元的8088微處理器。
1982年,微電腦開始普及,大量進入學校和家庭。1982年1月Commodore 64計算機發布,價格:595美元。 1982 年2月80286發布。時鍾頻率提高到20MHz,並增加了保護模式,可訪問16M內存。支持1GB以上的虛擬內存。每秒執行270萬條指令,集成了134000個晶體管。
1990年11月: 第一代MPC (多媒體個人電腦標准)發布。處理器至少80286/12MHz,後來增加到80386SX/16 MHz ,及一個光碟機,至少150 KB/sec的傳輸率。1994年10月10日 Intel 發布75 MHz Pentium處理器。1995年11月1日Pentium Pro發布。主頻可達200 MHz ,每秒鍾完成4.4億條指令,集成了550萬個晶體管。1997年1月8日Intel發布Pentium MMX。對游戲和多媒體功能進行了增強。
此後計算機的變化日新月異,1965年發表的摩爾定律發表不斷被應證,預測在未來10~15年仍依然適用。
原理
個人電腦的主要結構:
顯示器
主板
CPU (中央處理器)
主要儲存器 (內存)
擴充卡
電源供應器
光碟機
次要儲存器 (硬碟)
鍵盤
滑鼠
盡管計算機技術自20世紀40年代第一台電子通用計算機誕生以來以來有了令人目眩的飛速發展,但是今天計算機仍然基本上採用的是存儲程序結構,即馮·諾伊曼結構。這個結構實現了實用化的通用計算機。
存儲程序結構間將一台計算機描述成四個主要部分:算術邏輯單元(ALU),控制電路,存儲器,以及輸入輸出設備(I/O)。這些部件通過一組一組的排線連接(特別地,當一組線被用於多種不同意圖的數據傳輸時又被稱為匯流排),並且由一個時鍾來驅動(當然某些其他事件也可能驅動控制電路)。
概念上講,一部計算機的存儲器可以被視為一組「細胞」單元。每一個「細胞」都有一個編號,稱為地址;又都可以存儲一個較小的定長信息。這個信息既可以是指令(告訴計算機去做什麼),也可以是數據(指令的處理對象)。原則上,每一個「細胞」都是可以存儲二者之任一的。
算術邏輯單元(ALU)可以被稱作計算機的大腦。它可以做兩類運算:第一類是算術運算,比如對兩個數字進行加減法。算術運算部件的功能在ALU中是十分有限的,事實上,一些ALU根本不支持電路級的乘法和除法運算(由是使用者只能通過編程進行乘除法運算)。第二類是比較運算,即給定兩個數,ALU對其進行比較以確定哪個更大一些。
輸入輸出系統是計算機從外部世界接收信息和向外部世界反饋運算結果的手段。對於一台標準的個人電腦,輸入設備主要有鍵盤和滑鼠,輸出設備則是顯示器,列印機以及其他許多後文將要討論的可連接到計算機上的I/O設備。
控制系統將以上計算機各部分聯系起來。它的功能是從存儲器和輸入輸出設備中讀取指令和數據,對指令進行解碼,並向ALU交付符合指令要求的正確輸入,告知ALU對這些數據做哪些運算並將結果數據返回到何處。控制系統中一個重要組件就是一個用來保持跟蹤當前指令所在地址的計數器。通常這個計數器隨著指令的執行而累加,但有時如果指令指示進行跳轉則不依此規則。
20世紀80年代以來ALU和控制單元(二者合成中央處理器,CPU)逐漸被整合到一塊集成電路上,稱作微處理器。這類計算機的工作模式十分直觀:在一個時鍾周期內,計算機先從存儲器中獲取指令和數據,然後執行指令,存儲數據,再獲取下一條指令。這個過程被反復執行,直至得到一個終止指令。
由控制器解釋,運算器執行的指令集是一個精心定義的數目十分有限的簡單指令集合。一般可以分為四類:1)、數據移動(如:將一個數值從存儲單元A拷貝到存儲單元B)2)、數邏運算(如:計算存儲單元A與存儲單元B之和,結果返回存儲單元C)3)、條件驗證(如:如果存儲單元A內數值為100,則下一條指令地址為存儲單元F)4)、指令序列改易(如:下一條指令地址為存儲單元F)
指令如同數據一樣在計算機內部是以二進制來表示的。比如說,10110000就是一條Intel x86系列微處理器的拷貝指令代碼。某一個計算機所支持的指令集就是該計算機的機器語言。因此,使用流行的機器語言將會使既成軟體在一台新計算機上運行得更加容易。所以對於那些機型商業化軟體開發的人來說,它們通常只會關注一種或幾種不同的機器語言。
更加強大的小型計算機,大型計算機和伺服器可能會與上述計算機有所不同。它們通常將任務分擔給不同的CPU來執行。今天,微處理器和多核個人電腦也在朝這個方向發展。
超級計算機通常有著與基本的存儲程序計算機顯著區別的體系結構。它們通常有著數以千計的CPU,不過這些設計似乎只對特定任務有用。在各種計算機中,還有一些微控制器採用令程序和數據分離的哈佛架構(Harvard architecture)。
計算機的數字電路實現
以上所說的這些概念性設計的物理實現是多種多樣的。如同我們前述所及,一台存儲程序式計算機既可以是巴比奇的機械式的,也可以是基於數字電子的。但是,數字電路可以通過諸如繼電器之類的電子控制開關來實現使用2進制數的算術和邏輯運算。香農的論文正是向我們展示了如何排列繼電器來組成能夠實現簡單布爾運算的邏輯門。其他一些學者很快指出使用真空管可以代替繼電器電路。真空管最初被用作無線電電路中的放大器,之後便開始被越來越多地用作數字電子電路中的快速開關。當電子管的一個針腳被通電後,電流就可以在另外兩端間自由通過。
通過邏輯門的排列組合我們可以設計完成很多復雜的任務。舉例而言,加法器就是其中之一。該器件在電子領域實現了兩個數相加並將結果保存下來—在計算機科學中這樣一個通過一組運算來實現某個特定意圖的方法被稱做一個演算法。最終,人們通過數量可觀的邏輯門電路組裝成功了完整的ALU和控制器。說它數量可觀,只需看一下CSIRAC這台可能是最小的實用化電子管計算機。該機含有2000個電子管,其中還有不少是雙用器件,也即是說總計合有2000到4000個邏輯器件。
真空管對於製造規模龐大的門電路明顯力不從心。昂貴,不穩(尤其是數量多時),臃腫,能耗高,並且速度也不夠快—盡管遠超機械開關電路。這一切導致20世紀60年代它們被晶體管取代。後者體積更小,易於操作,可靠性高,更省能耗,同時成本也更低。
集成電路是現今電子計算機的基礎20世紀60年代後,晶體管開始逐漸為將大量晶體管、其他各種電器元件和連接導線安置在一片硅板上的集成電路所取代。70年代,ALU和控制器作為組成CPU的兩大部分,開始被集成到一塊晶元上,並稱為「微處理器」。沿著集成電路的發展史,可以看到一片晶元上所集成器件的數量有了飛速增長。第一塊集成電路只不過包含幾十個部件,而到了2006年,一塊Intel Core Duo處理器上的晶體管數目高達一億五千一百萬之巨。
無論是電子管,晶體管還是集成電路,它們都可以通過使用一種觸發器設計機制來用作存儲程序體系結構中的「存儲」部件。而事實上觸發器的確被用作小規模的超高速存儲。但是,幾乎沒有任何計算機設計使用觸發器來進行大規模數據存儲。最早的計算機是使用Williams電子管向一個電視屏或若干條水銀延遲線(聲波通過這種線時的走行速度極為緩慢足夠被認為是「存儲」在了上面)發射電子束然後再來讀取的方式來存儲數據的。當然,這些盡管有效卻不怎麼優雅的方法最終還是被磁性存儲取而代之。比如說磁芯存儲器,代表信息的電流可在其中的鐵質材料內製造恆久的弱磁場,當這個磁場再被讀出時就實現了數據恢復。動態隨機存儲器(DRAM)亦被發明出來。它是一個包含大量電容的集成電路,而這些電容器件正是負責存儲數據電荷—電荷的強度則被定義為數據的值。
輸入輸出設備
輸入輸出設備(I/O)是對將外部世界信息發送給計算機的設備和將處理結果返回給外部世界的設備的總稱。這些返回結果可能是作為使用者能夠視覺上體驗的,或是作為該計算機所控制的其他設備的輸入:對於一台機器人,控制計算機的輸出基本上就是這台機器人本身,如做出各種行為。
第一代計算機的輸入輸出設備種類非常有限。通常的輸入用設備是打孔卡片的讀卡機,用來將指令和數據導入內存;而用於存儲結果的輸出設備則一般是磁帶。隨著科技的進步,輸入輸出設備的豐富性得到提高。以個人計算機為例:鍵盤和滑鼠是用戶向計算機直接輸入信息的主要工具,而顯示器、列印機、擴音器、耳機則返回處理結果。此外還有許多輸入設備可以接受其他不同種類的信息,如數碼相機可以輸入圖像。在輸入輸出設備中,有兩類很值得注意:第一類是二級存儲設備,如硬碟,光碟或其他速度緩慢但擁有很高容量的設備。第二個是計算機網路訪問設備,通過他們而實現的計算機間直接數據傳送極大地提升了計算機的價值。今天,國際互聯網成就了數以千萬計的計算機彼此間傳送各種類型的數據。
程序
簡單說,計算機程序就是計算機執行指令的一個序列。它既可以只是幾條執行某個簡單任務的指令,也可能是可能要操作巨大數據量的復雜指令隊列。許多計算機程序包含有百萬計的指令,而其中很多指令可能被反復執行。在2005年,一台典型的個人電腦可以每秒執行大約30億條指令。計算機通常並不會執行一些很復雜的指令來獲得額外的機能,更多地它們是在按照程序員的排列來運行那些較簡單但為數眾多的短指令。
一般情況下,程序員們是不會直接用機器語言來為計算機寫入指令的。那麼做的結果只能是費時費力、效率低下而且漏洞百出。所以,程序員一般通過「高級」一些的語言來寫程序,然後再由某些特別的計算機程序,如解釋器或編譯器將之翻譯成機器語言。一些編程語言看起來很接近機器語言,如匯編程序,被認為是低級語言。而另一些語言,如即如抽象原則的Prolog,則完全無視計算機實際運行的操作細節,可謂是高級語言。對於一項特定任務,應該根據其事務特點,程序員技能,可用工具和客戶需求來選擇相應的語言,其中又以客戶需求最為重要(美國和中國軍隊的工程項目通常被要求使用Ada語言)。
計算機軟體是與計算機程序並不相等的另一個詞彙。計算機軟體一個較為包容性較強的技術術語,它包含了用於完成任務的各種程序以及所有相關材料。舉例說,一個視頻游戲不但只包含程序本身,也包括圖片、聲音以及其他創造虛擬游戲環境的數據內容。在零售市場,在一台計算機上的某個應用程序只是一個面向大量用戶的軟體的一個副本。這里老生常談的例子當然還是微軟的office軟體組,它包括一些列互相關聯的、面向一般辦公需求的程序。
利用那些極其簡單的機器語言指令來實現無數功能強大的應用軟體意味著其編程規模註定不小。Windows XP這個操作系統程序包含的C++高級語言源代碼達到了4000萬行。當然這還不是最大的。如此龐大的軟體規模也顯示了管理在開發過程中的重要性。實際編程時,程序會被細分到每一個程序員都可以在一個可接受的時長內完成的規模。
即便如此,軟體開發的過程仍然進程緩慢,不可預見且遺漏多多。應運而生的軟體工程學就重點面向如何加快作業進度和提高效率與質量。
庫與操作系統
在計算機誕生後不久,人們發現某些特定作業在許多不同的程序中都要被實施,比如說計算某些標准數學函數。出於效率考量,這些程序的標准版本就被收集到一個「庫」中以供各程序調用。許多任務經常要去額外處理種類繁多的輸入輸出介面,這時,用於連接的庫就能派上用場。
20世紀60年代,隨著計算機工業化普及,計算機越來越多地被用作一個組織內不同作業的處理。很快,能夠自動安排作業時續和執行的特殊軟體出現了。這些既控制硬體又負責作業時序安排的軟體被稱為「操作系統」。一個早期操作系統的例子是IBM的OS/360。
在不斷地完善中,操作系統又引入了時間共享機制——並發。這使得多個不同用戶可以「同時」地使用機器執行他們自己的程序,看起來就像是每個人都有一台自己的計算機。為此,操作系統需要像每個用戶提供一台「虛擬機」來分離各個不同的程序。由於需要操作系統控制的設備也在不斷增加,其中之一便是硬碟。因之,操作系統又引入了文件管理和目錄管理(文件夾),大大簡化了這類永久儲存性設備的應用。此外,操作系統也負責安全控制,確保用戶只能訪問那些已獲得允許的文件。
當然,到目前為止操作系統發展歷程中最後一個重要步驟就是為程序提供標准圖形用戶界面(GUI)。盡管沒有什麼技術原因表明操作系統必須得提供這些界面,但操作系統供應商們總是希望並鼓勵那些運行在其系統上的軟體能夠在外觀和行為特徵上與操作系統保持一致或相似。
除了以上這些核心功能,操作系統還封裝了一系列其他常用工具。其中一些雖然對計算機管理並無重大意義,但是於用戶而言很是有用。比如,蘋果公司的Mac OS X就包含視頻剪輯應用程序。
一些用於更小規模的計算機的操作系統可能沒用如此眾多的功能。早期的微型計算機由於記憶體和處理能力有限而不會提供額外功能,而嵌入式計算機則使用特定化了的操作系統或者乾脆沒有,它們往往通過應用程序直接代理操作系統的某些功能。
應用
由電腦控制的機械在工業中十分常見
很多現代大量生產的玩具,如Furby,是不能沒有便宜的嵌入式處理器
起初,體積龐大而價格昂貴的數字計算機主要是用做執行科學計算,特別是軍用課題。如ENIAC最早就是被用作火炮彈道計算和設計氫彈時計算斷面中子密度的(如今許多超級計算機仍然在模擬核試驗方面發揮著巨大作用)。澳大利亞設計的首台存儲程序計算機CSIR Mk I型負責對水電工程中的集水地帶的降雨情形進行評估。還有一些被用於解密,比如英國的「巨像」可編程計算機。除去這些早年的科學或軍工應用,計算機在其他領域的推廣亦十分迅速。
從一開始,存儲程序計算機就與商業問題的解決息息相關。早在IBM的第一台商用計算機誕生之前,英國J. Lyons等就設計製造了LEO以進行資產管理或迎合其他商業用途。由於持續的體積與成本控制,計算機開始向更小型的組織內普及。加之20世紀70年代微處理器的發明,廉價計算機成為了現實。80年代,個人計算機全面流行,電子文檔寫作與印刷,計算預算和其他重復性的報表作業越來越多地開始依賴計算機。
隨著計算機便宜起來,創作性的藝術工作也開始使用它們。人們利用合成器,計算機圖形和動畫來創作和修改聲音,圖像,視頻。視頻游戲的產業化也說明了計算機在娛樂方面也開創了新的歷史。
計算機小型化以來,機械設備的控制也開始仰仗計算機的支持。其實,正是當年為了建造足夠小的嵌入式計算機來控制阿波羅宇宙飛船才刺激了集成電路技術的躍進。今天想要找一台不被計算機控制的有源機械設備要比找一台哪怕是部分計算機控制的設備要難得多。可能最著名的計算機控制設備要非機器人莫屬,這些機器有著或多或少人類的外表和並具備人類行為的某一子集。在批量生產中,工業機器人已是尋常之物。不過,完全的擬人機器人還只是停留在科幻小說或實驗室之中。
機器人技術實質上是人工智慧領域中的物理表達環節。所謂人工智慧是一個定義模糊的概念但是可以肯定的是這門學科試圖令計算機擁有目前它們還沒有但作為人類卻固有的能力。數年以來,不斷有許多新方法被開發出來以允許計算機做那些之前被認為只有人才能做的事情。比如讀書、下棋。然而,到目前為止,在研製具有人類的一般「整體性」智能的計算機方面,進展仍十分緩慢。
網路、國際互聯網
20世紀50年代以來計算機開始用作協調來自不同地方之信息的工具,美國軍方的賢者系統(SAGE)就是這方面第一個大規模系統。之後「軍刀」等一系列特殊用途的商業系統也不斷涌現出來。