計算機發展歷程

計算機發展介紹

計算機硬件組成

計算機基本原理

 

計算機

計算機(computer)俗稱電腦,是一種用於高速計算的電子計算機器,可以進行數值計算,又可以進行邏輯計算,還具有存儲記憶功能。是能夠按照程序運行,自動、高速處理海量數據的現代化智能電子設備。由硬件系統和軟件系統所組成,沒有安裝任何軟件的計算機稱爲裸機。

計算機發明者約翰·馮·諾依曼。計算機是20世紀最先進的科學技術發明之一,對人類的生產活動和社會活動產生了極其重要的影響,並以強大的生命力飛速發展。它的應用領域從最初的軍事科研應用擴展到社會的各個領域,已形成了規模巨大的計算機產業,帶動了全球範圍的技術進步,由此引發了深刻的社會變革,計算機已遍及一般學校、企事業單位,進入尋常百姓家,成爲信息社會中必不可少的工具。

發展歷史

計算工具的演化經歷了由簡單到複雜、從低級到高級的不同階段,例

ENIAC計算機ENIAC計算機

如從“結繩記事”中的繩結到算籌、算盤計算尺、機械計算機等。它們在不同的歷史時期發揮了各自的歷史作用,同時也啓發了電子計算機的研製和設計思路。

1889年,美國科學家赫爾曼·何樂禮研製出以電力爲基礎的電動製表機,用以儲存計算資料。

1930年,美國科學家範內瓦·布什造出世界上首臺模擬電子計算機。

1946年2月14日,由美國軍方定製的世界上第一臺電子計算機“電子數字積分計算機”(ENIAC Electronic Numerical And Calculator)在美國賓夕法尼亞大學問世了。ENIAC(中文名:埃尼阿克)是美國奧伯丁武器試驗場爲了滿足計算彈道需要而研製成的,這臺計算器使用了17840支電子管,大小爲80英尺×8英尺,重達28t(噸),功耗爲170kW,其運算速度爲每秒5000次的加法運算,造價約爲487000美元。ENIAC的問世具有劃時代的意義,表明電子計算機時代的到來。在以後60多年裏,計算機技術以驚人的速度發展,沒有任何一門技術的性能價格比能在30年內增長6個數量級。

  • 第1代:電子管數字機(1946—1958年)

硬件方面,邏輯元件採用的是真空電子管,主存儲器採用汞延遲線

電子管數字計算機電子管數字計算機

陰極射線示波管靜電存儲器、磁鼓、磁芯;外存儲器採用的是磁帶。軟件方面採用的是機器語言、彙編語言。應用領域以軍事和科學計算爲主。

特點是體積大、功耗高、可靠性差。速度慢(一般爲每秒數千次至數萬次)、價格昂貴,但爲以後的計算機發展奠定了基礎。

  • 第2代:晶體管數字機(1958—1964年)

硬件方的操作系統、高級語言及其編譯程序。應用領域以科學計算和事務處理爲主,並開始進入工業控制領域。特點是體積縮小、能耗降低、可靠性提高、運算速度提高(一般爲每秒數10萬次,可高達300萬次)、性能比第1代計算機有很大的提高。

  • 第3代:集成電路數字機(1964—1970年)

硬件方面,邏輯元件採用中、小規模集成電路,主存儲器仍採用磁芯。軟件方面出現了分時操作系統以及結構化、規模化程序設計方法。特點是速度更快(一般爲每秒數百萬次至數千萬次),而且可靠性有了顯著提高,價格進一步下降,產品走向了通用化、系列化和標準化等。應用領域開始進入文字處理和圖形圖像處理領域。

硬件方面,邏輯元件採用大規模和超大規模集成電路(LSI和VLSI)。軟件方面出現了數據庫管理系統、網絡管理系統和面嚮對象語言等。特點是1971年世界上第一臺微處理器在美國硅谷誕生,開創了微型計算機的新時代。應用領域從科學計算、事務管理、過程控制逐步走向家庭。

由於集成技術的發展,半導體芯片的集成度更高,每塊芯片可容納數萬乃至數百萬個晶體管,並且可以把運算器和控制器都集中在一個芯片上、從而出現了微處理器,並且可以用微處理器和大規模、超大規模集成電路組裝成微型計算機,就是我們常說的微電腦或PC機。微型計算機體積小,價格便宜,使用方便,但它的功能和運算速度已經達到甚至超過了過去的大型計算機。另一方面,利用大規模、超大規模集成電路製造的各種邏輯芯片,已經制成了體積並不很大,但運算速度可達一億甚至幾十億次的巨型計算機。我國繼1983年研製成功每秒運算一億次的銀河Ⅰ這型巨型機以後,又於1993年研製成功每秒運算十億次的銀河Ⅱ型通用並行巨型計算機。這一時期還產生了新一代的程序設計語言以及數據庫管理系統和網絡軟件等。

隨着物理元、器件的變化,不僅計算機主機經歷了更新換代,它的外部設備也在不斷地變革。比如外存儲器,由最初的陰極射線顯示管發展到磁芯磁鼓,以後又發展爲通用的磁盤,現又出現了體積更小、容量更大、速度更快的只讀光盤(CD—ROM)。

時代

時期

時間

典型計算機

描述

第一代計算機
  (電子管)

1946年
  2月16日

ENIAC

美國賓夕法尼亞大學研製的人類歷史上真正意義的第一臺電子計算機,佔地170平方米,耗電150千瓦,造價48萬美元,每秒可執行5000次加法或400次乘法運算。共使用了18000個電子管。

1950年

EDVAC

第一臺並行計算機,實現了計算機之父“馮.諾伊曼”的兩個設想:採用二進制和存儲程序。

第二代計算機
  (晶體管)

1954年

TRADIC

IBM公司製造的第一臺使用晶體管的計算機,增加了浮點運算,使計算能力有了很大提高

1958年

IBM 1401

這是第二代計算機中的代表,用戶當時可以租用。

第三代

集成電路計算機時代(從60年代中期到70年代前期),計算機採用集成電路作爲基本器件,功耗、體積、價格進一步下降,速度和可靠性相應的提高。代表機型IBM公司的IBM360.

 

時期

時間

典型計算機

描述

第四代計算機(大規模和超大規模集成電路)

1970年

IBM S/370

這是IBM的更新換代的重要產品,採用了大規模集成電路代替磁芯存儲,小規模集成電路作爲邏輯元件,並使用虛擬存儲器技術,將硬件和軟件分離開來,從而明確了軟件的價值。

1975年4月

Altair 8800

MITS製造的,帶有1KB存儲器。這是世界上第一臺微型計算機。

1977年4月

Apple II

NMOS6500 1MHz CPU,4KB RAM 16KB ROM,這是計算機史上第一個帶有彩色圖形的個人計算機

1981年8月12日

IBM PC

採用了主頻爲4.77MHz的Intel 8088CPU,內存64KB,160KB軟驅,操作系統是Microsoft提供的MS-DOS

1983年1月19日

APPLE LISA

第一臺使用了鼠標的電腦,第一臺使用圖形用戶界面的電腦。

1983年3月8日

IBM PC/XT

採用INTEL8088 4.77MHz的CPU,256K RAM和40K ROM,10MB的硬盤,兩部360KB軟驅。

1984年8月

IBM PC/AT

採用Intel 80286 6MHzCPU, 512KB內存,20MB硬盤和1.2M軟驅。

1986年9月

Compaq Desktop PC

採用了Intel 80386 16MHz CPU,640KB內存,20MB硬盤,1.2M軟驅,是計算機史上第一臺386計算機。


  

1989年4月

DELL 80486

採用Intel 80486DX CPU 640KB內存, 20MB硬盤,1.2M軟驅。

1996年


  

基本配置是奔騰或者奔騰MMX 的CPU,32M EDO或者SDRAM內存,2.1G硬盤,14寸球面顯示器爲標準配置。

1997年


  

基本配置開始向賽揚處理器過渡,部分高檔的機器開始使用PentiumII CPU,同時內存也由早期的EDO過渡到SDRAM,4.3G左右的硬盤開始成爲標準配置。

1998年


  

帶有128K二級高速緩存的賽揚處理器成爲廣大裝機者的最愛,同時64M內存和15寸顯示器開始成爲標準配置。

1999年


  

部分品牌廠商開始將PentiumIII CPU作爲電腦的一個賣點,64M內存和6.4G硬盤開始成爲電腦的標準配置。

2000年


  

66M和100M外頻的賽揚處理器佔領了大部分品牌或兼容機的市場,128M內存,10G以上的硬盤開始成爲標準配置,17寸顯示器慢慢進入家庭。

2001年至今


  

Pentium 4 CPU和Pentium 4賽揚CPU開始成爲電腦的標準配置,內存由SDRAM實現了向DDR的過渡,同時17寸CRT顯示器或者15寸液晶顯示器開始成爲用戶的首選,硬盤逐漸向40G以上的容量發展。


  

蘋果 iMac G5(M9248CH/A)

處理器類型PowerPC G5配置,主頻1600MHz以上,內存容量256MB,硬盤容量80GB,顯示器類型17”液晶。這是蘋果電腦的創新,將主機的部件全部集成到顯示器內部。顯示器就是一臺電腦。

 

 

機器組成

計算機是由硬件系統(hardware system)和軟件系統(software system)兩部分組成的。

傳統電腦系統的硬體單元一般可分爲輸入單元、輸出單元、算術邏輯單元控制單元記憶單元,其中算術邏輯單元和控制單元合稱中央處理單元(Center Processing Unit,CPU)。[1] 

硬件系統

  • 電源

電源是電腦中不可缺少的供電設備,它的作用是將220V交流電轉換爲電腦中使用的5V、12V、3.3V直流電,其性能的好壞,直接影響到其他設備工作的穩定性,進而會影響整機的穩定性。手提電腦在自帶鋰電池情況下,爲手提電腦提供有效電源。

  • 主板

主板是電腦中各個部件工作的一個平臺,它把電腦的各個部件緊密連接在一起,各個部件通過主板進行數據傳輸。也就是說,電腦中重要的“交通樞紐”都在主板上,它工作的穩定性影響着整機工作的穩定性。

CPU即中央處理器,是一臺計算機的運算核心和控制核心。其功能主要是解釋計算機指令以及處理計算機軟件中的數據。CPU由運算器、控制器、寄存器、高速緩存及實現它們之間聯繫的數據、控制及狀態的總線構成。作爲整個系統的核心,CPU也是整個系統最高的執行單元,因此CPU已成爲決定電腦性能的核心部件,很多用戶都以它爲標準來判斷電腦的檔次。

  • 內存

