官术网_书友最值得收藏!

第3章 計算機系統

計算機系統由硬件系統和軟件系統兩部分組成,二者相輔相成,計算機硬件是計算機軟件工作的基礎,沒有軟件的計算機通常稱為“裸機”,軟件是計算機與應用之間連接的橋梁。本章著重介紹計算機的硬件組成部分及其功能,計算機性能的基本指標,計算機軟件系統的分類及功能。

3.1 計算機硬件系統

3.1.1 計算機硬件系統的基本組成

計算機硬件是指計算機系統中由電子、機械和光電元件組成的各種計算機部件和設備,其基本功能是接受計算機程序的控制以完成數據輸入、運算、輸出等一系列操作。

目前計算機的種類很多,其制造技術也發生了極大的變化,但在基本的硬件結構方面,它一直沿襲著馮·諾依曼體系結構,從功能上可以劃分為五大基本組成部分,即輸入設備、輸出設備、存儲器、運算器和控制器,如圖3.1 所示。其中,實線代表數據流,虛線代表控制流,計算機各部件間的聯系通過信息流動來實現。原始數據和程序通過輸入設備送入存儲器,在運算處理過程中,數據從存儲器讀入運算器進行運算,并將運算結果存入存儲器,必要時再經輸出設備輸出。指令是指示計算機執行某種操作的命令,它由一串二進制數碼組成,指令也以數據形式存于存儲器中,運算時指令由存儲器送入控制器,由控制器控制各部件的工作。

圖3.1 計算機系統基本硬件結構

計算機五大組成部分的功能:

(1)輸入設備。輸入設備的功能是將要加工處理的外部信息轉換為計算機能夠識別和處理的內部形式,以便于處理。

(2)輸出設備。輸出設備的功能是將信息從計算機的內部形式轉換為使用者所要求的形式,以便能為人們識別或被其他設備所接收。

(3)存儲器。存儲器的功能是用于存儲以內部形式表示的各種信息。(4)運算器。運算器的功能是對數據進行算術運算和邏輯運算。

(5)控制器。控制器的功能是產生各種信號,控制計算機各個功能部件協調一致地工作。

3.1.2 計算機工作原理

馮·諾依曼提出的現代計算機的基本工作原理如下:

● 計算機的指令和數據均采用二進制表示。

● 由指令組成的程序和要處理的數據一起存放在存儲器中。機器一啟動,控制器按照程序中指令的邏輯順序,把指令從存儲器中讀出來,逐條執行。

● 由輸入設備、輸出設備、存儲器、運算器、控制器五個基本部件組成的計算機硬件系統,在控制器的統一控制下,協調一致地完成由程序所描述的處理工作。

3.2 微型計算機硬件系統

微型計算機(MicroComputer)是指以微處理器為核心,配上由大規模集成電路制作的存儲器、輸入/輸出接口電路及系統總線所組成的計算機。自從1971年微處理器和微型計算機問世以來,它就得到了異乎尋常的發展,至今,經歷了三代演變,并進入第四代。目前的微型計算機以64位微處理器為主,并向多核微處理器發展。

微型計算機硬件系統的組成如圖3.2所示。

圖3.2 微型計算機硬件系統的組成

微型化的中央處理器稱為微處理器,它包括運算器和控制器,是微型計算機系統的核心;ROM、RAM為內存儲器;微處理器輸出三組總線:地址總線AB、數據總線DB和控制總線CB。各組成部分通過這三組總線連接在一起。由微處理器和內存儲器構成微型計算機的主機。此外,還有外存儲器、輸入設備和輸出設備,它們統稱為外部設備。微型計算機的結構如圖3.3所示。

圖3.3 微型計算機的結構

3.2.1 主板

主板又稱母板,在主板上通常安裝有CPU插座、CPU調壓器、主板芯片組、存儲器插槽、總線插槽、ROM BIOS、CMOS存儲器、電池等,如圖3.4所示。

CPU和存儲器芯片分別通過主板上的CPU插座和存儲器插槽安裝在主板上。PC機常用外圍設備通過擴充卡(例如聲音卡、顯示卡等)或I/O接口與主板相連,擴充卡通過卡上的印刷插頭插在主板上的PCI總線插槽中。隨著集成電路的發展和計算機設計技術的進步,許多擴充卡的功能可以部分或全部集成在主板上(例如,串行口、并行口、聲卡、網卡等控制電路)。

主板上還有兩塊特別有用的集成電路:一塊是只讀存儲器(ROM),其中存放的是基本的輸入/輸出系統(BIOS),它是PC機軟件中最基礎的部分;另一個集成電路芯片是CMOS存儲器,其中存放著用戶對計算機硬件所設置的一些參數(稱為“配置信息”),包括當前的日期和時間、已安裝的軟驅和硬盤的個數及類型等。一旦設定參數后,CMOS將記住這些數據。由于CMOS芯片是一種易失性的存儲器,必須使用電池供電,才能使計算機關機后也不會丟失所存儲的信息。

圖3.4 主板實物圖

為了便于不同PC機主板的互換,主板的物理尺寸已經標準化。前些年使用比較多的是ATX規格的主板,目前一種功能更先進、通風性能更好的BTX主板正在逐步興起。

芯片組(Chipset)是主板的靈魂,決定了主板的性能和價格。正如人的大腦分左腦和右腦一樣,主板上的芯片組由北橋芯片和南橋芯片組成,如圖3.5所示。北橋芯片提供對CPU的類型和主頻、內存的類型和最大容量、ISA/PCI/AGP插槽、ECC糾錯等支持。南橋芯片則提供對KBC(鍵盤控制器)、RTC(實時時鐘控制器)、USB(通用串行總線)、ACPI(高級能源管理)等的支持。其中,北橋芯片起著主導性的作用,故也將其稱為主橋(Host Bridge)。

需要注意的是,CPU類型或參數不同時需要配用不同的芯片組。CPU的系統時鐘及各種與其同步的時鐘均由芯片組提供。芯片組還決定了主板上所能安裝的內存的容量、速度及可使用的內存條的類型。

圖3.5 主板上的芯片組

3.2.2 中央處理器

中央處理器(Central Processing Unit)簡稱CPU,又稱為“微處理器”。包括運算器和控制器兩個部件,它是計算機系統的核心。CPU的主要功能是按照程序給出的指令序列分析指令、執行指令,完成對數據的加工處理。計算機所發生的全部動作都受CPU的控制。

控制器用來協調和指揮整個計算機系統的操作,它本身不具有運算功能,而是通過讀取各種指令,并對其進行翻譯、分析,而后對各部件做出相應的控制。它主要由指令寄存器、譯碼器、程序計數器、時序電路等組成。運算器主要完成算術運算和邏輯運算,是對信息加工和處理的部件,它主要由算術邏輯部件、寄存器組組成。

CPU品質的高低直接決定了計算機系統的檔次。能夠處理的數據位數是CPU的一個重要品質標志。人們通常所說的8位機、16位機、32位機、64位機即指CPU可同時處理8位、16位、32位、64位的二進制數。8位機是最早的微機產品,后來的IBM PC/XT、IBM PC/AT及286機均是16位機,386機和486機是32位機,奔騰586機也是32位機。其中,IBM PC/XT機的CPU芯片為Intel 8088、Intel 8086,IBM PC/AT的CPU芯片為Intel 80286,而386機、486機、586機的CPU芯片分別為Intel 80386、Intel 80486、Pentium。

目前,大多數微機都使用Intel公司生產的CPU。美國Intel公司成立于1968年,1971年Intel推出了4位微處理器(即4004),首次采用100MHz系統總線,相繼生產出高檔32位的時鐘頻率為400MHz和450MHz的微處理器PentiumⅡ。隨后又推出PentiumⅢ、PentiumⅣ、Core(酷睿)等處理器,如圖3.6所示。

圖3.6 CPU實物圖舉例

近些年CPU技術中引入了多核技術,所謂的核又稱為內核,是CPU最重要的組成部分,CPU所有的計算、接受/存儲命令、處理數據都由核心執行,各種CPU核心都具有固定的邏輯結構,一級緩存、二級緩存、執行單元、指令級單元和總線接口等邏輯單元都會有科學的布局。在一個處理器上集成兩個運算核心稱為雙核處理器,如果在一個處理器上集成多個運算核心則稱為多核處理器,多核處理器可以在處理器內部共享緩存,提高緩存利用率,同時簡化多處理器系統設計的復雜度。

3.2.3 存儲器

存儲器是計算機的記憶和存儲部件,用來存放信息。對存儲器而言,容量越大,存取速度越快,則該存儲器的品質越好。計算機的操作,大量是與存儲器之間交換信息,存儲器的工作速度相對CPU的運算速度要低得多,因此存儲器的工作速度是制約計算機運算速度的主要因素之一。目前計算機的存儲系統由各種不同的存儲器組成。通常至少有兩級存儲器:一個是包含在計算機中的內存儲器,它直接和運算器、控制器聯系,容量小,但存取速度快,用于存放那些急需處理的數據或正在運行的程序;另一個是外存儲器,它間接和運算器、控制器聯系,存取速度慢,但存取容量大,價格低廉,用來存放暫時不用的數據。

1.內存儲器

內存又稱為主存,它和CPU一起構成了計算機的主機部分。內存由半導體存儲器組成,存取速度較快,由于價格上的原因,一般容量較小。內存中含有很多的存儲單元,每個單元可以存放一個8位的二進制數,即一個字節。通常一個字節可以存放0到255之間的一個無符號整數或一個字符的代碼,而對于其他大部分數據可以用若干個連續字節按一定規則進行存放。內存中的每個字節各有一個固定的編號,這個編號稱為地址。CPU在存儲器中存取數據時按地址進行。所謂存儲器容量即指存儲器中所包含的字節數,通常用KB和MB作為存儲器容量的單位。

內存儲器按工作方式的不同,可以分為隨機存儲RAM和只讀存儲器ROM兩種。RAM是一種讀寫存儲器,其內容可以隨時根據需要讀出,也可以隨時重新寫入新的信息。內存條就是將RAM集成塊集中在一起的一小塊電路板,它插在計算機中的內存插槽上,如圖3.7所示。一般RAM又分為靜態RAM SRAM和動態RAM DRAM兩種。靜態RAM的特點是只要存儲單元上加有工作電壓,它上面存儲的信息就會保持。動態RAM由于是利用MOS管極間電容保存信息的,因此隨著電容的漏電,信息會逐漸丟失,為了補償信息的丟失,要每隔一定時間對存儲單元的信息進行刷新。

圖3.7 內存條

不論是靜態RAM還是動態RAM,當電源電壓去掉時,RAM中保存的信息都將會全部丟失。RAM在微機中主要用來存放正在執行的程序和臨時數據。由于靜態存儲器成本較高,通常在存儲器較小的存儲系統中采用,以省去刷新電路。在存儲量較大的存儲系統中宜用動態存儲器,以降低成本。

ROM是一種內容只能讀出而不能寫入和修改信息的存儲器,其存儲的信息是在制作該存儲器時就被寫入的。在計算機運行過程中,ROM中的信息只能被讀出,而不能寫入新的信息。ROM常用來存放一些固定程序、數據和系統軟件等,如檢測程序、ROM BIOS等。只讀存儲器除了ROM外,還有PROM、EPROM等類型。PROM是可編程只讀存儲器,但只可編寫一次。與PROM器件相比,EPROM器件是可以反復多次擦除原來寫入的內容,重新寫入新的內容的只讀存儲器。EPROM與RAM不同,雖然其內容可以多次擦除和多次更新,但只要更新固化好后,就只能讀出,而不像RAM那樣可以隨機讀出和寫入信息。不論哪種ROM,其中存儲的信息不受斷電影響,具有永久保存的特點。

由于CPU比內存速度快,目前,在計算機中還普遍采用一種比主存儲器存取速度更快的超高速緩沖存儲器,即Cache,置于CPU與主存之間,以滿足CPU對內存高速訪問的要求。有了Cache以后,CPU每次讀操作都先查找Cache,如果找到數據,可以直接從Cache中高速讀出;如果數據不在Cache中再由主存中讀出。Cache的存儲容量主要有256KB、512KB等。Cache的容量并不是越大越好,過大的Cache會降低CPU在Cache中查找的效率。

衡量內存的常用指標有容量與速度。目前微機內存容量主要有512MB、1GB、2GB等。微機內存的速度是指讀或寫一次內存所需的時間,數量級以納秒(ns)衡量,主要有10ns、8ns、7ns等。

2.外存儲器

內存由于技術及價格上的原因,容量有限,不可能容納所有的系統軟件及各種用戶程序,因此,計算機系統都要配置外存儲器。外存儲器又稱為輔助存儲器,它的容量一般都比較大,而且大部分可以移動,便于不同計算機之間進行信息交流。在微型計算機中,常用的外存有磁盤、光盤、閃存和磁帶,磁盤又可以分為硬盤和軟盤。

1)軟盤

軟磁盤是一種磁介質形式的大容量存儲器。它的磁盤片被裝在一個保護套內,保護套保護盤面上的磁層不被損傷,也防止盤片旋轉時產生靜電引起數據丟失。在軟盤套上開有若干個孔,其中有磁頭讀寫孔、寫保護口等。軟盤驅動器的讀/寫磁頭通過磁頭讀寫孔與磁盤接觸,將信息讀出或寫入。寫保護口對磁盤中的數據進行保護,磁盤寫保護時,磁盤上的信息只能被讀出,不能寫入。目前常用軟盤種類是雙面高密度3.5英寸盤,它的存儲容量為1.44MB。

2)硬盤

硬磁盤是由若干個硬盤片組成的盤片組,一般被固定在主機箱內,如圖3.8所示。硬盤的存儲格式與軟盤類似,但硬盤的容量要大得多,存取信息的速度也快得多。目前微機上所配置的硬盤容量主要有60GB、80GB和120GB等。硬盤在第一次使用時,也必須首先格式化。

圖3.8 硬盤結構示意圖

衡量硬盤的常用指標有容量、轉速、硬盤自帶Cache(高速緩存)的容量等。容量越大,存儲信息量越多;轉速越高,存取信息速度越快;Cache越大,計算機整體速度越快。目前普通硬盤的轉速有5400轉/分鐘,高速硬盤有7200轉/分鐘。普通硬盤有2MB Cache,而高速硬盤有8MB Cache等。

3)光盤

光盤的存儲介質不同于磁盤,它屬于另一類存儲器。主要利用激光原理存儲和讀取信息。光盤片用塑料制成,塑料中間夾入了一層薄而平整的鋁膜,通過鋁膜上極細微的凹凸坑記錄信息,如圖3.9 所示。由于光盤具有容量大、存取速度快、不易受干擾等特點,光盤的應用越來越廣泛。光盤根據其制造材料和記錄信息的方式的不同一般分為三類:只讀光盤、一次性寫入光盤和可擦寫光盤。

圖3.9 光盤實物圖

只讀光盤也稱CD-ROM(Compact Disk-Read Only Memory),是生產廠家在制造時根據用戶要求將信息寫入到盤中,用戶不能擦掉,也不能寫入,只能通過光盤驅動器讀出盤中信息。計算機上用的CD-ROM有一個數據傳輸速率指標,稱為倍速。一倍速的數據傳輸速率是150KB/s,24倍速CD-ROM的數據傳輸速率是24×150KB/s=3.6MB/s。CD-ROM的標準容量是650MB。

一次性寫入型光盤也稱CD-R(Compact Disk-Recordable),可以由用戶寫入信息,但只能寫一次,不能擦除和改寫(像PROM芯片一樣)。這種光盤的信息可多次讀出,讀出信息時使用只讀光盤用的驅動器即可。一次性寫入型光盤的存儲容量一般為650MB。

可擦寫光盤也稱CD-RW,它可由用戶自己寫入信息,也可對已記錄的信息進行擦除和改寫,就像使用磁盤—樣反復使用。可擦寫光盤需插入特制的光盤驅動器進行讀寫操作,它的存儲容量一般在幾百MB至幾個GB之間。

DVD-ROM是CD-ROM的后繼產品,DVD-ROM盤片的尺寸與CD-ROM盤片完全一致。但不同的是DVD盤片光道之間的間距由原來的1.6μm縮小至0.74μm,而記錄信息的最小凹凸坑長度由原來的0.83μm縮小到0.4μm。這直接導致了單面單層的DVD盤的存儲容量可提高至4.7GB,是CD-ROM的7倍,而且DVD驅動器具有向下的兼容性,即也可以讀取CD-ROM的光盤。

4)閃存

閃存是一種新型的EEPROM(電可擦除可編程只讀存儲器)內存。它的歷史并不長,但已出現了各種各樣的閃存,有常用的“U盤(USB Flash Drive)”、數碼相機、MP3上用的CF(Compact Flash)卡、SM(SmartMedia)卡,MMC(MultiMediaCard)卡等,如圖3.10所示。它們攜帶和使用方便,容量和價格適中,一般容量從64MB到2GB,存儲數據可靠性強,因此普及很快,深受廣大計算機使用者的青睞。

圖3.10 閃存卡

5)移動硬盤

移動硬盤是一種主要利用計算機外設標準接口傳輸數據(USB/IEEE 1394)的硬盤,即插即用,無須驅動。它有容量大、單位存儲成本低、速度快、兼容性好的特點,是一種便攜式的大容量存儲設備。

3.2.4 輸入/輸出設備

計算機處理的用戶信息通常是以數字、文字、符號、圖形、圖像、聲音以及表示各種物理、化學現象的形式表示出來的,但計算機所能存儲加工的僅是以二進制代碼表示的信息,因此要處理這些外部信息就必須把它們轉換成二進制代碼的內部表示形式。計算機的輸入設備和輸出設備(簡稱為I/O設備)就是完成這種轉換的工具。

1.輸入設備