內存又叫內部存儲器或者是隨機存儲器(RAM),分爲DDR內存和SDRAM內存,(但是SDRAM由於容量低,存儲速度慢,穩定性差,已經被DDR淘汰了)內存屬於電子式存儲設備,它由電路板和芯片組成,特點是體積小,速度快,有電可存,無電清空,即電腦在開機狀態時內存中可存儲數據,關機後將自動清空其中的所有數據。 內存有DDR、DDR II、DDR III三大類,容量1-64GB。

  • 硬盤

硬盤屬於外部存儲器,機械硬盤由金屬磁片製成,而磁片有記憶功能,所以儲到磁片上的數據,不論在開機,還是關機,都不會丟失。硬盤容量很大,已達TB級,尺寸有3.5、2.5、1.8、1.0英寸等,接口有IDE、SATA、SCSI等,SATA最普遍。移動硬盤是以硬盤爲存儲介質,強調便攜性的存儲產品。市場上絕大多數的移動硬盤都是以標準硬盤爲基礎的,而只有很少部分的是以微型硬盤(1.8英寸硬盤等)爲基礎,但價格因素決定着主流移動硬盤還是以標準筆記本硬盤爲基礎。因爲採用硬盤爲存儲介質,因此移動硬盤在數據的讀寫模式與標準IDE硬盤是相同的。移動硬盤多采用USB、IEEE1394等傳輸速度較快的接口,可以較高的速度與系統進行數據傳輸。固態硬盤用固態電子存儲芯片陣列而製成的硬盤,由控制單元和存儲單元(FLASH芯片)組成。固態硬盤在產品外形和尺寸上也完全與普通硬盤一致但是固態硬盤比機械硬盤速度更快。

  • 聲卡

聲卡是組成多媒體電腦必不可少的一個硬件設備,其作用是當發出播放命令後,聲卡將電腦中的聲音數字信號轉換成模擬信號送到音箱上發出聲音。

  • 顯卡

顯卡在工作時與顯示器配合輸出圖形、文字,作用是將計算機系統所需要的顯示信息進行轉換驅動,並向顯示器提供行掃描信號,控制顯示器的正確顯示,是連接顯示器和個人電腦主板的重要元件,是“人機對話”的重要設備之一。

  • 網卡

網卡是工作在數據鏈路層的網路組件,是局域網中連接計算機和傳輸介質的接口,不僅能實現與局域網傳輸介質之間的物理連接和電信號匹配,還涉及幀的發送與接收、幀的封裝與拆封、介質訪問控制、數據的編碼與解碼以及數據緩存的功能等。網卡的作用是充當電腦與網線之間的橋樑,它是用來建立局域網並連接到Internet的重要設備之一。

在整合型主板中常把聲卡、顯卡、網卡部分或全部集成在主板上。

英文名爲“Modem”,俗稱“貓”,即調制解調器,類型

調制解調器調制解調器

有內置式和外置式,有線式和無線式。調制解調器是通過電話線上網時必不可少的設備之一。它的作用是將電腦上處理的數字信號轉換成電話線傳輸的模擬信號。隨着ADSL寬帶網的普及,內置式調制解調器逐漸退出了市場。

  • 光驅

光驅光驅

英文名爲“Optical Disk driver”,電腦用來讀寫光碟內容的機器,也是在臺式機和筆記本便攜式電腦裏比較常見的一個部件。隨着多媒體的應用越來越廣泛,使得光驅在計算機諸多配件中已經成爲標準配置。光驅可分爲CD-ROM驅動器、DVD光驅(DVD-ROM)、康寶(COMBO)和DVD刻錄機(DVD-RAM)等。讀寫的能力和速度也日益提升,4× 16× 32× 40× 48×。

 

 

演變

早期的計算機

我們先從最早的計算機講起,人們在最初設計計算機時採用這樣一個模型:

人們通過輸入設備把需要處理的信息輸入計算機,計算機通過中央處理器信息加工後,再通過輸出設備把處理後的結果告訴人們。

其實這個模型很簡單,舉個簡單的例子,你要處理的信息是1+1,你把這個信息輸入到計算機中後,計算機的內部進行處理,再把處理後的結果告訴你。

早期計算機的輸入設備十分落後,根本沒有現在的鍵盤和鼠標,那時候計算機還是一個大傢伙,最早的計算機有兩層樓那麼高。人們只能通過扳動計算機龐大的面板上無數的開關來向計算機輸入信息,而計算機把這些信息處理之後,輸出設備也相當簡陋,就是計算機面板上無數的信號燈。所以那時的計算機根本無法處理像現在這樣各種各樣的信息,它實際上只能進行數字運算。

當時人們使用計算機也真是夠累的。但在當時,就算是這種計算機也是極爲先進的了,因爲它把人們從繁重的手工計算中解脫出來,而且極大地提高了計算速度。

有內部存儲器

隨着人們對計算機的使用,人們發現上述模型的計算機能力有限,在處理大量數據時就越發顯得力不從心。爲此人們對計算機模型進行了改進,提出了這種模型:

就是在中央處理器旁邊加了一個內部存儲器。這個模型的好處在於。先打個比方說,如果老師讓你心算一道簡單題,你肯定毫不費勁就算出來了,可是如果老師讓你算20個三位數相乘,你心算起來肯定很費力,但如果給你一張草稿紙的話,你也能很快算出來。

可能你會問這和計算機有什麼關係?其實計算機也是一樣,一個沒有內部存儲器的計算機如果讓它進行一個很複雜的計算,它可能根本就沒有辦法算出來,因爲它的存儲能力有限,無法記住很多的中間的結果,但如果給它一些內部存儲器當“草稿紙”的話,計算機就可以把一些中間結果臨時存儲到內部存儲器上,然後在需要的時候再把它取出來,進行下一步的運算,如此往復,計算機就可以完成很多很複雜的計算。

紙帶機

隨着時代的發展,人們越來越感到計算機輸入和輸出方式的落後,改進這兩方面勢在必行。在輸入方面,爲了不再每次扳動成百上千的開頭,人們發明了紙帶機。紙帶機的工作原理是這樣的,紙帶的每一行都標明瞭26個字母、10個數字和一些運算符號,如果這行的字母A上面打了一個孔,說明這裏要輸入的是字母A,同理,下面的行由此類推。這樣一個長長的紙帶就可以代表很多的信息,人們把這個紙帶放入紙帶機,紙帶機還要把紙帶上的信息翻譯給計算機,因爲計算機是看不懂這個紙帶的。

這樣雖然比較麻煩,但這個進步確實在很大程度上促進了計算機的發展。在發明紙帶的同時,人們也對輸出系統進行了改進,用打印機代替了計算機面板上無數的信號燈。打印機的作用正好和紙帶機相反,它負責把計算機輸出的信息翻譯成人能看懂的語言,打印在紙上,這樣人們就能很方便地看到輸出的信息,再也不用看那成百上千的信號燈了。

有鍵盤和顯示器

不過人們沒有滿足,他們繼續對輸入和輸出系統進行改進。後來人們發明了鍵盤和顯示器。這兩項發明使得當時的計算機和我們現在使用的計算機有些類似了,而且在此之前經過長時間的改進,計算機的體積也大大地縮小了。鍵盤和顯示器的好處在於人們可以直接向計算機輸入信息,而計算機也可以及時把處理結果顯示在屏幕上。

有外部存儲器

可是隨着人們的使用,逐漸又發現了不如意之處。因爲人們要向計算機輸入的信息越來越多,往往要輸入很長時間後,才讓計算機開始處理,而在輸入過程中,如果停電,那前面輸入的內容就白費了,等來電後,還要全部重新輸入。就算不停電,如果人們上次輸入了一部分信息,計算機處理完了,也輸出了結果;人們下一次再需要計算機處理這部分信息的時候,還要重新輸入。對這種重複勞動的厭倦導致了計算機新的模型的產生。

這回的模型是這樣的:

這回增加了一個外部存儲器。外部存儲器的“外部”是相對於內部存儲器來說的,在中央處理器處理信息時,它並不直接和外部存儲器打交道,處理過程中的信息都臨時存放在內部存儲器中,在信息處理結束後,處理的結果也存放在內部存儲器中。可是如果這時突然停電,那些結果還會丟失的。內部存儲器(或簡稱內存)中的信息是靠電力來維持的,一旦電力消失,內存中的數據就會全部消失。也正因爲如此,人們纔在計算機模型中加入了外部存儲器,把內存中的處理結果再存儲到外部存儲器中,這樣停電後數據也不會丟失了。

外部存儲器與內存的區別在於:它們的存儲機制是不一樣的,外部存儲器是把數據存儲到磁性介質上,所以不依賴於是否有電。這個磁性介質就好比家裏的歌曲磁帶,磁帶上的歌曲不管有沒有電都是存在的。當時人們也是考慮到了磁帶這種好處,所以在計算機的外部存儲器中也採用了類似磁帶的裝置,比較常用的一種叫磁盤。

磁盤本來是圓的,不過裝在一個方的盒子裏,這樣做的目的是爲了防止磁盤表面劃傷,導致數據丟失。

有了磁盤之後,人們使用計算機就方便多了,不但可以把數據處理結果存放在磁盤中,還可以把很多輸入到計算機中的數據存儲到磁盤中,這樣這些數據可以反覆使用,避免了重複勞動。

有文件系統

可是不久之後,人們又發現了另一個問題,人們要存儲到磁盤上的內容越來越多,衆多的信息存儲在一起,很不方便。這樣就導致了文件的產生。

這和我們日常生活中的文件有些相似。我們日常生活中的文件是由一些相關信息組成,計算機的文件也是一樣。人們把信息分類整理成文件存儲到磁盤上,這樣,磁盤上就有了文件1、文件2……。

有操作系統

可是在使用過程中,人們又漸漸發現,由人工來管理越來越多的文件是一件很痛苦的事情。爲了解決這個問題,人們就開發了一種軟件叫操作系統。

其實操作系統就是替我們管理計算機的一種軟件,在操作系統出現之前,只有專業人士才懂得怎樣使用計算機,而在操作系統出現之後,不管你是否是計算機專業畢業,只要經過簡單的培訓,你都能很容易地掌握計算機。

有了操作系統之後,我們就不直接和計算機的硬件打交道,不直接對這些硬件發號施令,我們把要的事情告訴操作系統,操作系統再把要作的事情安排給計算機去做,等計算機做完之後,操作系統再把結果告訴我們,這樣就省事多了。