輸入設備將要加工處理的外部信息轉換成計算機能夠識別和處理的內部表示形式(即二進制代碼),輸送到計算機中。在微型計算機系統中,最常用的輸入設備是鼠標和鍵盤。

1)鍵盤

目前微型機所配置的標準鍵盤有101(或104)個按鍵,104鍵盤的布局如圖3.11所示,它包括數字鍵、字母鍵、符號鍵、控制鍵和功能鍵等。

圖3.11 計算機鍵盤布局

① 鍵盤的分區。標準鍵盤的布局分三個區域,即主鍵盤區、數字鍵盤區和功能鍵區。主鍵盤區共有62個鍵,包括數字和符號鍵(22個)、字母鍵(26個)、控制鍵(14個)。數字鍵盤區共有30個鍵,包括光標移動鍵(4個)、光標控制鍵(4個)、算術運算符鍵(4個)、數字鍵(10個)、編輯鍵(4個)、數字鎖定鍵、打印屏幕鍵等。功能鍵共有12個,包括【F1】~【F12】。在功能鍵中,前6 個鍵的功能是由系統鎖定的,后面6 個鍵的功能可根據軟件的需要由用戶自己定義。數字鍵盤區的設置可對文字錄入、文本編輯和光標的移動進行控制,為用戶的操作提供了極大的方便。

② 鍵盤的常用鍵。常用鍵的功能如表3.1所示。

表3.1 常用鍵的功能表

● 在104個鍵中有4個“雙態鍵”,它們是:【Ins】鍵(包括插入狀態和覆蓋狀態)、【Caps Lock】鍵(包括大寫字母狀態和鎖定狀態)、【Num Lock】鍵(包括數字狀態和自鎖狀態)和【Scroll Lock】鍵(包括滾屏狀態和鎖定狀態)。它們本身都是狀態轉換開關,當計算機剛剛啟動時,4個雙態鍵都處于前一種狀態,所有字母鍵均固定為小寫字母鍵,如按【Caps Lock】鍵,指示燈亮,則為大寫字母鍵。再按該鍵,指示燈滅,則恢復為小寫字母鍵。

● 在104個鍵中有30個鍵是“雙符”鍵,即每個鍵面上有兩個字符。主鍵盤區的雙符鍵由【Shift】鍵控制,數字鍵盤區的雙符鍵由【Num Lock】鍵控制。另外,在104鍵盤中,鍵面上只有26個大寫英文字母A~Z,若要輸入大寫英文字母,只須在輸入前先按下【Caps Lock】鍵。在計算機處于剛剛啟動時,各雙符鍵都處于下面的字符和小寫英文字母的狀態。

● 在104鍵盤中有兩個Windows鍵和一個快捷菜單鍵,按下Windows鍵相當于單擊系統中的“開始”按鈕,按快捷菜單鍵相當于單擊鼠標右鍵的功能。

2)鼠標

鼠標是一種常見的輸入設備。它與顯示器相配合,可以方便、準確地移動顯示器上的光標,并通過單(雙)擊選取光標所指的內容。鼠標按其按鈕個數可以分為兩鍵鼠標(PC鼠標)和三鍵鼠標(MS鼠標);按感應位移變化的方式可以分為機械鼠標、光學鼠標和光學機械鼠標。

3)掃描儀

掃描儀是一種典型的圖像輸入設備。它可以將紙質文檔上的照片、圖片、圖形或文字資料掃描到計算機中,并將其轉換成以二進制代碼表示的圖像文件存儲于硬盤中。掃描儀主要有兩類:手持式和平板式。平板式掃描儀的性能要優于手持式掃描儀。掃描儀的主要技術參數是分辨率,以每英寸的檢測點數表示,其單位是dpi。一般的掃描儀的分辨率為600dpi。注意,最好選擇兩倍于打印機分辨率的掃描儀,才能獲得最佳的圖像效果。

鼠標和掃描儀的外觀如圖3.12所示。

圖3.12 掃描儀和鼠標示意圖

2.輸出設備

輸出設備是將計算機內部以二進制代碼形式表示的信息轉換為用戶所需要并能識別的形式(如十進制數字、文字、符號、圖形、圖像、聲音)或者其他系統所能接受的信息形式,并將其輸出。在微型機系統中,主要的輸出設備有顯示器和打印機等,如圖3.13所示。

圖3.13 顯示器和打印機

1)顯示器

PC的顯示系統由顯示器和圖形適配器(Graphics Adapter,也稱為圖形卡或顯卡)組成。它們共同決定了圖像輸出的質量。顯示器類型很多,按顯示的內容可以分為只能顯示ASCII碼字符的字符顯示器和能顯示字符和圖形的圖形顯示器;按顯示的顏色可以分為單色顯示器和彩色顯示器;按顯示原理可以分為陰極射線管顯示器(CRT)和液晶顯示器(LCD)。

CRT是一種使用陰極射線管(Cathode Ray Tube)的顯示器,是采用電子發射擊打熒光粉顯示圖像的顯示器,具有可視角度大、無壞點、色彩還原度高、色度均勻、可調節的多分辨率模式、響應時間極短等特點。

液晶顯示器是一種采用液晶為材料的顯示器。液晶是介于固態和液態間的有機化合物。將其加熱會變成透明液態,冷卻后會變成結晶的混濁固態。在電場作用下,液晶分子會發生排列上的變化,從而影響通過其的光線變化,這種光線的變化通過偏光片的作用可以表現為明暗的變化,從而達到顯示圖像的目的。液晶顯示器具有機身薄、重量輕、節省電能、不產生高溫、無輻射、畫面柔和不閃爍等優點,因此目前在各個行業廣泛使用。

顯示器的主要性能指標有顏色、像素、點間距、分辨率和顯存等。

● 顏色。指是單色顯示器還是彩色顯示器,彩色顯示器還要看有多少種顏色可供選擇。

● 像素。顯示器所顯示的圖形和文字是由許許多多的“點”組成的,這些點稱為像素。

● 點間距。點間距也稱點距,是屏幕上相鄰兩個像素之間的距離,點距越小,圖像越清晰,細節越清楚。常見的點距有0.21mm、0.25mm、0.28mm等。

● 分辨率。指在單位面積上能顯示的像素的數目。分辨率越高,所顯示的畫面就越精細,但同時也會越小。目前的顯示器一般都能支持800×600、1024×768、1280×1024等規格的分辨率。

● 顯存。電腦在顯示一幀圖像時首先要將其存入顯卡的內存。顯存的大小會限制對顯示分辨率及流行色的設置。

2)打印機

打印機主要有針式打印機、噴墨打印機、激光打印機等。針式打印機速度慢、噪聲大,但它的耗材便宜。噴墨打印機價格便宜、體積小、噪聲小、打印質量高,但對紙張要求高、墨水消耗量大,適于家庭使用。激光打印機是激光技術和電子照相技術的復合物,它將計算機輸出的信號轉換成靜電磁信號,磁信號使磁粉吸附在紙上形成有色字體。激光打印機印字質量高、字符光滑美觀、打印速度快、噪聲小,但價格稍高一些。打印機的技術指標主要有打印速度、印字質量、打印噪聲等。

打印機是將計算機的運算結果或中間結果以人所能識別的數字、字母、符號和圖形等形式,依照規定的格式印在紙上的設備。打印機正向輕、薄、短、小、低功耗、高速度和智能化方向發展。

打印機的種類很多,按打印元件對紙是否有擊打動作,分擊打式打印機與非擊打式打印機。按打印字符結構,分全形字打印機和點陣字符打印機。按一行字在紙上形成的方式,分串式打印機與行式打印機。按所采用的技術,分柱形、球形、噴墨式、熱敏式、激光式、靜電式、磁式、發光二極管式打印機等。

串式點陣字符非擊打式打印機主要有噴墨式和熱敏式兩種。①噴墨式打印機。是應用最廣泛的打印機。其基本原理是帶電的噴墨霧點經過電極偏轉后,直接在紙上形成所需字形。其優點是組成字符和圖像的印點比針式點陣打印機小得多,因而字符點的分辨率高,印字質量高且清晰;可靈活方便地改變字符尺寸和字體;印刷采用普通紙,還可利用這種打印機直接在某些產品上印字;字符和圖形形成過程中無機械磨損,印字能耗小;打印速度可達500字符/秒。廣泛應用的有電荷控制型(高壓型)和隨機噴墨型(負壓型)噴墨技術,近年來又出現了干式噴墨印刷技術。②熱敏式打印機。通過印字頭點電阻的脈沖電流產生的熱傳到熱敏紙上,使其受熱變色,從而印出字符和圖像。主要優點是無噪聲、結構簡單、重量輕、印字清晰。缺點是速度慢、字跡保存性差。