在操作系統出現之前,人們通過鍵盤給計算機下達的命令都是特別專業的術語,而有了操作系統之後,人們和計算機之間的對話就可以使用一些很容易懂的語言,而不用去死記硬背那些專業術語了。

操作系統不但能在計算機和人之間傳遞信息,而且還負責管理計算機的內部設備和外部設備。它替人們管理日益增多的文件,使人們能很方便地找到和使用這些文件;它替人們管理磁盤,隨時報告磁盤的使用情況;它替計算機管理內存,使計算機能更高效而安全地工作;它還負責管理各種外部設備,如打印機等,有了它的管理,這些外設就能有效地爲用戶服務了。

也正因爲操作系統這麼重要,所以人們也在不斷地改進它,使它的使用更加方面,功能更加強大。對於咱們現在使用的微機來說,操作系統主要經歷了DOS、Windows 3.X、Windows95和Windows98、windows2000、windows2003、windowsXP、windows vista、windows7和最新的windows8這幾個發展階段。

在DOS階段,人們和計算機打交道,還是主要靠輸入命令,“你輸入什麼命令,計算機就做什麼,如果你不輸入,計算機就什麼也不做”。在這一階段,人們還是需要記住很多命令和它們的用法,如果忘記了或不知道,那就沒有辦法了。所以說,這時的計算機還是不太好用,操作系統也處於發展的初級階段。Windows的出現在很大程度上彌補了這個不足,人們在使用Windows時,不必記住什麼命令,只需要用鼠標指指點點就能完成很多工作。

軟件系統

應用軟件

上面說的是硬件的工作原理,那麼在軟件上,我們又是如何使用計算機的呢?

在前面我們講過,我們可以通過操作系統給計算機佈置工作,操作系統也可以把計算機的工作結果告訴我們。可是操作系統的功能也不是無限的,實際上計算機的很多功能是靠多種應用軟件來實現的。操作系統一般只負責管理好計算機,使它能正常工作。而衆多的應用軟件才充分發揮了計算機的作用。但這些應用軟件都是建立在操作系統上的,一般情況下,某一種軟件都是爲特定的操作系統而設計的,因爲這些軟件不能直接和計算機交換信息,需要通過操作系統來傳遞信息。

硬件和軟件的結合

這就是所謂的“硬”、“軟”結合。硬件就是我們能看見的這些東西:主機、顯示器、鍵盤、鼠標等,而軟件是我們看不見的,存在於計算機內部的。打個比方,硬件就好比人類軀體,而軟件就好比人類的思想,沒有軀體,思想是無法存在的,但沒有思想的軀體也只是一個植物人。一個正常人要完成一項工作,都是軀體在思想的支配下完成的。電腦和這相類似,沒有主機等硬件,軟件是無法存在的;而一個沒有軟件的計算機也只是一堆廢鐵。

操作系統對文件的管理

還有一個重要的概念沒有講,就是操作系統是如何管理文件的呢?其實也很簡單,文件都有自己的名字,叫文件名,用來區分不同的文件的。計算機中的文件有很多,成千上萬,光用名字來區分也不利於查找,所以計算機中又有了文件夾的概念,把不同類型的文件存儲在不同的文件夾中,查找起來就快多了,也不會太亂。文件多了,可以分別存儲在不同的文件夾中,而當文件夾多了之後,再把一些相關的文件夾存儲在更大的文件夾中,這樣管理文件是比較科學的。

 

 

計算機分類

知道了計算機的基本組成與周邊裝置,也知道其實計算機的CPU種類非常的多,再來我們想要了解的是,計算機如何分類? 計算機的分類非常多種,如果以計算機的複雜度與運算能力進行分類的話,主要可以分爲這幾類:

  • 超級計算機(Supercomputer)
    超級計算機是運作速度最快的計算機,但是他的維護、操作費用也最高!主要是用於需要有高速計算的計畫中。 例如:國防軍事、氣象預測、太空科技,用在模擬的領域較多。詳情也可以參考: 國家高速網絡與計算中心http://www.nchc.org.tw的介紹! 至於全世界最快速的前500大超級計算機,則請參考:http://www.top500.org
     
  • 大型計算機(Mainframe Computer)
    大型計算機通常也具有數個高速的CPU,功能上雖不及超級計算機,但也可用來處理大量數據與複雜的運算。 例如大型企業的主機、全國性的證券交易所等每天需要處理數百萬筆數據的企業機構, 或者是大型企業的數據庫服務器等等。
     
  • 迷你計算機(Minicomputer)
    迷你計算機仍保有大型計算機同時支持多使用者的特性,但是主機可以放在一般作業場所, 不必像前兩個大型計算機需要特殊的空調場所。通常用來作爲科學研究、工程分析與工廠的流程管理等。
     
  • 工作站(Workstation)
    工作站的價格又比迷你計算機便宜許多,是針對特殊用途而設計的計算機。在個人計算機的效能還沒有提升到目前的狀況之前, 工作站計算機的性能/價格比是所有計算機當中較佳的,因此在學術研究與工程分析方面相當常見。
     
  • 微計算機(Microcomputer)
    又可以稱爲個人計算機,也是我們這裏主要探討的目標!體積最小,價格最低,但功能還是五臟俱全的! 大致又可分爲桌上型、筆記型等等。

若光以效能來說,目前的個人計算機效能已經夠快了,甚至已經比工作站等級以上的計算機運算速度還要快! 但是工作站計算機強調的是穩定不當機,並且運算過程要完全正確,因此工作站以上等級的計算機在設計時的考量與個人計算機並不相同啦! 這也是爲啥工作站等級以上的個人計算機售價較貴的原因。


大標題的圖示計算機上面常用的計算單位 (容量、速度等)

計算機的運算能力是由速度來決定的,而存放在計算機儲存設備當中的數據容量也是有單位的。


  • 容量單位

計算機依有沒有通電來記錄信息,所以理論上它只認識 0 與 1 而已。0/1 的單位我們稱爲 bit。但 bit 實在太小了, 並且在儲存數據時每份簡單的數據都會使用到 8 個 bits 的大小來記錄,因此定義出 byte 這個單位,他們的關係爲:

1 Byte = 8 bits

不過同樣的,Byte 還是太小了,在較大的容量情況下,使用 byte 相當不容易判斷數據的大小,舉例來說,1000000 bytes 這樣的顯示方式你能夠看得出有幾個零嗎?所以後來就有一些常見的簡化單位表示法,例如 K 代表 1024,M 代表 1024K 等。 而這些單位在不同的進位制下有不同的數值表示,底下就列出常見的單位與進位制對應:

進位制 K M G T P
二進位 1024 1024K 1024M 1024G 1024T
十進位 1000 1000K 1000M 1000G 1000T

 

一般來說,檔案容量使用的是二進位的方式,所以 1 GBytes 的檔案大小實際上爲:1024x1024x1024 Bytes 這麼大! 速度單位則常使用十進位,例如 1GHz 就是 1000x1000x1000 Hz 的意思。
 


  • 速度單位

CPU的運算速度常使用 MHz 或者是 GHz 之類的單位,這個 Hz 其實就是秒分之一。而在網絡傳輸方面,由於網絡使用的是 bit 爲單位,因此網絡常使用的單位爲 Mbps 是 Mbits per second,亦即是每秒多少 Mbit。舉例來說,大家常聽到的 8M/1M ADSL 傳輸速度,如果轉成檔案容量的 byte 時,其實理論最大傳輸值爲:每秒 1Mbyte/ 每秒125Kbyte的上傳/下載容量喔!

例題:

假設你今天購買了500GB的硬盤一顆,但是格式化完畢後卻只剩下460GB左右的容量,這是什麼原因?

答:

因爲一般硬盤製造商會使用十進位的單位,所以500GByte代表爲500*1000*1000*1000Byte之意。 轉成檔案的容量單位時使用二進位(1024爲底),所以就成爲466GB左右的容量了。

硬盤廠商並非要騙人,只是因爲硬盤的最小物理量爲512Bytes,最小的組成單位爲磁區(sector), 通常硬盤容量的計算採用『多少個sector』,所以纔會使用十進位來處理的。相關的硬盤信息在這一章後面會提到的!

 

 

個人計算機架構與周邊設備

一般消費者常說的計算機通常指的就是x86的個人計算機架構,因此我們有必要來了解一下這個架構的各個組件。 事實上,Linux最早在發展的時候,就是依據個人計算機的架構來發展的,所以,真的得要了解一下呢! 另外,因爲兩大主流x86開發商(Intel, AMD)的CPU架構並不相容,而且設計理念也有所差異, 所以兩大主流CPU所需要的主機板芯片組設計也就不太相同。目前(2009)最新的主機板架構主要是這樣的:

Intel芯片架構
圖2.1.1、Intel芯片架構

就如同前一小節提到的,整個主機板上面最重要的就是芯片組了!而芯片組通常又分爲兩個橋接器來控制各組件的溝通, 分別是:(1)北橋:負責連結速度較快的CPU、主內存與顯示卡等組件;(2)南橋:負責連接速度較慢的周邊介面, 包括硬盤、USB、網絡卡等等。(芯片組的南北橋與三國的大小喬沒有關係 @_@)至於AMD的芯片組架構如下所示:

AMD芯片架構
圖2.1.2、AMD芯片架構

與Intel不同的地方在於主內存是直接與CPU溝通而不透過北橋!從前面的說明我們可以知道CPU的數據主要都是來自於主內存提供, 因此AMD爲了加速這兩者的溝通,所以將內存控制組件整合到CPU當中, 理論上這樣可以加速CPU與主內存的傳輸速度!這是兩種CPU在架構上面主要的差異點。

畢竟目前世界上x86的CPU主要供應商爲Intel,所以底下鳥哥將以Intel的主機板架構說明各組件! 我們以技嘉公司出的主機板,型號:Gigabyte GA-X48-DQ6作爲一個說明的範例,主機板各組件如下所示:

技嘉主機板各組件
圖2.1.3、技嘉主機板各組件(圖片爲各公司所有)

主要的組件爲:CPU、主內存、磁盤設備(IDE/SATA)、系統總線芯片組(南橋/北橋)、顯示卡介面(PCI-Express)與其他介面卡(PCI)。 底下的各項組件在講解時,請參考Intel芯片組架構與技嘉主機板各組件來印證喔!
 


大標題的圖示CPU

如同技嘉主機板示意圖上最上方的中央部分,那就是CPU插槽。 由於CPU負責大量運算,因此CPU通常是具有相當高發熱量的組件。所以如果你曾經拆開過主機板, 應該就會看到CPU上頭通常會安插一顆風扇來主動散熱的。

x86個人計算機的CPU主要供應商爲Intel與AMD,目前(2009)主流的CPU都是雙核以上的架構了! 原本的單核心CPU僅有一個運算單元,所謂的多核心則是在一顆CPU封裝當中嵌入了兩個以上的運算核心, 簡單的說,就是一個實體的CPU外殼中,含有兩個以上的CPU單元就是了。

不同的CPU型號大多具有不同的腳位(CPU上面的插腳),能夠搭配的主機板芯片組也不同, 所以當你想要將你的主機升級時,不能只考慮CPU,你還得要留意你的主機板上面所支持的CPU型號喔! 不然買了最新的CPU也不能夠安插在你的舊主機板上頭的!目前主流的CPU有Intel的Core 2 Duo與AMD的Athlon64 X2雙核CPU, 高階產品則有Intel的Core i7 與AMD的Phenom II 四核心CPU喔!

不同的CPU腳位
圖2.1.4、不同的CPU腳位

我們前面談到CPU內部含有微指令集,不同的微指令集會導致CPU工作效率的優劣。除了這點之外, CPU效能的比較還有什麼呢?那就是CPU的頻率了!什麼是頻率呢?簡單的說, 頻率就是CPU每秒鐘可以進行的工作次數。 所以頻率越高表示這顆CPU單位時間內可以作更多的事情。舉例來說,Intel的Core 2 Duo型號E8400的CPU頻率爲3.0GHz, 表示這顆CPU在一秒內可以進行3.0x109次工作,每次工作都可以進行少數的指令運作之意。

Tips:
注意,不同的CPU之間不能單純的以頻率來判斷運算效能喔!這是因爲每顆CPU的微指令集不相同,架構也不見得一樣, 每次頻率能夠進行的工作指令數也不同之故!所以,頻率目前僅能用來比較同款CPU的速度!
鳥哥的圖示


  • CPU的『外頻』與『倍頻』

我們可以看到圖2.1.1的芯片架構圖當中各個組件都是透過北橋與南橋所連接在一起。 但就像一羣人共同在處理一個連續作業一般,如果這一羣人裏面有個人的動作特別快或特別慢, 將導致前面或者是後面的人事情一堆處理不完!也就是說,這一羣人最好能夠速度一致較佳! 所以,CPU與外部各組件的速度理論上應該要一致纔好。但是因爲CPU需要較強大的運算能力, 因爲很多判斷與數學都是在CPU內處理的,因此CPU開發商就在CPU內再加上一個加速功能, 所以CPU有所謂的外頻與倍頻!

所謂的外頻指的是CPU與外部組件進行數據傳輸時的速度,倍頻則是 CPU 內部用來加速工作效能的一個倍數, 兩者相乘纔是CPU的頻率速度。我們以剛剛Intel Core 2 Duo E8400 CPU來說,他的頻率是3.0GHz, 而外頻是333MHz,因此倍頻就是9倍羅!(3.0G=333Mx9, 其中1G=1000M)

Tips:
很多計算機硬件玩家很喜歡玩『超頻』,所謂的超頻指的是: 將CPU的倍頻或者是外頻透過主機板的設定功能更改成較高頻率的一種方式。但因爲CPU的倍頻通常在出廠時已經被鎖定而無法修改, 因此較常被超頻的爲外頻。
舉例來說,像上述3.0GHz的CPU如果想要超頻, 可以將他的外頻333MHz調整成爲400MHz,但如此一來整個主機板的各個組件的運作頻率可能都會被增加成原本的1.333倍(4/3), 雖然CPU可能可以到達3.6GHz,但卻因爲頻率並非正常速度,故可能會造成當機等問題。
鳥哥的圖示


  • 32位與64位

前面談到CPU運算的數據都是由主內存提供的,主內存與CPU的溝通速度靠的是外部頻率, 那麼每次工作可以傳送的數據量有多大呢?那就是系統總線的功能了。一般主機板芯片組有分北橋與南橋, 北橋的系統總線稱爲系統系統總線,因爲是內存傳輸的主要通道,所以速度較快。 南橋就是所謂的輸入輸出(I/O)系統總線,主要在聯繫硬盤、USB、網絡卡等周邊設備。

目前北橋所支持的頻率可高達333/400/533/800/1066/1333/1600MHz等不同頻率,支持情況依芯片組功能而有不同。 北橋所支持的頻率我們稱爲前端系統總線速度(Front Side Bus, FSB), 而每次傳送的位數則是系統總線寬度。 那所謂的系統總線頻寬則是:『FSBx系統總線寬度』亦即每秒鐘可傳送的最大數據量。 目前常見的系統總線寬度有32/64位(bits)。

而如圖 2.1.1中的圖示,在該架構中前端系統總線最高速度可達1600MHz。 我們看到內存與北橋的頻寬爲12.8GBytes/s,亦即是1600MHz*64bits = 1600MHz*8Bytes = 12800MByes/s = 12.8GBytes/s

與系統總線寬度相似的,CPU每次能夠處理的數據量稱爲字長大小(word size), 字長大小依據CPU的設計而有32位與64位。我們現在所稱的計算機是32或64位主要是依據這個 CPU解析的字長大小而來的!早期的32位CPU中,因爲CPU每次能夠解析的數據量有限, 因此由主內存傳來的數據量就有所限制了。這也導致32位的CPU最多隻能支持最大到4GBytes的內存。

Tips:
字長大小與系統總線寬度是可以不同的!舉例來說,在Pentium Pro時代,該CPU是32位的處理器, 但當時的芯片組可以設計出64位的系統總線寬度。在這樣的架構下我們通常還是以CPU的字長大小來稱呼該架構。 個人計算機的64位CPU是到2003年由AMD Athlon64後纔出現的。
鳥哥的圖示


  • CPU等級

由於x86架構的CPU在Intel的Pentium系列(1993年)後就有不統一的腳位與設計,爲了將不同種類的CPU規範等級, 所以就有i386,i586,i686等名詞出現了。基本上,在Intel Pentium MMX與AMD K6年代的CPU稱爲i586等級, 而Intel Celeron與AMD Athlon(K7)年代之後的32位CPU就稱爲i686等級。 至於目前的64位CPU則統稱爲x86_64等級。

目前很多的程序都有對CPU做最佳化的設計,萬一哪天你發現一些程序是註明給686的CPU使用時, 就不要將他安裝在586以下等級的計算機中,否則可是會無法執行該軟件的! 不過,在686倒是可以安裝386的軟件喔!也就是說,這些東西具有向下相容的能力啦!


大標題的圖示內存

如同圖2.1.3、技嘉主機板示意圖中的右上方部分的那四根插槽,那就是主內存的插槽了。 主內存插槽中間通常有個突起物將整個插槽稍微切分成爲兩個不等長的距離, 這樣的設計可以讓使用者在安裝主內存時,不至於前後腳位安插錯誤,是一種防呆的設計喔。

前面提到CPU所使用的數據都是來自於主內存(main memory),不論是軟件程序還是數據,都必須要讀入主內存後CPU才能利用。 個人計算機的主內存主要組件爲動態隨機訪問內存(Dynamic Random Access Memory, DRAM), 隨機訪問內存只有在通電時才能記錄與使用,斷電後數據就消失了。因此我們也稱這種RAM爲揮發性內存。

DRAM根據技術的更新又分好幾代,而使用上較廣泛的有所謂的SDRAM與DDR SDRAM兩種。 這兩種內存的差別除了在於腳位與工作電壓上的不同之外,DDR是所謂的雙倍數據傳送速度(Double Data Rate), 他可以在一次工作週期中進行兩次數據的傳送,感覺上就好像是CPU的倍頻啦! 所以傳輸頻率方面比SDRAM還要好。新一代的PC大多使用DDR內存了。 下表列出SDRAM與DDR SDRAM的型號與頻率及頻寬之間的關係。

SDRAM/DDR 型號 數據寬度(bit) 外頻(MHz) 頻率速度 頻寬(頻率x寬度)
SDRAM PC100 64 100 100 800MBytes/sec
SDRAM PC133 64 133 133 1064MBytes/sec
DDR DDR266 64 133 266 2.1GBytes/sec
DDR DDR400 64 200 400 3.2GBytes/sec
DDR DDRII800 64 200 800 6.4GBytes/sec

DDR SDRAM又依據技術的發展,有DDR, DDRII, DDRIII等等,其中,DDRII 的頻率倍數則是 4 倍喔!

Tips:
主內存型號的挑選與CPU及芯片組有關,所以主機板、CPU與內存在購買的時候必須要考慮其相關性喔。 並不是任何主機板都可以安插DDR III的內存呢!
鳥哥的圖示

主內存除了頻率/頻寬與型號需要考慮之外,內存的容量也是很重要的喔! 因爲所有的數據都得要載入內存當中才能夠被CPU判讀,如果內存容量不夠大的話將會導致某些大容量數據無法被完整的載入, 此時已存在內存當中但暫時沒有被使用到的數據必須要先被釋放,使得可用內存容量大於該數據,那份新數據才能夠被載入呢! 所以,通常越大的內存代表越快速的系統,這是因爲系統不用常常釋放一些內存內部的數據。 以服務器來說,主內存的容量有時比CPU的速度還要來的重要的!
 


  • 雙通道設計

由於所有的數據都必須要存放在主內存,所以主內存的數據寬度當然是越大越好。 但傳統的系統總線寬度一般大約僅達64位,爲了要加大這個寬度,因此芯片組廠商就將兩個主內存彙整在一起, 如果一支內存可達64位,兩支內存就可以達到128位了,這就是雙通道的設計理念。

如上所述,要啓用雙通道的功能你必須要安插兩支(或四支)主內存,這兩支內存最好連型號都一模一樣比較好, 這是因爲啓動雙通道內存功能時,數據是同步寫入/讀出這一對主內存中,如此才能夠提升整體的頻寬啊! 所以當然除了容量大小要一致之外,型號也最好相同啦!

你有沒有發現圖 2.1.3、技嘉主機板示意圖上那四根內存插槽的顏色呢?是否分爲兩種顏色,且兩兩成對? 爲什麼要這樣設計?答出來了嗎?是啦!這種顏色的設計就是爲了雙通道來的!要啓動雙通道的功能時, 你必須要將兩根容量相同的主內存插在相同顏色的插槽當中喔!
 


  • CPU頻率與主內存的關係