行式點陣字符非擊打式打印機主要有激光、靜電、磁式和發光二極管式打印機。①激光打印機。激光源發出的激光束經由字符點陣信息控制的聲光偏轉器調制后,進入光學系統,通過多面棱鏡對旋轉的感光鼓進行橫向掃描,于是在感光鼓上的光導薄膜層上形成字符或圖像的靜電潛像,再經過顯影、轉印和定影,便在紙上得到所需的字符或圖像。主要優點是打印速度快,可達20000行/分鐘以上;印字的質量高、噪聲小;可采用普通紙;可印刷字符、圖形和圖像。由于打印速度快,宏觀上看,就像每次打印一頁,故又稱頁式打印機。②靜電打印機。將脈沖電壓直接加在具有一層電介質材料的特殊紙上,以便在電介質上獲得靜電潛像,經顯影、加熱定影形成字符和圖像。它的優點是印刷質量高、字跡不退色、可長期保存、生成潛像的功耗小、無噪聲、簡單可靠。但需使用特殊紙,且成本高。③磁式打印機。它是電子復印技術的應用和發展。采用磁敏介質形成字符潛像,不需要高功率激光源,其優點是對濕度和溫度變化不敏感;印刷速度可達8000 行/分鐘;結構簡單、成本低。④發光二極管式打印機。除采用發光二極管作光源外,其工作原理與激光打印機類似。由于采用了發光二極管,所以降低了成本、減小了功耗。

3.2.5 I/O總線與I/O接口

1.I/O總線

總線的英文名字是“BUS”,它指的是計算機各部件之間傳輸信息的一組公用的信號線及相關控制電路。前面曾經介紹過CPU總線(前端總線),這里要介紹的是I/O總線,也叫做主板總線,它是各類I/O設備控制器與CPU、存儲器之間相互交換信息、傳輸數據的一組公用信號線,這些信號線與主板上擴充插槽中的各擴充板卡(I/O控制器)直接連接。

I/O總線上有三類信號:數據信號、地址信號和控制信號,負責傳輸這些信號的線路分別稱為數據線、地址線和控制線。協調與管理總線操作的是總線控制器,總線控制器包含在主板的芯片組內。

總線最重要的性能是它的數據傳輸速率,也稱為總線的帶寬(BandWidth),即單位時間內總線上可傳輸的最大數據量。總線帶寬的計算公式如下:

總線帶寬(MB/s)=(數據線寬度/8)×總線工作頻率(MHz)×每個總線周期的傳輸次數

采用I/O總線結構對PC機的設計、生產和維護帶來了許多好處。例如,簡化了系統設計,降低了成本,便于故障診斷和維修,也便于系統的擴充升級,同時,總線的標準也使得市場上有大量兼容的I/O產品可供選擇。

隨著CPU速度的加快、I/O設備性能的提高,I/O總線的傳輸性能必須大幅度改進。除了擴充數據線的寬度之外,還應縮短I/O總線與CPU之間的距離,使總線的工作速度能跟上CPU的速度。于是,1991年起PC機開始使用一種稱為PCI的總線,它具有高性能(數據線寬度32位時傳輸速率為133MB/s,數據線寬度64位時傳輸速率為266MB/s)、低成本(引腳較少,節省空間)的優點,用于連接速度比較高的外部設備。近些年來,一種基于串行傳輸原理的性能更好的高速PCI總線(PCI-E)正在興起,很可能會逐步替代使用了多年的PCI總線。

2.I/O設備接口

前面已經說過,I/O設備與主機一般需要通過連接器實現互連,計算機中用于連接I/O設備的各種插頭/插座以及相應的通信規程及電氣特性,就稱為I/O設備接口,簡稱I/O接口。

PC機可以連接許多不同種類的I/O設備,所使用的I/O接口分為多種類型。從數據傳輸方式來看,有串行(一位一位地傳輸數據,一次只傳輸1位)和并行(8 位或者16 位、32位一起進行傳輸)之分;從數據傳輸速率來看,有低速和高速之分;從是否能連接多個設備來看,有總線式(可串接多個設備,被多個設備共享)和獨占式(只能連接1個設備)之分;從是否符合標準來看,有標準接口與專用接口之分。表3.2是PC機常用I/O接口的一覽表及其性能的對比。

表3.2 PC機常用I/O接口

3.3 微型計算機的性能指標

微型機的種類很多,根據計算機處理字長的不同有32位機和64位機之分。在選購計算機之前,需要了解其各項性能指標。不同用途的計算機,其側重面也不同。下面列出有關的主要性能指標。

1.字長

字長是指CPU能夠直接處理的二進制數的位數。它標志著計算機處理數據的精度,字長越長,精度越高。同時字長與指令長度也有一個對應關系,因而指令系統功能的強弱程度與字長有關。目前,一般的大型主機字長在128~256位之間,小型機字長在64~128位之間,微型機字長在32~64位之間。隨著計算機技術的發展,各種類型計算機的字長有加長的趨勢。

2.主頻(Main CLK)

主頻也就是CPU的時鐘頻率,其英文全稱是CPU Clock Speed,簡單地說也就是CPU運算時的工作頻率。一般來說,主頻越高,一個時鐘周期里完成的指令數也越多,當然CPU的速度也就越快。不過由于各種各樣的CPU的內部結構不盡相同,所以并非所有時鐘頻率相同的CPU的性能都一樣。主頻的單位是MHz或GHz,微處理器Pentium 4的主頻為1024MHz,即1GHz。主頻是計算機的主要性能技術指標,不要把CPU的時鐘頻率簡單地等同于計算機的運算速度。例如:Intel Pentium Ⅲ 1.13GB表示英特爾公司生產的Pentium Ⅲ,主頻為1.13GHz;Intel Pentium Ⅳ 2.4GB表示英特爾公司生產的Pentium Ⅳ,主頻為2.4GHz。外頻就是系統總線的工作頻率。倍頻則是指CPU外頻與主頻相差的倍數。

三者關系十分密切:主頻=外頻×倍頻。

3.內存總線速度(Memory-Bus Speed)

存放在外存上的數據都要通過內存進入CPU進行處理。所以CPU與內存之間的總線的速度對整個系統性能有很重要的影響,由于內存和CPU之間的運行速度或多或少會有差異,因此便出現了二級緩存來協調兩者之間的差異,而內存總線速度就是指CPU與二級高速緩存(L2 Cache)及內存三者之間的通信速度。

4.內存容量

任何程序和數據的讀/寫都要通過內存,內存容量的大小反映了存儲程序和數據的能力,也反映了信息處理能力的強弱。存儲容量越大,所運行的軟件的速度越快。在微機上流行的Windows系列軟件,一般需要較大的內存容量。

內存的性能指標如下:

(l)存儲容量。即一根內存條可以容納的二進制數的信息量,如目前常用的內存條的存儲容量一般多為512MB、1GB或2GB。

(2)存儲器的可靠性。存儲器的可靠性用平均故障的間隔時間來衡量,可以理解為兩次故障之間的平均時間間隔。

(3)性能價格比。性能主要包括存儲器容量、存儲周期和可靠性三項內容,性能價格比是一個綜合性指標,對于不同的存儲器有不同的要求。

5.外設配置

外設配置是指計算機的輸入/輸出設備、多媒體部件以及外存儲器等的配置情況。其中主要有:鍵盤的按鍵數及它是否是多功能鍵盤;顯示器和打印機的種類和性能指標;光盤驅動器是CD-ROM還是DVD,速度是多少;聲卡和音響的種類和聲道數;計算機是否配置有USB或者IEEE 1394接口等。

6.軟件配置

由于目前微型機的種類很多,特別是各種兼容機種類繁多,因此,在選購微型機時,應考慮兼容性。一般微型機之間的兼容性包括軟盤格式、接口、硬件總線、鍵盤形式、操作系統和I/O規范等方面。

以上列出了微型機一些主要的性能指標。顯然,微型機的優劣不能根據一兩項指標來評定,而是需要綜合考慮經濟合理、使用效率及性能價格比等多方面因素,以滿足應用需求為目的。

3.4 計算機軟件系統

3.4.1 計算機軟件的概念

計算機軟件指的是以計算機可以識別和執行的操作所表示的處理步驟和有關文檔,要告訴計算機做些什么,按什么方法、步驟去做,人們必須把有關的處理步驟告訴計算機。把計算機可以識別和執行的操作所表示的處理步驟稱為程序,簡言之,軟件=程序+文檔。

1.計算機程序

我國頒布的《計算機軟件保護條例》對程序的概念給出了更為精確的描述:“計算機程序是指為了得到某種結果而可以由計算機等具有信息處理能力的裝置執行的代碼轉化指令序列,或者可被自動地轉換成代碼化指令序列的符號化序列,或者符號化語句序列。”

2.文檔

文檔是指用自然語言或者形式化語言所編寫的用來描述程序的內容、組成、設計、功能規格、開發情況、測試結構和使用方法的文字資料和圖表,如程序設計說明書、流程圖、用戶手冊等。

文檔不同于程序。程序是為了裝入機器以控制計算機硬件的動作,實現某種過程,得到某種結果而編制的;而文檔是供有關人員閱讀的,通過文檔人們可以清楚地了解程序的功能、結構、運行環境、使用方法,從而方便人們使用軟件、維護軟件。因此在軟件概念中,程序和文檔是一個軟件不可分割的兩個方面。

自從在第一臺計算機上誕生第一個程序直到現在,計算機軟件已經發展成為一個龐大的系統。從應用的觀點看,軟件可以分為三大類,即系統軟件、支撐軟件和應用軟件,如圖3.14所示。

圖3.14 軟件系統結構示意圖

3.4.2 計算機軟件的分類

1.系統軟件

系統軟件是計算機系統中最靠近硬件的軟件。它與具體的應用無關,是軟件系統的核心。其他軟件一般都通過系統軟件發揮作用。

系統軟件是指那些參與構成計算機系統,供用戶直接使用以擴展計算機硬件功能,管理協調整個系統,彌補用戶的操作習慣與計算機硬件和計算機設備的操作方法之間的鴻溝的軟件。系統軟件與具體應用領域無關,它的功能主要是對計算機硬件和軟件進行管理,以充分發揮這些設備的效力,方便用戶的使用,為應用開發人員提供平臺支持。如操作系統、程序設計語言、編譯系統、網絡軟件、數據庫管理系統及各種軟件開發工具都屬于系統軟件,操作系統、程序設計語言是系統軟件的典型代表。

計算機是一個高速運轉的復雜系統:有CPU、內存儲器、外存儲器,以及各種各樣的輸入、輸出設備,通常將其稱為硬件資源;它的多個用戶可以同時在計算機上運行他們各自的程序,共享大量數據,通常將其稱為軟件資源。如果沒有一個對這些資源進行統一管理的軟件,計算機不可能協調一致、高效率地完成用戶交給它的任務。

從資源管理的角度來看,操作系統是為了合理、方便地利用計算機系統對其硬件資源和軟件資源進行統一管理的軟件。它是系統軟件中最基本的一種軟件,也是每個使用計算機的人員必須學會使用的一種軟件。

2.支撐軟件

支撐軟件是支持其他軟件的編制和維護的軟件。隨著計算機應用的發展,軟件的編制和維護在整個計算機系統中所占的比重已遠遠超過硬件。從提高軟件的生產率,保證軟件的正確性、可靠性和易于維護性來看,支撐軟件在軟件開發中占有重要地位。當然,廣義地講,可以把操作系統看做是支撐軟件,或者把支撐軟件看做是系統軟件的一部分。但是20 世紀70年代后期發展起來的軟件支撐環境已和原來意義下的系統軟件有很大的不同,它主要包括環境數據庫和各種工具,如測試工具、編輯工具、項目管理工具、數據流圖編輯器、語言轉換工具、界面生成工具等。

3.應用軟件

應用軟件是為計算機在特定領域中的應用而開發的專用軟件,如各種管理信息系統、飛機訂票系統、地理信息系統等。應用軟件包括的范圍是極其廣泛的,可以這樣說,哪里有計算機應用,哪里就有應用軟件。應用軟件不同于系統軟件,系統軟件是利用計算機本身的邏輯功能,合理地組織用戶使用計算機的軟、硬件資源,以充分利用計算機的資源,最大限度地發揮計算機效率,便于用戶使用、管理為目的。而應用軟件是用戶利用計算機和它所提供的系統軟件,為解決自身的、特定的實際問題而編制的程序和文檔。

應當指出,軟件的分類并不是絕對的,而是相互交叉和變化的。例如,系統軟件和支撐軟件之間就沒有絕對的界限,所以習慣上也把軟件分為兩大類,即系統軟件和應用軟件。

在應用軟件發展初期,應用軟件主要是由用戶自己開發的各種應用程序。隨著應用程序數量的增加和人們對應用程序認識的深入,一些人組織起來,把具有一定功能的、可以滿足某類應用要求、可以解決某類應用領域中各種典型問題的應用程序,經過標準化、模塊化后組合在一起,形成某種應用軟件包。應用軟件包的出現不僅減少了應用軟件編制過程中的重復性工作,而且它們一般都是以商品形式出現的,有著很好的用戶界面,只要它所提供的功能能夠滿足使用的要求,用戶無須再自己動手編寫程序就可以直接使用。而在數據管理中形成的有關數據管理的軟件已經從一般的應用軟件中分化出來形成了一個新的分支,特別是數據庫管理系統,目前人們已不再把它當成一般的應用軟件,而是視為一種新的系統軟件。

隨著計算機應用領域的不斷擴大,應用軟件也日益增多。如辦公信息化系統、計算機輔助設計(CAD)、計算機輔助制造(CAM)、計算機輔助教學(CAI)、計算機輔助測試(CAT)、翻譯軟件、游戲軟件等。

3.4.3 操作系統

操作系統是硬件與所有其他軟件之間的接口,是整個計算機系統的控制和管理中心。操作系統是控制其他程序運行,管理系統資源并為用戶提供操作界面的系統軟件的集合。

操作系統的形態多樣,不同類型計算機中安裝的OS也不相同,如手機上的嵌入式操作系統和超級電腦上的大型操作系統等。操作系統的研究者對OS的定義也不一致,例如有些OS集成了圖形化使用者界面,而有些OS僅使用文本接口,而將圖形界面視為一種非必要的應用程序。

1.操作系統的功能

(1)進程管理。進程管理主要是對處理器進行管理。CPU是計算機系統中最寶貴的硬件資源。為了提高CPU的利用率,操作系統采用了多道程序技術。當一個程序因等待某一條件而不能運行下去時,就把處理器占用權轉交給另一個可運行程序。或者,當出現了一個比當前運行的程序更重要的可運行的程序時,后者應能搶占CPU。為了描述多道程序的并發執行,就要引入進程的概念。通過進程管理協調多道程序之間的關系,解決對處理器實施分配調度策略、進行分配和進行回收等問題,以使CPU資源得到最充分的利用。正是由于操作系統對處理器管理策略的不同,其提供的作業處理方式也就不同,從而呈現在用戶面前的就是具有不同性質的操作系統。例如批處理方式、分時處理方式和實時處理方式等。

(2)存儲管理。存儲管理主要管理內存資源。隨著存儲芯片的集成度不斷地提高、價格不斷地下降,一般而言,內存整體的價格已經不再昂貴了。不過受CPU尋址能力以及物理安裝空間的限制,單臺機器的內存容量也還是有一定限度的。當多個程序共享有限的內存資源時,會有一些問題需要解決,比如,如何為它們分配內存空間,同時,使用戶存放在內存中的程序和數據彼此隔離、互不侵擾,又能保證在一定條件下共享等問題,都是存儲管理的范圍。當內存不夠用時,存儲管理必須解決內存的擴充問題,即將內存和外存結合起來管理,為用戶提供一個容量比實際內存大得多的虛擬存儲器。操作系統的這一部分功能與硬件存儲器的組織結構密切相關。

(3)文件管理。系統中所有的信息資源(如程序和數據)是以文件的形式存放在外存儲器(如磁盤、光盤和磁帶)上的,需要時再把它們裝入內存。文件管理的任務是有效地支持文件的存儲、檢索和修改等操作,解決文件的共享、保密和保護問題,以使用戶方便、安全地訪問文件。操作系統一般都提供很強的文件系統。

(4)作業管理。操作系統應該向用戶提供使用它自己的手段,這就是操作系統的作業管理功能。按照用戶觀點,操作系統是用戶與計算機系統之間的接口。因此,作業管理的任務是為用戶提供一個使用系統的良好環境,使用戶能有效地組織自己的工作流程,并使整個系統能高效地運行。

(5)設備管理。操作系統應該向用戶提供設備管理服務。設備管理是指對計算機系統中所有輸入輸出設備(外部設備)的管理。設備管理不僅涵蓋了進行實際I/O操作的設備,還涵蓋了諸如設備控制器、通道等輸入輸出支持設備。

除了上述功能之外,操作系統還要具備中斷處理、錯誤處理等功能。操作系統的各功能之間并非是完全獨立的,它們之間存在著相互依賴的關系。

2.操作系統的分類

(1)批處理操作系統。用戶一般不直接操縱計算機,而是將作業提交給系統操作員。操作員將作業成批地裝入計算機,操作系統將作業按規定的格式存儲在磁盤的某個區域,然后按照某種調度策略選擇一個或幾個作業調入內存加以處理。內存中多個作業交替執行,處理步驟事先由用戶設定,作業的結果由操作系統按作業統一加以輸出,由操作員將作業運行結果交給用戶。

(2)分時操作系統。分時系統允許多個用戶同時聯機使用計算機,一臺分時計算機系統連有若干臺終端,多個用戶可以在各自的終端上向系統發出服務請求,等待計算機的處理結果并決定下一步的處理。操作系統接收每個用戶的命令,采用時間片輪轉的方式處理用戶的服務請求。

(3)實時操作系統。系統能夠及時響應隨機發生的外部事件,并在嚴格的時間范圍內完成對該事件的處理。實時系統作為一個特定應用中的控制設備來使用,具有及時響應和高可靠性的優點。一般分為兩類:實時控制系統和實時信息處理系統。

(4)單用戶操作系統。單用戶操作系統是隨著微機的發展而產生的,用來對一臺計算機的硬件和軟件資源進行管理,通常分為單用戶單任務和單用戶多任務兩種類型。