理論上,CPU與主內存的外頻應該要相同纔好。不過,因爲技術方面的提升,因此這兩者的頻率速度不會相同, 但外頻則應該是一致的較佳。舉例來說,上面提到的Intel E8400 CPU外頻爲333MHz,則應該選用DDR II 667這個型號, 因爲該內存型號的外頻爲333MHz之故喔!
 


  • DRAM與SRAM

除了主內存之外,事實上整部個人計算機當中還有許許多多的內存存在喔!最爲我們所知的就是CPU內的第二層緩存內存。 我們現在知道CPU的數據都是由主內存提供,但主內存的數據畢竟得經由北橋送到CPU內。 如果某些很常用的程序或數據可以放置到CPU內部的話,那麼CPU數據的讀取就不需要透過北橋了! 對於效能來說不就可以大大的提升了?這就是第二層緩存的設計概念。第二層緩存與主內存及CPU的關係如下圖所示:

內存相關性
圖2.2.1、內存相關性

 

因爲第二層緩存(L2 cache)整合到CPU內部,因此這個L2內存的速度必須要CPU頻率相同。 使用DRAM是無法達到這個頻率速度的,此時就需要靜態隨機訪問內存(Static Random Access Memory, SRAM)的幫忙了。 SRAM在設計上使用的電晶體數量較多,價格較高,且不易做成大容量,不過由於其速度快, 因此整合到CPU內成爲緩存內存以加快數據的存取是個不錯的方式喔!新一代的CPU都有內建容量不等的L2緩存在CPU內部, 以加快CPU的運作效能。
 


  • 只讀內存(ROM)

主機板上面的組件是非常多的,而每個組件的參數又具有可調整性。舉例來說,CPU與內存的頻率是可調整的; 而主機板上面如果有內建的網絡卡或者是顯示卡時,該功能是否要啓動與該功能的各項參數, 是被記錄到主機板上頭的一個稱爲CMOS的芯片上,這個芯片需要藉著額外的電源來發揮記錄功能, 這也是爲什麼你的主機板上面會有一顆電池的緣故。

那CMOS內的數據如何讀取與更新呢?還記得你的計算機在開機的時候可以按下[Del]按鍵來進入一個名爲BIOS的畫面吧?BIOS(Basic Input Output System)是一套程序,這套程序是寫死到主機板上面的一個內存芯片中, 這個內存芯片在沒有通電時也能夠將數據記錄下來,那就是隻讀內存(Read Only Memory, ROM)。 ROM是一種非揮發性的內存。另外,BIOS對於個人計算機來說是非常重要的, 因爲他是系統在開機的時候首先會去讀取的一個小程序喔!

另外,固件(firmware)(注7)很多也是使用ROM來進行軟件的寫入的。 固件像軟件一樣也是一個被計算機所執行的程序,然而他是對於硬件內部而言更加重要的部分。例如BIOS就是一個固件, BIOS雖然對於我們日常操作計算機系統沒有什麼太大的關係,但是他卻控制著開機時各項硬件參數的取得! 所以我們會知道很多的硬件上頭都會有ROM來寫入固件這個軟件。

BIOS 對計算機系統來講是非常重要的,因爲他掌握了系統硬件的詳細信息與開機設備的選擇等等。但是計算機發展的速度太快了, 因此 BIOS 程序碼也可能需要作適度的修改才行,所以你纔會在很多主機板官網找到 BIOS 的更新程序啊!但是 BIOS 原本使用的是無法改寫的 ROM ,因此根本無法修正 BIOS 程序碼!爲此,現在的 BIOS 通常是寫入類似快閃內存 (flash) 或 EEPROM (注8) 中。(注9)


大標題的圖示顯示卡

顯示卡插槽如同圖 2.1.3、技嘉主機板示意圖所示,是在中央較長的插槽! 這張主機板中提供了兩個顯示卡插槽喔!

顯示卡又稱爲VGA(Video Graphics Array),他對於圖形影像的顯示扮演相當關鍵的角色。 一般對於圖形影像的顯示重點在於解析度與色彩深度,因爲每個圖像顯示的顏色會佔用掉內存, 因此顯示卡上面會有一個內存的容量,這個顯示卡內存容量將會影響到最終你的螢幕解析度與色彩深度的喔!

除了顯示卡內存之外,現在由於三度空間遊戲(3D game)與一些3D動畫的流行,因此顯示卡的『運算能力』越來越重要。 一些3D的運算早期是交給CPU去運作的,但是CPU並非完全針對這些3D來進行設計的,而且CPU平時已經非常忙碌了呢! 所以後來顯示卡廠商直接在顯示卡上面嵌入一個3D加速的芯片,這就是所謂的GPU稱謂的由來。

顯示卡主要也是透過北橋芯片與CPU、主內存等溝通。如前面提到的,對於圖形影像(尤其是3D遊戲)來說, 顯示卡也是需要高速運算的一個組件,所以數據的傳輸也是越快越好!因此顯示卡的規格由早期的PCI導向AGP, 近期AGP又被PCI-Express規格所取代了。如前面技嘉主機板圖示當中看到的就是PCI-Express的插槽。 這些插槽最大的差異就是在數據傳輸的頻寬了!如下所示:

規格 寬度 速度 頻寬
PCI 32 bits 33 MHz 133 MBytes/s
PCI 2.2 64 bits 66 MHz 533 MBytes/s
PCI-X 64 bits 133 MHz 1064 MBytes/s
AGP 4x 32 bits 66x4 MHz 1066 MBytes/s
AGP 8x 32 bits 66x8 MHz 2133 MBytes/s
PCIe x1 250 MBytes/s
PCIe x8 2 GBytes/s
PCIe x16 4 GBytes/s

 

比較特殊的是,PCIe(PCI-Express)使用的是類似管線的概念來處理,每條管線可以具有250MBytes/s的頻寬效能, 管線越大(最大可達x32)則總頻寬越高!目前顯示卡大多使用x16的PCIe規格,這個規格至少可以達到4GBytes/s的頻寬! 比起AGP是快很多的!此外,新的PCIe 2.0規格也已經推出了,這個規格又可將每個管線的效能提升一倍呢! 好可怕的傳輸量....

如果你的主機是用來打3D遊戲的,那麼顯示卡的選購是非常重要喔!如果你的主機是用來做爲網絡服務器的, 那麼簡單的入門級顯示卡對你的主機來說就非常夠用了!因爲網絡服務器很少用到3D與圖形影像功能。

例題:

假設你的桌面使用1024x768解析度,且使用全綵(每個像素佔用3bytes的容量),請問你的顯示卡至少需要多少內存才能使用這樣的彩度?

答:

因爲1024x768解析度中會有786432個像素,每個像素佔用3bytes,所以總共需要2.25MBytes以上才行! 但如果考慮螢幕的更新率(每秒鐘螢幕的更新次數),顯示卡的內存還是越大越好!


大標題的圖示硬盤與儲存設備

計算機總是需要記錄與讀取數據的,而這些數據當然不可能每次都由使用者經過鍵盤來打字!所以就需要有儲存設備咯。 計算機系統上面的儲存設備包括有:硬盤、軟盤、MO、CD、DVD、磁帶機、隨身碟(快閃內存)、還有新一代的藍光光驅等, 乃至於大型機器的區域網絡儲存設備(SAN, NAS)等等,都是可以用來儲存數據的。而其中最常見的應該就是硬盤了吧! 
 


  • 硬盤的物理組成

大家應該都看過硬盤吧!硬盤依據桌上型與筆記型計算機而有分爲3.5寸及2.5寸的大小。我們以3.5寸的桌上型計算機使用硬盤來說明。 在硬盤盒裏面其實是由許許多多的圓形磁碟盤、機械手臂、 磁碟讀取頭與主軸馬達所組成的,整個內部如同下圖所示:

硬盤物理構造
圖2.4.1、硬盤物理構造(圖片取自維基百科)

 

實際的數據都是寫在具有磁性物質的磁碟盤上頭,而讀寫主要是透過在機械手臂上的讀取頭(head)來達成。 實際運作時, 主軸馬達讓磁碟盤轉動,然後機械手臂可伸展讓讀取頭在磁碟盤上頭進行讀寫的動作。 另外,由於單一磁碟盤的容量有限,因此有的硬盤內部會有兩個以上的磁碟盤喔!


  • 磁碟盤上的數據

既然數據都是寫入磁碟盤上頭,那麼磁碟盤上頭的數據又是如何寫入的呢? 其實磁碟盤上頭的數據有點像下面的圖示所示:

磁碟盤上的數據格式
圖2.4.2、磁碟盤上的數據格式

 

整個磁碟盤上頭好像有多個同心圓繪製出的圓形圖,而由圓心以放射狀的方式分割出磁碟的最小儲存單位,那就是磁區(Sector), 在物理組成分面,每個磁區大小爲512Bytes,這個值是不會改變的。而磁區組成一個圓就成爲磁軌(track), 如果是在多碟的硬盤上面,在所有磁碟盤上面的同一個磁軌可以組成一個磁柱(Cylinder), 磁柱也是一般我們分割硬盤時的最小單位了!

在計算整個硬盤的儲存量時,簡單的計算公式就是:『header數量 * 每個header負責的磁柱數量 * 每個磁柱所含有的磁區數量 * 磁區的容量』,單位換算爲『header * cylinder/header * secter/cylinder * 512bytes/secter』,簡單的寫法如下: Head x Cylinder x Sector x 512 Bytes。 不過要注意的是,一般硬盤製造商在顯示硬盤的容量時,大多是以十進位來編號,因此市售的500GB硬盤, 理論上僅會有460GBytes左右的容量喔!
 


  • 傳輸介面

由於傳輸速度的需求提升,目前硬盤與主機系統的聯繫主要有幾種傳輸介面規格:

兩款硬盤介面(左邊爲IDE介面,右邊爲SATA介面)
圖2.4.3、兩款硬盤介面(左邊爲IDE介面,右邊爲SATA介面)

  • IDE介面:

    如同圖 2.1.3、技嘉主機板圖示右側的較寬的插槽所示,那就是IDE的介面插槽。 IDE介面插槽所使用的排線較寬,每條排線上面可以接兩個IDE裝置,由於可以接兩個裝置,那爲了判別兩個裝置的主/從架構, 因此這種磁碟機上面需要調整跳針(Jump)成爲Master或slave才行喔!這種介面的最高傳輸速度爲Ultra 133規格, 亦即每秒理論傳輸速度可達133MBytes。
     

    IDE 介面的排線 (圖示取自 Seagate 網站)
    圖2.4.4、IDE 介面的排線 (圖示取自 Seagate 網站)

  • SATA介面:

    如同技嘉主機板圖示右下方所示爲SATA硬盤的連接介面插槽。 我們可以看到該插槽要比IDE介面的小很多,每條SATA連接線僅能接一個SATA裝置。SATA介面除了速度較快之外, 由於其排線較細小所以有利於主機機殼內部的散熱與安裝!目前SATA已經發展到了第二代, 其速度由SATA-1的每秒150MBytes提升到SATA-2每秒300MBytes的傳輸速度喔, 也因此目前主流的個人計算機硬盤已經被SATA取代了。SATA的插槽示意圖如下所示:
     

    SATA 介面的排線 (圖示取自 Seagate 網站)
    圖2.4.5、SATA 介面的排線 (圖示取自 Seagate 網站)


    由於SATA一條排線僅接一顆硬盤,所以你不需要調整跳針。不過一張主機板上面SATA插槽的數量並不是固定的, 且每個插槽都有編號,在連接SATA硬盤與主機板的時候,還是需要留意一下。
     
  • SCSI介面:

    另一種常見於工作站等級以上的硬盤傳輸介面爲SCSI介面,這種介面的硬盤在控制器上含有一顆處理器, 所以除了運轉速度快之外,也比較不會耗費CPU資源喔!在個人計算機上面這種介面的硬盤不常見啦!

 


  • 選購與運轉須知

如果你想要增加一顆硬盤在你的主機裏頭時,除了需要考慮你的主機板可接受的插槽介面(IDE/SATA)之外, 還有什麼要注意的呢?

  • 容量
    通常首先要考量的就是容量的問題!目前(2009)主流市場硬盤容量已經到達320GB以上,甚至有的廠商已經生產高達 2TB 的產品呢!硬盤可能可以算是一種消耗品,要注意重要數據還是得常常備份出來喔!
     
  • 緩衝內存
    硬盤上頭含有一個緩衝內存,這個內存主要可以將硬盤內常使用的數據緩存起來,以加速系統的讀取效能。 通常這個緩衝內存越大越好,因爲緩衝內存的速度要比數據從硬盤盤中被找出來要快的多了! 目前主流的產品可達16MB左右的內存大小喔。
     
  • 轉速
    因爲硬盤主要是利用主軸馬達轉動磁碟盤來存取,因此轉速的快慢會影響到效能。 主流的桌上型計算機硬盤爲每分鐘7200轉,筆記型計算機則是5400轉。有的廠商也有推出高達10000轉的硬盤, 若有高效能的數據存取需求,可以考慮購買高轉速硬盤。
     
  • 運轉須知
    由於硬盤內部機械手臂上的磁頭與硬盤盤的接觸是很細微的空間, 如果有抖動或者是髒污在磁頭與硬盤盤之間就會造成數據的損毀或者是實體硬盤整個損毀~ 因此,正確的使用計算機的方式,應該是在計算機通電之後,就絕對不要移動主機,並免抖動到硬盤, 而導致整個硬盤數據發生問題啊!另外,也不要隨便將插頭拔掉就以爲是順利關機!因爲機械手臂必須要歸回原位, 所以使用操作系統的正常關機方式,才能夠有比較好的硬盤保養啊!因爲他會讓硬盤的機械手臂歸回原位啊!
Tips:
可能因爲環境的關係,計算機內部的風扇常常會卡灰塵而造成一些聲響。很多朋友只要聽到這種聲響都是二話不說的 『用力拍幾下機殼』就沒有聲音了~現在你知道了,這麼做的後果常常就是你的硬盤容易壞掉! 下次千萬不要再這樣做!
鳥哥的圖示

大標題的圖示PCI介面卡

PCI介面卡的插槽就如同圖2.1.3、技嘉主機板示意圖所示的左下方那個白色的插槽, 這種PCI插槽通常會提供多個給使用者,如果使用者有額外需要的功能卡, 就能夠安插在這種PCI介面插槽上。

我們在前面顯示卡的部分稍微談過PCI介面,事實上有相當多的組件是使用PCI介面作爲傳輸的, 例如網絡卡、音效卡、特殊功能卡等等。但由於PCI Express規格的發展,很多製造商都往PCIE介面開發硬件了。 不過還是有很多硬件使用PCI介面啦,例如大賣場上面常見的網絡卡就是一個。

目前在個人計算機上面常見到的網絡卡是一種稱爲乙太網絡(Ethernet)的規格,目前乙太網絡卡速度輕輕鬆鬆的就能到達10/100/1000 Mbits/second的速度,但同樣速度的乙太網絡卡所支持的標準可能不太一樣,因此造成的價差是非常大的。 如果想要在服務器主機上面安裝新的網絡卡時,得要特別注意標準的差異呢!

由於各組件的價格直直落,現在主機板上面通常已經整合了相當多的設備組件了! 常見整合到主機板的組件包括音效卡、網絡卡、USB控制卡、顯示卡、磁碟陣列卡等等。 你可以在主機板上面發現很多方形的芯片,那通常是一些個別的設備芯片喔。 由於主機板已經整合了很多常用的功能芯片,所以現在的主機板上面所安插的PCI介面卡就少很多了!


大標題的圖示主機板

主機板可以說是整部主機相當重要的一個部分,因爲上面我們所談到的所有組件都是安插在主機板上面的呢! 而主機板上面負責溝通各個組件的就是芯片組,如同圖2.1.1、Intel芯片組圖示所示, 圖中我們也可以發現芯片組一般分爲北橋與南橋喔!北橋負責CPU/RAM/VGA等的連接,南橋則負責PCI介面與速度較慢的I/O裝置。

由於芯片組負責所有設備的溝通,所以事實上芯片組(尤其是北橋)也是一個可能會散發出高熱量的組件。 因此在主機板上面常會發現一些外接的小風扇或者是散熱片在這組芯片上面。在本章所附的主機板圖示中, 技嘉使用較高散熱能力的熱導管技術,因此你可以發現圖中的南橋與北橋上面覆蓋著黃銅色的散熱片, 且連接著數根圓形導管,主要就是爲了要散熱的。
 


  • 芯片組功能

所有的芯片組幾乎都是參考CPU的能力去規劃的,而CPU能夠接受的主內存規格也不相同,因此在新購買或升級主機時,CPU、主機板、主內存與相關的周邊設備都需要同時考慮才行 !此外,每一種芯片組的功能可能都不太相同, 有的芯片組強調的是全功能,因此連顯示卡、音效、網絡等都整合了,在這樣的整合型芯片中, 你幾乎只要購買CPU、主機板、主內存再加上硬盤,就能夠組裝成一部主機了。不過整合型芯片的效能通常比較弱, 對於愛玩3D遊戲的玩家以及強調高效能運算的主機來說,就不是這麼適合了。

至於獨立型芯片組雖然可能具有較高的效能,不過你可能必須要額外負擔周邊設備的金錢呢! 例如顯示卡、網絡卡、音效卡等等。但獨立型芯片組也有一定程度的好處,那就是你可以隨時抽換周邊設備。
 


  • 設備I/O位址與IRQ中斷通道

主機板是負責各個計算機組件之間的溝通,但是計算機組件實在太多了,有輸出/輸入/不同的儲存裝置等等, 主機板芯片組怎麼知道如何負責溝通啊?這個時候就需要用到所謂的I/O位址與IRQ

I/O位址有點類似每個裝置的門牌號碼,每個裝置都有他自己的位址,一般來說,不能有兩個裝置使用同一個I/O位址, 否則系統就會不曉得該如何運作這兩個裝置了。而除了I/O位址之外,還有個IRQ中斷(Interrupt)這個咚咚。

如果I/O位址想成是各裝置的門牌號碼的話,那麼IRQ就可以想成是各個門牌連接到郵件中心(CPU)的專門路徑羅! 各裝置可以透過IRQ中斷通道來告知CPU該裝置的工作情況,以方便CPU進行工作分配的任務。 老式的主機板芯片組IRQ只有15個,如果你的周邊介面太多時可能就會不夠用, 這個時候你可以選擇將一些沒有用到的周邊介面關掉,以空出一些IRQ來給真正需要使用的介面喔! 當然,也有所謂的sharing IRQ的技術就是了!
 


  • CMOS與BIOS

前面內存的地方我們有提過CMOS與BIOS的功能,在這裏我們再來強調一下: CMOS主要的功能爲記錄主機板上面的重要參數, 包括系統時間、CPU電壓與頻率、各項設備的I/O位址與IRQ等,由於這些數據的記錄要花費電力,因此主機板上面纔有電池。 BIOS爲寫入到主機板上某一塊 flash 或 EEPROM 的程序,他可以在開機的時候執行,以載入CMOS當中的參數, 並嘗試呼叫儲存裝置中的開機程序,進一步進入操作系統當中。BIOS程序也可以修改CMOS中的數據, 每種主機板呼叫BIOS設定程序的按鍵都不同,一般桌上型計算機常見的是使用[del]按鍵進入BIOS設定畫面。
 


  • 連接周邊設備的介面

主機板與各項輸出/輸入設備的連結主要都是在主機機殼的後方,主要有:

  • PS/2介面:這是常見的鍵盤與鼠標的介面,不過漸漸有被USB介面取代的趨勢;
  • USB介面:目前相當流行的一個介面,支持隨插即用。 主流的USB版本爲USB 2.0,這個規格的速度可達480Mbps,相對之下的USB 1.1僅達12Mbps差異很大,購買周邊設備要注意啊! 不然copy一些數據到USB硬盤時,會吐血....
  • 聲音輸出、輸入與麥克風:這個是一些圓形的插孔, 而必須你的主機板上面有內建音效芯片時,纔會有這三個東西;
  • RJ-45網絡頭:如果有內建網絡芯片的話,那麼就會有這種接頭出現。 這種接頭有點類似電話接頭,不過內部有八蕊線喔!接上網絡線後在這個接頭上會有燈號亮起纔對!
  • 其他過時介面:包括早期的用來連結鼠標的九針序列埠(com1),以及連結印表機的25針並列埠(LPT1)等等。

我們以技嘉主機板的連結介面來看的話,主要有這些:

連接周邊介面
圖2.6.1、連接周邊介面


大標題的圖示電源供應器

除了上面這些組件之外,其實還有一個很重要的組件也要來談一談,那就是電源供應器(Power)。 在你的機殼內,有個大大的鐵盒子,上頭有很多電源線會跑出來,那就是電源供應器了。 我們的CPU/RAM/主機板/硬盤等等都需要用電,而近來的計算機組件耗電量越來越高,以前很古早的230W電源已經不夠用了, 有的系統甚至得要有500W以上的電源才能夠運作~真可怕~