單用戶單任務操作系統的主要特點是:在一個計算機系統內,一次只能運行一個用戶程序,此用戶獨占計算機系統的全部硬件和軟件資源。常用的單用戶單任務操作系統有MS-DOS、PC-DOS等。

單用戶多任務操作系統也是為單個用戶服務的,但它允許用戶一次提交多項任務。例如,用戶可以在運行程序的同時開始另一文檔的編輯工作,邊聽音樂邊打字也是典型的例子。常用的單用戶多任務操作系統有OS/2、Windows系統等,這類操作系統通常用在微型計算機系統中。

(5)網絡操作系統。計算機網絡是通過通信設施將地理上分散的具有獨立功能的多個計算機系統互連起來,實現信息交換,資源共享,互操作和協作處理的系統。網絡操作系統就是在原來的各自計算機系統操作上,按照網絡體系結構的各個協議標準進行開發,使之包括網絡管理、通信、資源共享、系統安全和多種網絡應用服務的操作系統。

(6)分布式操作系統。與網絡操作系統類似,但分布式系統要求一個統一的操作系統,實現系統操作的統一性,分布式操作系統管理系統中所有資源,它負責全系統的資源分配和調度,任務劃分,信息傳輸控制協調工作,并為用戶提供一個統一的界面。具有統一界面資源、對用戶透明等特點。

(7)嵌入式操作系統。嵌入式操作系統(EmbeddedOperating System)是運行在嵌入式系統環境中,對整個嵌入式系統以及它所操作、控制的各種部件裝置等資源進行統一協調、調度、指揮和控制的系統軟件,具有實時高效性、硬件的相關依賴性、軟件固態化以及應用的專用性等特點。比較典型的嵌入式操作系統有Palm OS、WinCE、Linux等。

3.典型的操作系統

目前最常用的操作系統有Windows、UNIX和Linux。在20世紀80年代和90年代初,DOS曾經是最常用的操作系統之一。

(1)DOS。DOS是磁盤操作系統(Disk Operating System)的縮寫,它是一個單用戶、單任務的操作系統,是曾經最為流行的個人計算機操作系統。DOS的主要功能是進行文件管理和設備管理,比較典型的DOS操作系統是微軟公司MS-DOS。

自從DOS在1981年問世以來,版本就不斷更新,從最初的DOS 1.0升級到了最新的DOS 8.0(Windows ME系統),純DOS的最高版本為DOS 6.22,這以后的新版本DOS都是由Windows系統所提供的,并不單獨存在。DOS的優點是快捷,熟練的用戶可以通過創建BAT或CMD批處理文件完成一些煩瑣的任務。因此,即使在Windows XP操作系統下CMD也是高手的最愛。

(2)UNIX/Xenix。UNIX是一個強大的多用戶、多任務操作系統,支持多種處理器架構,按照操作系統的分類,屬于分時操作系統。最早由Ken Thompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的貝爾實驗室開發。由于UNIX具有技術成熟、結構簡練、可靠性高、可移植性好、可操作性強、網絡和數據庫功能強、伸縮性突出和開放性好等優點,可滿足各行各業的實際需要,特別能滿足企業重要業務的需要,已經成為主要的工作站平臺和重要的企業操作平臺。它主要安裝在巨型計算機、大型機上作為網絡操作系統使用,也可用于個人計算機和嵌入式系統。曾經是服務器操作系統的首選,占據最大市場份額,但最近在跟Windows Server以及Linux的競爭中有所失利。

Xenix是Microsoft公司與SCO公司聯合開發的基于INTEL80x86系列芯片系統的微機Unix版本。由于開始沒有得到AT&T的授權,所以另外起名叫Xenix,采用的標準是AT&T的UNIX SVR3(System V Release 3)。

(3)Linux。Linux是一類UNIX計算機操作系統的統稱,Linux操作系統也是自由軟件和開放源代碼發展中最著名的例子。過去,Linux主要被用作服務器的操作系統,但因它的廉價、靈活性及UNIX背景使得它很適合做更廣泛的應用。傳統上有以Linux為基礎的“LAMP(Linux、Apache、MySQL、Perl/PHP/Python的組合)”經典技術組合,提供了包括操作系統、數據庫、網站服務器、動態網頁的一整套網站架設支持。而面向更大規模級別的領域中,如數據庫中的Oracle、DB2、PostgreSQL、以及用于Apache的Tomcat JSP等都已經在Linux上有了很好的應用樣本。

Linux與其他操作系統相比是個后來者,但Linux具有兩個其他操作系統無法比擬的優點。其一,Linux具有開放的源代碼,能夠大大降低成本。其二,既滿足了手機制造商根據實際情況有針對性地開發自己的Linux手機操作系統的要求,又吸引了眾多軟件開發商對內容應用軟件的開發,豐富了第三方應用。

(4)Windows。Windows是微軟公司推出的視窗電腦操作系統,支持鍵鼠功能,默認的平臺是由任務欄和桌面圖標組成的。隨著電腦硬件和軟件系統的不斷升級,微軟的Windows操作系統也在不斷升級,從16位、32位到64位操作系統。從最初的Windows 1.0到大家熟知的Windows 95、NT、97、98、2000、Me、XP、Server、Vista、Windows 7各種版本的持續更新,微軟一直在盡力于Windows操作系統的開發和完善。

3.4.4 程序設計語言和語言處理程序

著名的語言學家韋伯斯特(Webster)給語言下的定義是:“語言是為相當大團體的人所懂得并使用的字以及組合這些字的方法的統一體”,這個定義揭示了語言的兩個要素:詞法和語法。

語言是人們交流思想、傳達信息的工具。中國人使用漢語,英國人、美國人使用英語,日本人使用日語等。這些語言是在人類歷史的長期發展過程中逐步形成的,我們稱之為自然語言(Natural Language)。

1.程序設計語言

為了告訴計算機應當做什么和如何做,必須把處理問題的方法、步驟以計算機可以識別和執行的操作表示出來,也就是說要編制程序。這種用于書寫計算機程序的語言稱為程序設計語言。

程序設計語言按語言級別有低級語言和高級語言之分,具體來講,可分為機器語言、匯編語言和高級語言三類。低級語言包括機器語言和匯編語言。

(1)機器語言。機器語言是以二進制代碼形式表示的機器基本指令的集合,是計算機硬件唯一可以直接識別和執行的語言。它的特點是運算速度快,每條指令都是0和1的代碼串,指令代碼包括操作碼和地址碼。此外,計算機不同,其機器語言也不同,而且機器語言難閱讀、難修改。

(2)匯編語言。匯編語言和機器語言一樣,都是面向機器的低級語言,其特點是與特定的機器有關,工作效率高,但與人們思考問題和描述問題的方法相距太遠,使用煩瑣、費時,易出差錯,要求使用者熟悉計算機的內部細節,非專業的普通用戶很難使用。

匯編語言是為了解決機器語言難于理解和記憶的問題,用易于理解和記憶的名稱和符號表示的機器指令。匯編語言雖比機器語言直觀,但基本上還是一條指令對應一項基本操作,對同一問題編寫的程序在不同類型的機器上仍然不能通用。

(3)高級語言。高級語言是人們為了解決低級語言的不足而設計的程序設計語言。它由一些接近于自然語言和數學語言的語句組成。因此,它更接近于要解決的問題的表示方法,并在一定程度上與機器無關。用高級語言編寫程序,接近于自然語言和數學語言,故易學、易用、易維護。但是,由于機器硬件不能直接識別高級語言中的語句,因此用高級語言編寫的程序必須經“翻譯程序”翻譯成機器語言的程序,才能被執行。一般來說,高級語言的編程效率高,但執行速度沒有低級語言快。

高級語言的設計是很復雜的,因為它必須滿足兩種不同的需要:一方面,它要滿足程序設計人員的需要,用它可以方便自然地描述現實世界中的問題;另一方面,還要能構造出高效率的翻譯程序,能夠把語言中的所有內容翻譯成高效的機器指令。從20世紀50年代中期第一種實用的高級語言誕生以來,人們曾設計出幾百種高級語言。目前最常用的高級語言有FORTRAN語言、COBOL語言、BASIC語言、C語言、PROLOG語言等。隨著面向對象和可視化編程技術的發展,出現了像Smalltalk、C++、Java等面向對象程序設計語言和像Visual Basic、Visual C++、Delphi等可視化程序開發工具。

2.語言處理程序

語言處理程序是一種程序轉換工具,它可以把用一種程序設計語言表示的程序轉換為與之等價的用另一種程序設計語言表示的程序。在計算機軟件中,經常用到的語言處理程序是把匯編語言或高級語言“翻譯”成機器語言的翻譯程序。被翻譯的程序稱為源程序或源代碼,經過翻譯程序“翻譯”出來的結果程序稱為目標程序。

翻譯程序有兩種典型的實現途徑,分別稱為解釋方式(如圖3.15所示)和編譯方式(如圖3.16所示)。