電源供應器的價差非常大!貴一點的300W可以到4000 NT,便宜一點的300W只要500 NT不到! 怎麼差這麼多?沒錯~因爲Power的用料不同,電源供應的穩定度也會差很多。如前所述,電源供應器相當於你的心臟, 心臟差的話,活動力就會不足了!所以, 穩定度差的電源供應器甚至是造成計算機不穩定的元兇呢!所以,儘量不要使用太差的電源供應器喔!
 


  • 能源轉換率

電源供應器本身也會吃掉一部份的電力的!如果你的主機系統需要 300W 的電力時,因爲電源供應器本身也會消耗掉一部份的電力, 因此你最好要挑選400W以上的電源供應器。電源供應器出廠前會有一些測試數據,最好挑選高轉換率的電源供應器。 所謂的高轉換率指的是『輸出的功率/輸入的功率』。意思是說,假如你的主機板用電量爲250W, 但是電源供應器其實已經使用掉320W的電力,則轉換率爲:250/320=0.78的意思。 這個數值越高表示被電源供應器『玩掉』的電力越少,那就符合能源效益了!^_^
 


  • 連接介面

目前主機板與電源供應器的連接介面主要有20pin與24pin兩種規格,購買時也需要考慮你的主機板所需要的規格喔!


大標題的圖示選購須知

在購買主機時應該需要進行整體的考量,很難依照某一項標準來選購的。 老實說,如果你的公司需要一部服務器的話,建議不要自行組裝,買品牌計算機的服務器比較好! 這是因爲自行組裝的計算機雖然比較便宜,但是每項設備之間的適合性是否完美則有待自行檢測。

另外,在效能方面並非僅考量CPU的能力而已,速度的快慢與『整體系統的最慢的那個設備有關!』,如果你是使用最快速的Intel Core 2 Duo,使用最快的DDR II內存, 但是配上一個慢慢的過時顯示卡,那麼整體的3D速度效能將會卡在那個顯示卡上面喔!所以,在購買整套系統時, 請特別留意需要全部的介面都考慮進去喔!尤其是當您想要升級時,要特別注意這個問題, 並非所有的舊的設備都適合繼續使用的。
 


  • 系統不穩定的可能原因

除此之外,到底那個組件特別容易造成系統的不穩定呢?有幾個常見的系統不穩定的狀態是:

  • 系統超頻:這個行爲很不好!不要這麼做!
     
  • 電源供應器不穩: 這也是個很嚴重的問題,當您測試完所有的組件都沒有啥大問題時,記得測試一下電源供應器的穩定度!
     
  • 內存無法負荷:現在的內存品質差很多,差一點的內存,可能會造成您的主機在忙碌的工作時, 產生不穩定或當機的現象喔!
     
  • 系統過熱:『熱』是造成電子零件運作不良的主因之一,如果您的主機在夏天容易當機, 冬天卻還好,那麼考慮一下加幾個風扇吧!有助於機殼內的散熱,系統會比較穩定喔! 『 這個問題也是很常見的系統當機的元兇!』(鳥哥之前的一臺服務器老是容易當機, 後來拆開機殼研究後才發現原來是北橋上面的小風扇壞掉了,導致北橋溫度太高。後來換掉風扇就穩定多了。)
Tips:
事實上,要了解每個硬件的詳細架構與構造是很難的!這裏鳥哥僅是列出一些比較基本的概念而已。 另外,要知道某個硬件的製造商是哪間公司時,可以看該硬件上面的信息。 舉例來說,主機板上面都會列出這個主機板的開發商與主機板的型號,知道這兩個信息就可以找到驅動程序了。 另外,顯示卡上面有個小小的芯片,上面也會列出顯示卡廠商與芯片信息喔

 

 

 

進制

進制也就是進位制,是人們規定的一種進位方法。 對於任何一種進制---X進制,就表示某一位置上的數運算時是逢X進一位。 十進制是逢十進一,十六進制是逢十六進一,二進制就是逢二進一,以此類推,x進制就是逢x進位。

二進制是計算技術中廣泛採用的一種數制二進制數據是用0和1兩個數碼來表示的數。它的基數爲2,進位規則是“逢二進一”,借位規則是“借一當二”,由18世紀德國數理哲學大師萊布尼茲發現。當前的計算機系統使用的基本上是二進制系統,數據在計算機中主要是以補碼的形式存儲的。計算機中的二進制則是一個非常微小的開關,用“開”來表示1,“關”來表示0。

20世紀被稱作第三次科技革命的重要標誌之一的計算機的發明與應用,因爲數字計算機只能識別處理由‘0’.‘1’符號串組成的代碼。其運算模式正是二進制。19世紀愛爾蘭邏輯學家喬治布爾對邏輯命題的思考過程轉化爲對符號"0''.''1''的某種代數演算,二進制是逢2進位的進位制。0、1是基本算符。因爲它只使用0、1兩個數字符號,非常簡單方便,易於用電子方式實現。

 

常用的進制用2進制、10進制、16進制, 互相之間如何轉換?

 

 

字符編碼

 

字符編碼(英語:Character encoding)也稱字集碼,是把字符集中的字符編碼爲指定集合中某一對象(例如:比特模式、自然數序列、8位組或者電脈衝),以便文本計算機中存儲和通過通信網絡的傳遞。常見的例子包括將拉丁字母表編碼成摩斯電碼ASCII。其中,ASCII將字母、數字和其它符號編號,並用7比特二進制來表示這個整數。通常會額外使用一個擴充的比特,以便於以1個字節的方式存儲。

在計算機技術發展的早期,如ASCII(1963年)和EBCDIC(1964年)這樣的字符集逐漸成爲標準。但這些字符集的侷限很快就變得明顯,於是人們開發了許多方法來擴展它們。對於支持包括東亞CJK字符家族在內的寫作系統的要求能支持更大量的字符,並且需要一種系統而不是臨時的方法實現這些字符的編碼。

 

ASCII

美國(國家)信息交換標準(代)碼,一種使用7個或8個二進制位進行編碼的方案,最多可以給256個字符

 


ASCII(包括字母、數字、標點符號、控制字符及其他符號)分配(或指定)數值。

ASCII碼於1961年提出,用於在不同計算機硬件軟件系統中實現數據傳輸標準化,在大多數的小型機和全部的個人計算機都使用此碼。ASCII碼劃分爲兩個集合:128個字符的標準ASCII碼和附加的128個字符的擴充和ASCII碼。比較EBCDIC。其中95個字符可以顯示。另外33個不可以顯示。 標準ASCII碼爲7位,擴充爲8位。

目前使用最廣泛的西文字符集及其編碼是 ASCII 字符集和 ASCII 碼( ASCII 是 American Standard Code for Information Interchange 的縮寫),它同時也被國際標準化組織( International Organization for Standardization, ISO )批准爲國際標準。

基本的 ASCII 字符集共有 128 個字符,其中有 96 個可打印字符,包括常用的字母、數字、標點符號等,另外還有 32 個控制字符。標準 ASCII 碼使用 7 個二進位對字符進行編碼,對應的 ISO 標準爲 ISO646 標準。下表展示了基本 ASCII 字符集及其編碼:

字母和數字的 ASCII 碼的記憶是非常簡單的。我們只要記住了一個字母或數字的 ASCII 碼(例如記住 A 爲 65 , 0 的 ASCII 碼爲 48 ),知道相應的大小寫字母之間差 32 ,就可以推算出其餘字母、數字的 ASCII 碼。

雖然標準 ASCII 碼是 7 位編碼,但由於計算機基本處理單位爲字節( 1byte = 8bit ),所以一般仍以一個字節來存放一個 ASCII 字符。每一個字節中多餘出來的一位(最高位)在計算機內部通常保持爲 0 (在數據傳輸時可用作奇偶校驗位)。

由於標準 ASCII 字符集字符數目有限,在實際應用中往往無法滿足要求。爲此,國際標準化組織又制定了 ISO2022 標準,它規定了在保持與 ISO646 兼容的前提下將 ASCII 字符集擴充爲 8 位代碼的統一方法。 ISO 陸續制定了一批適用於不同地區的擴充 ASCII 字符集,每種擴充 ASCII 字符集分別可以擴充 128 個字符,這些擴充字符的編碼均爲高位爲 1 的 8 位代碼(即十進制數 128~255 ),稱爲擴展 ASCII 碼。

通過了解字符的存儲編碼,可以解決很多由編碼不匹配引起的問題,比如網頁亂碼、郵件亂碼,本文簡單扼要地闡明瞭ASCII編碼、EBCDIC編碼、GB2312編碼、Unicode編碼、UTF-8編碼、以及Base64編碼。

 

編碼

在顯示器上看見的文字、圖片等信息在電腦裏面
其實並不是我們看見的樣子,即使你知道所有信息都存儲在硬盤裏,把它拆開也看不見裏面有任何東西,只有些盤片。假設,你用顯微鏡把盤片放大,會看見盤片表面凹凸不平,凸起的地方被磁化,凹的地方是沒有被磁化;凸起的地方代表數字1,凹的地方代表數字0。硬盤只能用0和1來表示所有文字、圖片等信息。那麼字母”A”在硬盤上是如何存儲的呢?可能小張計算機存儲字母”A”是1100001,而小王存儲字母”A”是11000010,這樣雙方交換信息時就會誤解。比如小張把1100001發送給小王,小王並不認爲1100001是字母”A”,可能認爲這是字母”X”,於是小王在用記事本訪問存儲在硬盤上的1100001時,在屏幕上顯示的就是字母”X”。也就是說,小張和小王使用了不同的編碼表。小張用的編碼表是ASCII,ASCII編碼表把26個字母都一一的對應到2進制1和0上;小王用的編碼表可能是EBCDIC,只不過EBCDIC編碼與ASCII編碼中的字母和01的對應關係不同。一般地說,開放的操作系統(LINUX 、WINDOWS等)採用ASCII 編碼,而大型主機系統(MVS 、OS/390等)採用EBCDIC 編碼。在發送數據給對方前,需要事先告知對方自己所使用的編碼,或者通過轉碼,使不同編碼方案的兩個系統可溝通自如。

ASCII碼使用7位2進制數表示一個字符,7位2進制數可以表示出2的7次方個字符,共128個字符。EBCDIC碼使用8位,可以表示出2的8次方個字符,256個字符。

無論是ASCII碼還是EBCDIC碼,都無法對擁有幾萬個的漢字進行編碼。因爲上面已經提過,7位2進制數最多對應上128個字符,8位最多對應上256個字符。