圖3.15 解釋過程示意圖

圖3.16 編譯過程示意圖

(1)解釋方式。解釋方式是按照源程序中語句的執行順序,逐條翻譯語句并立即予以執行。即由事先置入計算機中的解釋程序將高級語言源程序的語句逐條翻譯成機器指令,翻譯一條執行一條,直到程序全部翻譯執行完為止。解釋方式類似于不同語言的口譯工作。翻譯員(解釋程序)拿著外文版的說明書(源程序)在車間現場對操作員做現場指導。對說明書上的語句,翻譯員逐條翻譯給操作員聽;操作員根據聽到的話(他能懂的語言)進行操作。翻譯員每翻譯一句,操作員就執行該句規定的操作。翻譯員翻譯完全部說明書,操作員也執行完所需的全部操作。由于未保留翻譯的結果,若需再次操作,仍要由翻譯員一邊翻譯,操作員一邊操作。

(2)編譯方式。編譯方式是先由翻譯程序把源程序靜態地翻譯成目標程序,然后再由計算機執行目標程序。這種實現途徑可以劃分為兩個明顯的階段,前一階段稱為生成階段,后一階段稱為運行階段。采用這種途徑實現的翻譯程序,如果源語言是一種高級語言,目標語言是某一計算機的機器語言或匯編語言,則這種翻譯程序稱為編譯程序。如果源語言是計算機的匯編語言,目標語言是相應計算機的機器語言,則這種翻譯程序稱為匯編程序。

編譯方式類似于不同語言的筆譯工作。例如,某國制作了某個劇本(源程序),我們計劃在國內上演。首先須由懂得該國語言的翻譯(編譯程序)把該劇本筆譯成中文版本(目的程序),翻譯工作結束。得到了中文版本后,才能交給演出單位(計算機)去演(執行)這個中文版本(目的程序)。在后面的演出(執行)階段,并不需要原來的外文劇本(源程序),也不需要翻譯(編譯程序)。

3.4.5 數據管理

計算機應用從科學計算進入到數據處理是一個跨時代的轉折。信息在計算機中有兩種不同方法進行保存:永久性的系統文件和數據庫系統。文件方式存在的問題很多,如數據的冗余和不一致、數據訪問困難、數據孤立、完整性問題、原子性問題、并發訪問異常和安全性問題。而數據庫系統能較好的解決這些問題。數據庫系統具有數據的獨立性、有效地訪問數據、減少應用程序的開發時間、數據的一致性和安全性、統一的數據管理和并發的數據訪問等特點。

1.數據庫系統的基本概念

(1)數據(Data)。數據是描述現實世界事物的符號記錄,是用物理符號記錄的可以鑒別的信息。物理符號有多種表現形式,包括:數字、文字、圖形、圖像、聲音及其他特殊符號。數據的各種表現形式都可以通過數字化后存入計算機。

(2)數據庫(Database,DB)。數據庫是長期存儲在計算機內的有組織的、可共享的數據集合。

(3)數據庫管理系統(Database Management System,DBMS)。數據庫管理系統是位于用戶與操作系統之間的一個數據管理軟件,它的基本功能包括數據定義功能、數據操縱功能、數據庫的運行管理功能及數據庫的建立和維護功能。

(4)數據庫系統(Database System,DBS)。數據庫系統是指在計算機系統中引入數據庫后構成的系統。一般由數據庫、操作系統、數據庫管理系統(及其開發工具)、應用系統、數據庫管理員和用戶構成。應當指出的是,數據庫的建立、使用和維護等工作只有DBMS遠遠不夠,還要有專門的數據庫管理員(Database Administrator,DBA)來完成。

2.數據庫系統的組成

數據庫系統DBS(Database System)是數據庫、由硬件、軟件和用戶4部分構成整體。

(1)數據庫。數據庫是數據庫系統的核心,是存儲在一起的相互有聯系的數據集合。數據庫中的數據是集成的、共享的、最小冗余的、能為多種應用服務。數據是按照數據模型所提供的形式框架存放在數據庫中。

(2)硬件。數據庫系統是建立在計算機系統上的,運行數據庫系統的計算機需要有足夠大的內存以存放系統軟件、需要足夠大容量的磁盤等聯機直接存取設備存儲數據庫龐大的數據。需要足夠的脫機存儲介質(磁盤、光盤、磁帶等)以存放數據庫備份。需要較高的通道能力,以提高數據傳送速率。要求系統聯網,以實現數據共享。

(3)軟件。數據庫軟件主要是指數據庫管理系統DBMS(Database Management System)。

DBMS是為數據庫存取、維護和管理而配置的軟件,它是數據庫系統的核心組成部分,DBMS在操作系統支持下工作。DBMS主要包括數據庫定義功能、數據操縱功能、數據庫運行和控制功能、數據庫建立和維護功能、數據通信功能。

(4)用戶。數據庫系統中存在一組管理(數據庫管理員DBA)、開發(應用程序員)、使用數據庫(終端用戶)的用戶。

3.數據模型

數據庫系統開發過程是首先進行問題分析和需求分析,然后用數學方法分析問題,對實際問題適當簡化后建立數學模型,找出主要變量及變量之間的關系,用科學的方法構造分析實際問題模型,再用工程的方法實現和測試所實現的系統。

數據建模,就是從實際問題出發,通過抽象概括,建立數學模型,再通過對模型的分析研究返回到實際問題中去認識問題、解決問題的方法。

1)數據模型的定義

數據模型是數據庫系統中用以描述數據與數據之間關系、數據語義和數據約束的工具,是用戶和數據庫之間相互交流的工具。

數據模型必須真實地模擬現實世界,容易被用戶理解,在計算機上容易實現。用戶在進行數據庫操作時,只要按照數據庫所提供的數據模型,使用相關的數據描述和操作語言就可以把數據存入數據庫,而無須了解計算機是如何管理這些數據的細節。

開發數據庫應用系統時分兩個層次建立數據模型,一個是面向事務用戶的概念數據模型,也稱實體模型;另一個是面向計算機的數據模型。

2)概念模型

概念模型也稱為信息模型,從用戶觀點出發,將管理對象的客觀事物及他們之間的聯系,用容易為人所理解的語言或形式表述出來,實現事物從客觀世界到計算機世界的表示轉換。概念模型要能準確、方便的表示概念世界,E-R圖(實體聯系圖)是對概念模型進行描述的一種有效工具。圖3.17描述了學生實體集和課程實體集的E-R圖。

圖3.17 學生和課程的E-R圖

3)計算機數據模型

數據庫系統不能直接處理概念模型,因此需要把概念數據模型轉換成計算機能處理的數據模型,即把概念模型中的實體及實體之間的聯系以計算機規定的方式表示,標識出需要在數據庫中存儲的內容,并定義這些數據的結構關系。

計算機數據模型簡稱為數據模型,將要管理的現實世界,用人們構造的標記系統進行描述,即使用便于計算機處理的方式描述出來,主要包括網狀模型、層次模型、關系模型等。

關系模型:將存放在數據庫中的數據和它們之間的聯系看做一張張二維表。這與我們日常習慣很接近。

層次模型:把數據之間的關系納入一種一對多的層次框架來加以描述。例如學校、企事業單位的組織結構就是一種典型的層次結構。層次模型對于表示具有一對多聯系的數據是很方便的,但要表示多對多聯系需要采用分解的方法間接實現。

網狀模型:可方便、靈活地描述非層次關系,能夠更直接地描述現實世界,具有良好的性能,存取效率高。

由于關系模型概念清晰、結構簡單、運算規范而得到廣泛應用。目前微型機上常用的數據庫管理軟件都支持關系模型。

4.關系模型

1)關系的定義

關系模型中最基本的概念是關系(Relation)。表3.3給出的工資表就是一個關系。

表3.3 工資表

并非任何一個二維表都是一個關系。只有具備以下特征的二維表才是一個關系。

● 表中沒有組合的列,也就是說每一列都是不可再分的。

● 表中每一列的所有數據都屬于同一種類型。

● 表中各列都指定了一個不同的名字。

● 表中沒有數據完全相同的行。

● 表中行之間順序位置的調換和列之間位置的調換不影響它們所表示的信息內容。

具有上述特征的二維表稱為規范化的二維表。如不做特殊說明文中提到的二維表均是規范化的二維表。

2)基本概念

關系:一個關系就是一張二維表,每個關系有一個關系名。在計算機里,一個關系可以存儲為一個文件。

元組:表中的行稱為元組。一行為一個元組,對應存儲文件中的一個記錄值。

屬性:表中的列稱為屬性,每一列有一個屬性名。屬性值相當于記錄中的數據項或者字段值。

域:屬性的取值范圍,即不同元組對同一個屬性的值所限定的范圍。

關系模式:對關系的描述稱為關系模式。

格式為:關系名(屬性名1,屬性名2,…,屬性名n)

一個關系模式對應一個關系文件的結構。

例如:R(SNO,SNAME,SEX,BIRTHDAY,CLASS)

關鍵字(或碼):屬性或屬性組合,其值能夠唯一地標示一個元組。