0~31及127(共33個)是控制字符或通信專用字符(其餘爲可顯示字符),如控制符:LF(換行)、CR(回車)、FF(換頁)、DEL(刪除)、BS(退格)、BEL(振鈴)等;通信專用字符:SOH(文頭)、EOT(文尾)、ACK(確認)等;ASCII值爲8、9、10和13分別轉換爲退格、製表、換行和回車字符。它們並沒有特定的圖形顯示,但會依不同的應用程序而對文本顯示有不同的影響。

32~126(共95個)是字符(32sp是空格),其中48~57爲0到9十個阿拉伯數字,65~90爲26個大寫英文字母,97~122爲26個小寫字母,其餘爲一些標點符號、運算符號等。[1] 

 

MBCS

爲了擴充ASCII編碼,以用於顯示本國的語言,不同的國家和地區制定了不同的標準,由此產生了 GB2312, BIG5, JIS 等各自的編碼標準。這些使用 2 個字節來代表一個字符的各種漢字延伸編碼方式,稱爲 ANSI 編碼,又稱爲"MBCS(Muilti-Bytes Charecter Set,多字節字符集)"。在簡體中文系統下,ANSI 編碼代表 GB2312 編碼,在日文操作系統下,ANSI 編碼代表 JIS 編碼,所以在中文 windows下要轉碼成gb2312,gbk只需要把文本保存爲ANSI 編碼即可。 不同 ANSI 編碼之間互不兼容,當信息在國際間交流時,無法將屬於兩種語言的文字,存儲在同一段 ANSI 編碼的文本中。一個很大的缺點是,同一個編碼值,在不同的編碼體系裏代表着不同的字。這樣就容易造成混亂。導致了unicode碼的誕生。

其中每個語言下的ANSI編碼,都有一套一對一的編碼轉換器,Unicode變成所有編碼轉換的中間介質。所有的編碼都有一個轉換器可以轉換到Unicode,而Unicode也可以轉換到其他所有的編碼。

GB2312

GB2312 也是ANSI編碼裏的一種,對ANSI編碼最初始的ASCII編碼進行擴充,爲了滿足國內在計算機中使用漢字的需要,中國國家標準總局發佈了一系列的漢字字符集國家標準編碼,統稱爲GB碼,或國標碼。其中最有影響的是於1980年發佈的《信息交換用漢字編碼字符集 基本集》,標準號爲GB 2312-1980,因其使用非常普遍,也常被通稱爲國標碼。GB2312編碼通行於我國內地;新加坡等地也採用此編碼。幾乎所有的中文系統和國際化的軟件都支持GB 2312。

GB 2312是一個簡體中文字符集,由6763個常用漢字和682個全角的非漢字字符組成。其中漢字根據使用的頻率分爲兩級。一級漢字3755個,二級漢字3008個。由於字符數量比較大,GB2312採用了二維矩陣編碼法對所有字符進行編碼。首先構造一個94行94列的方陣,對每一行稱爲一個“區”,每一列稱爲一個“位”,然後將所有字符依照下表的規律填寫到方陣中。這樣所有的字符在方陣中都有一個唯一的位置,這個位置可以用區號、位號合成表示,稱爲字符的區位碼。如第一個漢字“啊”出現在第16區的第1位上,其區位碼爲1601。因爲區位碼同字符的位置是完全對應的,因此區位碼同字符之間也是一一對應的。這樣所有的字符都可通過其區位碼轉換爲數字編碼信息。GB2312字符的排列分佈情況見表1-4。

表1-4 GB2312 字符編碼分佈表

分區範圍

符號類型

第01區

中文標點、數學符號以及一些特殊字符

第02區

各種各樣的數學序號

第03區

全角西文字符

第04區

日文平假名

第05區

日文片假名

第06區

希臘字母表

第07區

俄文字母表

第08區

中文拼音字母表

第09區

製表符號

第10-15區

無字符

第16-55區

一級漢字(以拼音字母排序)

第56-87區

二級漢字(以部首筆畫排序)

第88-94區

無字符

GB2312字符在計算機中存儲是以其區位碼爲基礎的,其中漢字的區碼和位碼分別佔一個存儲單元,每個漢字佔兩個存儲單元。由於區碼和位碼的取值範圍都是在1-94之間,這樣的範圍同西文的存儲表示衝突。例如漢字‘珀’在GB2312中的區位碼爲7174,其兩字節表示形式爲71,74;而兩個西文字符‘GJ’的存儲碼也是71,74。這種衝突將導致在解釋編碼時到底表示的是一個漢字還是兩個西文字符將無法判斷。

爲避免同西文的存儲發生衝突,GB2312字符在進行存儲時,通過將原來的每個字節第8bit設置爲1同西文加以區別,如果第8bit爲0,則表示西文字符,否則表示GB2312中的字符。實際存儲時,採用了將區位碼的每個字節分別加上A0H(160)的方法轉換爲存儲碼,計算機存儲規則是此編碼的補碼,而且是位碼在前,區碼在後。例如漢字‘啊’的區位碼爲1601,其存儲碼爲B0A1H,其轉換過程爲:

區位碼

區碼轉換

位碼轉換

存儲碼

1001H

10H+A0H=B0H

01H+A0H=A1H

B0A1H

GB2312編碼用兩個字節(8位2進制)表示一個漢字,所以理論上最多可以表示256×256=65536個漢字。但這種編碼方式也僅僅在中國行得通,如果您的網頁使用的GB2312編碼,那麼很多外國人在瀏覽你的網頁時就可能無法正常顯示,因爲其瀏覽器不支持GB2312編碼。當然,中國人在瀏覽外國網頁(比如日文)時,也會出現亂碼或無法打開的情況,因爲我們的瀏覽器沒有安裝日文的編碼表。

GBK

GBK即漢字內碼擴展規範,K爲擴展的漢語拼音中“擴”字的聲母。英文全稱Chinese Internal Code Specification。GBK編碼標準兼容GB2312,共收錄漢字21003個、符號883個,並提供1894個造字碼位,簡、繁體字融於一庫。GB2312碼是中華人民共和國國家漢字信息交換用編碼,全稱《信息交換用漢字編碼字符集——基本集》,1980年由國家標準總局發佈。基本集共收入漢字6763個和非漢字圖形字符682個,通行於中國大陸。新加坡等地也使用此編碼。GBK是對GB2312-80的擴展,也就是CP936字碼表 (Code Page 936)的擴展(之前CP936和GB 2312-80一模一樣)。

基本簡介

GB 2312的出現,基本滿足了漢字的計算機處理需要,但對於人名、古漢語等方面出現的罕用字,GB 2312不能處理,這導致了後來GBK及GB 18030漢字字符集的出現。

GBK採用雙字節表示,總體編碼範圍爲8140-FEFE,首字節在81-FE 之間,尾字節在40-FE 之間,剔除 xx7F一條線。總計23940 個碼位,共收入21886個漢字和圖形符號,其中漢字(包括部首和構件)21003 個,圖形符號883 個。P-Windows3.2和蘋果OS以GB2312爲基本漢字編碼, Windows 95/98則以GBK爲基本漢字編碼。

有些漢字用五筆和拼音都打不出來,如:溙(五筆IDWI),須調出GBK字符集才能打出這個字。極品五筆中可右擊輸入法圖標,設置,屬性中選GBK字符集極點五筆中可點擊工具條中相關圖標進行轉換。

Big5

在臺灣、香港與澳門地區,使用的是繁體中文字符集。而1980年發佈的GB2312面向簡體中文字符集,並不支持繁體漢字。在這些使用繁體中文字符集的地區,一度出現過很多不同廠商提出的字符集編碼,這些編碼彼此互不兼容,造成了信息交流的困難。爲統一繁體字符集編碼,1984年,臺灣五大廠商宏碁、神通、佳佳、零壹以及大衆一同制定了一種繁體中文編碼方案,因其來源被稱爲五大碼,英文寫作Big5,後來按英文翻譯回漢字後,普遍被稱爲大五碼

大五碼是一種繁體中文漢字字符集,其中繁體漢字13053個,808個標點符號、希臘字母及特殊符號。大五碼的編碼碼錶直接針對存儲而設計,每個字符統一使用兩個字節存儲表示。第1字節範圍81H-FEH,避開了同ASCII碼的衝突,第2字節範圍是40H-7EH和A1H-FEH。因爲Big5的字符編碼範圍同GB2312字符的存儲碼範圍存在衝突,所以在同一正文不能對兩種字符集的字符同時支持。

 

Unicode

如上ANSI編碼條例中所述,世界上存在着多種編碼
方式,在ANSi編碼下,同一個編碼值,在不同的編碼體系裏代表着不同的字。在簡體中文系統下,ANSI 編碼代表 GB2312 編碼,在日文操作系統下,ANSI 編碼代表 JIS 編碼,可能最終顯示的是中文,也可能顯示的是日文。在ANSI編碼體系下,要想打開一個文本文件,不但要知道它的編碼方式,還要安裝有對應編碼表,否則就可能無法讀取或出現亂碼。爲什麼電子郵件和網頁都經常會出現亂碼,就是因爲信息的提供者可能是日文的ANSI編碼體系和信息的讀取者可能是中文的編碼體系,他們對同一個二進制編碼值進行顯示,採用了不同的編碼,導致亂碼。這個問題促使了unicode碼的誕生。

如果有一種編碼,將世界上所有的符號都納入其中,無論是英文、日文、還是中文等,大家都使用這個編碼表,就不會出現編碼不匹配現象。每個符號對應一個唯一的編碼,亂碼問題就不存在了。這就是Unicode編碼。

Unicode當然是一個很大的集合,現在的規模可以容納100多萬個符號。每個符號的編碼都不一樣,比如,U+0639表示阿拉伯字母Ain,U+0041表示英語的大寫字母A,“漢”這個字的Unicode編碼是U+6C49。

Unicode固然統一了編碼方式,但是它的效率不高,比如UCS-4(Unicode的標準之一)規定用4個字節存儲一個符號,那麼每個英文字母前都必然有三個字節是0,這對存儲和傳輸來說都很耗資源。

 

UTF-8

爲了提高Unicode的編碼效率,於是就出現了UTF-8編碼。UTF-8可以根據不同的符號自動選擇編碼的長短。比如英文字母可以只用1個字節就夠了。

UTF-8的編碼是這樣得出來的,以”漢”這個字爲例:

“漢”字的Unicode編碼是U+00006C49,然後把U+00006C49通過UTF-8編碼器進行編碼,最後輸出的UTF-8編碼是E6B189。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章