主關鍵字(或主碼):在一個關系中可能有多個候選關鍵字,從中選擇一個作為主關鍵字。主關鍵字在關系中用來作為插入、刪除、檢索元組的區分標志。

外關鍵字(或外碼):如果一個關系中的屬性或屬性組并非該關系的關鍵字,但它們是另外一個關系的關鍵字,則稱其為該關系的外關鍵字。

一般來說,屬性值構成記錄,記錄構成關系。即一個關系描述現實世界的對象集,關系中的一個記錄描述現實世界中的一個具體對象,它的屬性值則描述了這個對象的屬性。一個記錄是由該行全體屬性值組成,記錄的全體組成了一個關系。

3)三種關系運算

我們把數據存入數據庫是為了方便地使用這些數據。關系數據庫管理系統為了便于用戶使用,向用戶提供了可以直接對數據庫進行操作的查詢語句。這種查詢語句可以通過對關系(即二維表)的一系列運算來實現。

關系數據庫系統至少應支持三種關系運算,即選擇、投影和連接。

● 選擇:從二維表中選出符合條件的記錄,它是從行的角度對關系進行的運算。

● 投影:從二維表中選出所需要的列,它是從列的角度對關系進行的運算。

● 連接:同時涉及兩個二維表的運算,它是將兩個關系在給定的屬性上滿足給定條件的記錄連接起來而得到的一個新的關系。

5.數據庫應用系統的開發

數據庫應用系統(Database Application Systems,DBAS)一般是指幫助用戶建立、使用和管理數據庫的軟件系統。

DBAS的開發步驟可按照軟件工程的思想進行,一般應先確定軟件所需要的DBMS,然后可根據下面的步驟進行設計。

(1)需求分析。需求分析應包括兩方面的主要分析,一是數據需求分析;二是功能需求分析。數據需求分析的結果可導出數據庫的設計,而功能需求分析的結果是實現應用程序設計的基礎。

(2)數據庫設計。數據庫的設計可以根據需求分析的內容按以下三個階段進行:概念結構設計—邏輯結構設計—數據庫物理設計。

概念結構設計是整個數據庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型,一般用E-R圖表示概念模型。

邏輯結構設計是將概念結構轉化為選定的DBMS所支持的數據模型,并使其在功能、性能、完整性約束、一致性和可擴充性等方面均滿足用戶的需求。

數據庫的物理設計是為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法),即利用選定的DBMS提供的方法和技術,以合理的存儲結構設計一個高效的、可行的數據庫物理結構。

(3)應用程序設計。可采用概要設計—詳細設計—編碼這三個階段進行。這與前面的軟件工程提到的理論是一致的。

(4)測試。在測試過程中,既要測試數據庫的性能,也要測試應用程序的性能。在這一部分中用戶的需求,特別是對數據庫性能的需求的測試是最為關鍵的。

(5)維護。在用戶使用過程中,既要對數據庫進行維護,也要對應用程序進行維護。有時數據庫維護的工作量要遠遠大于應用程序的維護。

習題

一、選擇題

1.一個完整的計算機體系包括______。

A.主機、鍵盤和顯示器

B.計算機與外部設備

C.硬件系統和軟件系統

D.系統軟件與應用軟件

2.完整的計算機硬件系統一般包括外部設備和______。

A.運算器和控制器

B.存儲器

C.主機

D.中央處理器

3.通常將微型計算機的運算器、控制器及內存儲器稱為______。

A.CPU

B.微處理器

C.主機

D.微機系統

4.關于微型計算機知識的敘述正確的是______。

A.外存儲器中的信息不能直接進入CPU進行處理

B.CD-ROM是可讀、可寫的

C.USB接口不支持熱插拔

D.Cache比CPU和內存的速度都慢

5.計算機的內存儲器比外存儲器______。

A.更便宜

B.存儲容量更大

C.存儲速度快

D.雖貴但能存儲更多信息

6.當前微型計算機的主存儲器可分為______。

A.內存與外存

B.RAM與ROM

C.軟盤與硬盤

D.磁盤與磁帶

7.微型計算機中運算器的主要功能是進行______。

A.算術運算

B.邏輯運算

C.算術和邏輯運算

D.初等函數運算

8.閃存是______。

A.一種新型的PROM內存

B.一種新型的EEPROM內存

C.一種新型的RAM內存

D.一種新型的EPROM內存

9.在下列設備中,______屬于輸出設備。

A.顯示器

B.鍵盤

C.鼠標

D.微機系統

10.微型計算機系統采用總線結構對CPU、存儲器和外部設備進行連接。總線通常由三部分組成,它們是______。

A.邏輯總線、傳輸總線和通信總線

B.地址總線、運算總線和邏輯總線

C.數據總線、信號總線和傳輸總線

D.數據總線、地址總線和控制總線

11.在計算機中,訪問速度最快的存儲器是______。

A.硬盤

B.軟盤

C.光盤

D.內存

12.采用PCI的奔騰計算機,其中的PCI是______。

A.產品型號

B.總線標準

C.計算機系統名稱

D.微處理器型號

13.配置高速緩沖存儲器(Cache)是為了解決______。

A.內存與輔助存儲器之間的速度不匹配問題

B.CPU與輔助存儲器之間的速度不匹配問題

C.CPU與內存儲器之間的速度不匹配問題

D.主機與外設之間的速度不匹配問題

14.在計算機系統中,軟件與硬件之間的關系是______。

A.相互獨立

B.相互依存,形成一個整體

C.有時相互依存,有時相互獨立

D.只要有一部分即可

15.計算機能直接識別的程序是______。

A.源程序

B.機器語言程序

C.匯編語言程序

D.低級語言程序

16.一般操作系統的主要功能是______。

A.對計算機系統的所有資源進行控制和管理

B.對匯編語言、高級語言程序進行翻譯

C.對高級語言程序進行翻譯

D.對數據文件進行管理

17.操作系統文件管理的主要功能是______。

A.實現虛擬存儲

B.實現按文件內容存取

C.實現文件的高速輸入輸出

D.實現按文件名存取

18.數據庫系統的核心是______。

A.數據庫

B.數據庫管理員

C.數據庫管理系統

D.文件

19.以下不是二維表的規范化規則的是______。

A.表中沒有組合的列

B.不能有相同的列

C.不能有相同的行

D.不能調換行的順序

20.下列敘述中正確的是______。

A.計算機中的可執行文件屬于硬件

B.計算機軟件是指存儲在軟盤中的程序

C.計算機每次啟動的過程之所以相同,是RAM中的所有信息在關機后不會丟失

D.硬盤雖然裝在主機箱內,但它屬于外存

二、填空題

1.計算機硬件系統五大基本組成部分為_____、_____、_____、_____和_____。

2.當前計算機中最常用的輸入、輸出設備有_____。

3.顯示器的主要技術指標有_____。

4.主板上的芯片組分為_____和_____。

5.CD-ROM的標準容量是_____。

6.USB接口具有熱插拔功能,可以支持多達_____個外設。

7.LCD指的是_____顯示器。

8.根據總線功能,總線可以分為_____、_____、_____。

9.計算機能直接執行的程序是_____。在機器內部是以_____編碼形式表示的。

10.操作系統可以分為_____、_____、_____、_____、_____、_____和_____。

11.在關系型數據庫中,每一個關系都是一個_____。

12.數據庫系統采用的數據庫模型有三種:即_____、_____和_____。

13.二維表中的列稱為關系的屬性,二維表中的行稱為關系的_____。

三、簡答題

1.什么是計算機硬件?什么是計算機軟件?

2.簡述計算機五大組成部分的名稱與主要功能。

3.簡述馮·諾依曼提出的計算機基本工作原理。

4.什么是指令?什么是計算機程序?

5.簡述輸入/輸出設備功能,計算機中常用的輸入/輸出設備有哪幾種?

6.主存儲器(內存)與輔助存儲器(外存)的區別是什么?

7.計算機的主要性能指標有哪幾個?

8.計算機軟件可分為哪幾類?簡述各類軟件的含義。

9.什么是程序設計語言?常用的程序設計語言有哪些?

10.高級語言為什么必須要有翻譯程序?翻譯程序的實現途徑有哪兩種?

11.試述數據、數據庫、數據庫管理系統、數據庫系統的概念。

12.簡述數據庫系統的組成。

13.數據模型主要有哪幾種?

主站蜘蛛池模板: 通城县| 无棣县| 襄垣县| 屯门区| 青川县| 灌云县| 深圳市| 安宁市| 拜城县| 顺义区| 金塔县| 岳普湖县| 将乐县| 宣化县| 宁陕县| 卢氏县| 济南市| 石楼县| 大兴区| 电白县| 大洼县| 石阡县| 逊克县| 年辖:市辖区| 克拉玛依市| 东莞市| 南皮县| 汶上县| 榕江县| 饶河县| 汝州市| 吉林省| 秭归县| 达日县| 金坛市| 衡阳县| 象州县| 银川市| 稷山县| 海门市| 东丰县|