計算機程序設(shè)計基礎(chǔ)教材_第1頁
計算機程序設(shè)計基礎(chǔ)教材_第2頁
計算機程序設(shè)計基礎(chǔ)教材_第3頁
計算機程序設(shè)計基礎(chǔ)教材_第4頁
計算機程序設(shè)計基礎(chǔ)教材_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第一章 計算機及程序設(shè)計基礎(chǔ)知識計算機是20世紀最偉大的科技成果之一。自1946年第一臺計算機誕生以來,計算機科學(xué)以一日千里的速度向前發(fā)展?,F(xiàn)在,計算機作為一種現(xiàn)代化的處理信息的工程,已應(yīng)用于各行各業(yè)各個領(lǐng)域之中,數(shù)值信息、文字信息、圖像信息、動畫信息甚至聲音信息都可以通過計算機來存儲各處理。不過計算機所做的任何工作都是在程序的控制下進行的,從計算機科學(xué)技術(shù)的發(fā)展趨勢看,未來的計算機將是半導(dǎo)體技術(shù)、光學(xué)技術(shù)、超導(dǎo)技術(shù)和電子仿生技術(shù)等相互結(jié)合的產(chǎn)物。由于集成光學(xué)、超導(dǎo)器伯以及電子仿生技術(shù)的開發(fā)將為計算機開拓更加廣泛的應(yīng)用領(lǐng)域,從而將出現(xiàn)光學(xué)數(shù)字計算機、超導(dǎo)計算機以及人工智能計算機等全新的計算機。

2、可以預(yù)見新一代計算機主要著眼于機器的智能化,以知識庫為基礎(chǔ),采用智能接口,能進行邏輯推理、完成判斷決策,具有自然的人機通信能力等。通過本課程讀者將重點學(xué)習(xí)程序設(shè)計的基本方法,同時學(xué)習(xí)掌握一些關(guān)于計算機的基本知識。第一節(jié) 計算機系統(tǒng)組成及基本工作原理一、 計算機系統(tǒng)概述一個完整的計算機系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)兩大部分組成。硬件系統(tǒng)指的是組成計算機有具體的物理設(shè)備。1946年2月,美國賓夕法尼亞大學(xué)的ENIAC(Electronic Numerical Integrator And Calculator 電子數(shù)值積分器和計算器)開始運行,同年美籍匈牙利數(shù)學(xué)家馮諾曼在參加第一臺計算機的研制中,提出了

3、三個重要的設(shè)計思想:j計算機由運算器、控制器、存儲器、輸入設(shè)備、輸出設(shè)備等五個基本部件組成;k采用二進制;l程序和數(shù)據(jù)一樣都存放在存儲器中;馮諾依曼的思想奠定了計算機科學(xué)發(fā)展的理論基礎(chǔ),并被應(yīng)用于實際設(shè)計中,為計算機的發(fā)展立下了不朽的功勛。按照馮諾依曼的思想設(shè)計的計算機被稱為馮諾依曼型計算機。50多年來,計算機的性能、速度、應(yīng)用領(lǐng)域等都發(fā)生了翻天覆地的變化,但是計算機的基本結(jié)構(gòu)一直沒有變。概括地說計算機由五大部件組成,其基本結(jié)構(gòu)如圖1-1所示。計算機各部件的功能為:(1) 運算器。算術(shù)邏輯運算部件,又稱ALU。負責(zé)完成所有算術(shù)運算、邏輯運算任務(wù)。(2) 控制器。如同是人的大腦,負責(zé)控制指揮計算

4、機各部件按照指令指定的功能進各種操作,使計算機能夠按照程序的安排,自動完成規(guī)定的任務(wù)。(3) 存儲器。計算機的重要部件之一,是計算機能夠?qū)崿F(xiàn)“存儲程序”功能的硬件基礎(chǔ)。程序和數(shù)據(jù)以及運算的中間和最終結(jié)果均以二進制形式存儲在其中。(4) 輸入設(shè)備。用來接受用戶輸入的原始數(shù)據(jù)各程序,并將它們變?yōu)橛嬎銠C能夠識別的代碼形式存放到存儲器中(5) 輸出設(shè)備。用于將存儲器中經(jīng)計算機處理得到的運算結(jié)果轉(zhuǎn)變?yōu)槿藗兯芙邮艿男问?,輸出到相?yīng)的介質(zhì)上,供使用者觀看、分析和保存。 上面所述的五大部件構(gòu)成了計算機的硬件部分。我們通常把運算器和控制器統(tǒng)稱為CPU,CPU是中央處理器(Central Processing

5、Unit)的英文縮寫,并把CPU和存儲器合稱為主機。 計算機軟件系統(tǒng)包括了計算機運行所需的各種程序及其有關(guān)的文檔資料。計算機系統(tǒng)是在硬件(裸機)的基礎(chǔ)上,通過一層層軟件的運行,向用戶呈現(xiàn)出友好的使用界面和強在的功能。根據(jù)程序的不同用途,通常把軟件分為系統(tǒng)軟件和應(yīng)用軟件兩大部分。系統(tǒng)軟件是計算機設(shè)計制造者提供的管理計算機全部軟硬件資源的軟件。通常包括操作系統(tǒng)、語言處理程序、數(shù)據(jù)庫管理系統(tǒng)、網(wǎng)絡(luò)管理程序、工具和服務(wù)程序等。這些系統(tǒng)程序中,操作系統(tǒng)是最核心的軟件,其他所有程序都要在它的支持下工作。應(yīng)用軟件是專門為某一應(yīng)用目的而編制的通用或?qū)S贸绦?。?yīng)用軟件必須在系統(tǒng)軟件的支持下才能工作。需要指出的是

6、,計算機的硬件系統(tǒng)各軟件系統(tǒng)之間是相輔相成、缺一不可的。可以想象,如果沒有軟件系統(tǒng),計算機就是一個死的軀殼;如果沒有硬件系統(tǒng),軟件系統(tǒng)出就沒有立身之地。圖1-2反概括了計算機系統(tǒng)的組成,圖1-3反映了用戶和軟件、硬件之間的關(guān)系。二、 計算機的基本工作原理從圖1-1可見,計算機種有兩股信息流在流動,一股是數(shù)據(jù)流,它包括參加運算的原始數(shù)據(jù)、運算過程中的中間結(jié)果和最終結(jié)果,還包括程序中的指令;另一股是控制流,是由控制器發(fā)往各部件的命令。在計算機內(nèi)部,這些信息都用以0和1組合而成的二進制代碼來表示,因為計算機能理解、識別和執(zhí)行的只能是二進制信息。我們把程序和數(shù)據(jù)同時存儲存儲器中,在發(fā)出運行命令以后,計

7、算機能夠自動完成運算,就是因為在存儲器中存儲了程序。計算機是在程序的控制下自動完成相應(yīng)操作的,這就是所謂“存儲程序”的原理,它是計算機的基本工作原理,又稱為馮諾依曼原理。為深刻理解這一原理,下面介紹一下指令和程序的概念。(1) 指令。指令由一串二進制代碼組成,是控制計算機完成一個基本操作的命令,如:傳送、加法、移位、停機等都是一個基本操作。指令應(yīng)能由控制器中的指令譯碼器所識別,因此,不同類型的計算機由于硬件的差異,指令代碼也不同。(2) 指令系統(tǒng)。某一臺計算機所能識別的所有基本指令的集合稱為指令系統(tǒng)。指令系統(tǒng)的豐富與否,決定了計算機對數(shù)據(jù)的運算和理能力的強調(diào)。(3) 程序。程序就是解題步驟的實

8、現(xiàn)。使用者根據(jù)解決某一問題的過程和步驟,選用一條條指令進行有序的排列,這一指令就是程序。例如:1)取一個運算數(shù)a; 2)再取一個運算數(shù)b; 3)做a+b運算; 4)結(jié)果存入存儲器中; 5)將存儲器中的結(jié)果送顯示器顯示; 6)結(jié)束這就是一個完成某兩數(shù)求和運算的程序。(4) 程序在計算機中執(zhí)行過程。完成程序編寫之后,要通過輸入設(shè)備輸入到存儲器中。計算機執(zhí)行程序是依規(guī)定順序執(zhí)行一條條指令,每一條指令的執(zhí)行部分為兩個階段:一是從存儲器瓷將指令碼取到CPU中;二是CPU對取入的指令進行分析譯碼,判斷該指令要做什么,然后向各部件發(fā)出完成該操作的控制信號,使各部件產(chǎn)生相應(yīng)的動作,這樣就完成了一條指令的執(zhí)行過

9、程。 程序是一系列指令的有序集合,因此程序的執(zhí)行,就是依次不斷地對程序中所有指令取出、執(zhí)行的全過程。第二節(jié) 微型機的系統(tǒng)結(jié)構(gòu) 70年代初以來,隨著大規(guī)模集成電路技術(shù)的發(fā)展,微型機以它體積小、功能強、軟件豐富、價格便宜等卓越的特點,在各個領(lǐng)域得到了廣泛的應(yīng)用,PC(Personal Computer)機走出實驗室、辦公室來到了家庭,成為名副其實的個人計算機,也成為了計算機市場的主流。那么,微型機和其他規(guī)模的計算機相比到底有什么不同呢?從基本結(jié)構(gòu)來說,并沒有本質(zhì)上的區(qū)別,它們都具有馮.諾依曼計算機的基本屬性,但是微型機又有著它自己所獨具的結(jié)構(gòu)特點。一、 微型機的硬件系統(tǒng)微型機的運算器和控制器被集成

10、在一片大規(guī)模集成電路芯片中,一般稱其為微處理器,即微型機的CPU。CPU的大規(guī)模集成是微型機結(jié)構(gòu)上的一個主要特點,目前微型機的微處理器大都采用Intel公司的80x86系列芯片,通常CPU的型號也代表了微型機的類型。微型機硬件系統(tǒng)一般分為主機和外設(shè)兩大部分,其結(jié)構(gòu)形式不同而已,主要體現(xiàn)在CPU大規(guī)模集成在一起和采用總線結(jié)構(gòu)方面。根據(jù)微型機結(jié)構(gòu)的特點,我們一般說微型機是由重微處理器、內(nèi)存、外存、I/O接口及I/O設(shè)備、總線等幾大部分組成,圖中虛線以上的部分稱為主機,虛線以下的部分叫做個設(shè)。下面分別介紹微型機的部件的功能與作用。r(一) 微處理器(CPU)微處理器是整個微型計算機的核心部件,其中包

11、含了馮.諾依曼結(jié)構(gòu)的運算器和控制器二大部分,用來執(zhí)行指令,完成各種運算和控制功能。現(xiàn)代的微型處理器均由一片超大規(guī)模集成電路制成,其集成度越來越高,性能也越來越高。從內(nèi)部結(jié)構(gòu)看微處理器一般都包含下部件:算術(shù)邏輯部件ALU;累加器及通用寄存器組;程序計數(shù)器、指令寄存器和指令譯碼器;時序和控制部件。(二) 存儲器存儲器是計算機存儲信息的“倉庫”,所謂“信息”是指計算機系統(tǒng)所要處理的數(shù)據(jù) 和程序,所以說存儲器是用來存儲程序和數(shù)據(jù)的部件。 微型機的存儲器,按照存儲器與與CPU的關(guān)系,被分為內(nèi)部存儲(簡稱內(nèi)存)和外部存儲(簡稱外存) 內(nèi)存用來存放當前計算機運行立刻就需要的程序和數(shù)據(jù),內(nèi)存的大小直接影響程序

12、的運行效果。內(nèi)存的存取速度與CPU相當,因此在圖1-4中,它直接通過系統(tǒng)總路線和CPU相連;外存用來存放不立刻運行的程序和數(shù)據(jù),它可以與內(nèi)存進行大量信息交換,既可以將外存中的信息調(diào)入內(nèi)存進行運算,也可以將內(nèi)存中處理過的程序和數(shù)據(jù)寫入外存,以便保存。外存在系統(tǒng)中同外設(shè)一樣是通過接口和CPU相連接的。因此內(nèi)存屬于主機的一部分,而外存是屬于外設(shè)的范疇。內(nèi)存的主要特點是:容量小、速度快,但價格較貴;外存的特點是:容量大、速度慢,但價格較便宜。1. 內(nèi)部存儲器目前內(nèi)存均采用高速的半導(dǎo)體存儲器,從功能來看,內(nèi)存一般分為ROM和RAM兩類 (1) ROM(Read Only Memory只讀存儲器)。ROM

13、存儲器的特點是只能從中讀出信息,而不能向其中寫入信息,在關(guān)機和斷電后,ROM中的內(nèi)容仍能保存,不會丟失。ROM的寫入,需要用專門的編程器完成。一般ROM中存儲的是由廠家裝入的系統(tǒng)引導(dǎo)程序、自檢程序、輸入輸出驅(qū)動程序等。(2) RAM(Random Access Memory隨機存儲器)。RAM的特點是其中存放的內(nèi)容可隨機讀寫,但RAM中的信息具有易失性,關(guān)機或斷電后信息會全部丟失。計算機在運行時,系統(tǒng)程序、用戶程序以及所用數(shù)據(jù)都存放在RAM中。(3) 有關(guān)存儲器的概念。一般用戶直接使用的是RAM,通常我們所說的內(nèi)存大小也是指的RAM。下面根據(jù)存儲器的結(jié)構(gòu)示意圖(見圖1-5)介紹一些與存儲器有關(guān)

14、的概念。r 圖中可能見,存儲器由若干個單元組成,每個單元有一個唯一的編號,稱為地址。信息的最小單位是二進制的位(bit),每8個二進制位定義為一個字節(jié)(Byte),存儲器以字節(jié)為單位來進行編址。CPU訪問內(nèi)存時,一次讀寫幾個字節(jié)取決于字長是多少,字長一般是8的倍數(shù),與數(shù)據(jù)總線的根數(shù)有關(guān),字長反映了計算機處理數(shù)據(jù)的能力與效率。例如:字長為16位的CPU,它的數(shù)據(jù)總線是16條,一次讀寫某地址開始連續(xù)二個字節(jié)的16位數(shù);字長為32位的CPU,則數(shù)據(jù)總線是32條,一次讀寫某地址開始連續(xù)四個字節(jié)的32位數(shù)。我們把若干字節(jié)稱為一個字(Word)。存儲器的存儲單元總數(shù),稱為存儲器的容量,微型機中以B、KB、

15、MB、GB、TB作為表示存儲器容量的單位,B表示一個字節(jié),1KB=1024B(B)1MB=1024KB(B),1GB=1024MB(B),1TB=1024GB(B)。存儲器容量及單位也適于外存。2. 外部存儲器外存是相對于內(nèi)存而言的一種存儲設(shè)備。目前常用的外存有軟盤、硬盤和CD-ROM光盤。軟盤和硬盤上的信息都是可以讀寫的,并可以長期保存,斷電也不會消失。硬盤比軟盤容量大,常用的3.25英寸高密軟盤容量是1.44MB,而硬盤的容量則有數(shù)百MB到幾個GB之大。硬盤比軟盤讀寫速度快,通常要高一二個數(shù)量級。不過軟盤和軟盤驅(qū)動器是可分的,而硬盤各硬盤驅(qū)動器則被密封在一起,它們各有特色。目前軟盤和硬盤存

16、儲器都是微機系統(tǒng)中不可缺少的設(shè)備。需要說明的是,外存是一種特殊的設(shè)備,如果站在存儲器的角度看,它是外存,但如果站在外設(shè)的角度看,它是一種特殊的輸入輸出設(shè)備。既可以輸入,也可以輸出。光盤也是一種外存,目前常用的CD-ROM是一種只讀光盤,它的容量很大,可達600多MB,常常用來存放一些信息很大的軟件。(三) I/O接口與I/O設(shè)備 1. I/O接口(輸入輸出接口)I/O接口是微處理器與I/O設(shè)備之間交換信息的連接電路,外設(shè)必須通過接口連接到系統(tǒng)總線上再與CPU相連。I/O接口的作用,主要是協(xié)調(diào)CPU與外設(shè)間的速度、信息格式、信息類型等差異,使之能正確完成CPU與I/O設(shè)備間的信息交換。因此I/O

17、接口又常被稱為適配器,適配器一般作為插板形式,故也稱適配卡或接口卡,常用的接口卡有:顯示器適配卡、多功能適配卡、軟盤接配卡、硬盤接口卡等。2. I/O設(shè)備(輸入輸出設(shè)備)I/O設(shè)備是指那些用于輸入或輸出的具體設(shè)備,每一臺設(shè)備都需要有與之匹配的接口卡。I/O設(shè)備通過I/O接口、總線和CPU之間建立聯(lián)系。微型機常用的I/O設(shè)備有鍵盤、鼠標器、顯示器、打印機。對于多媒體計算機,還常用語音輸入機、掃描儀、繪圖機、錄像機、VCD機、音箱等設(shè)備。(四) 系統(tǒng)總線采用總線結(jié)構(gòu)是微型機組成結(jié)構(gòu)的顯著特點之一。所謂總線(BUS)就是指計算機部件與部件之間進行信息傳輸?shù)囊唤M公共信號線及相關(guān)的控制邏輯電路。它是一組

18、能為計算機多個部件服務(wù)的公共信息傳輸通路,能分時地發(fā)送或接收各部件的信息。在系統(tǒng)總線上通常傳輸三種信號:數(shù)據(jù)、地址和控制信號民,相應(yīng)地總線也分為數(shù)據(jù)總線、地址總線、控制總線三類。系統(tǒng)總線被恰當?shù)乇茸鳌案咚俟贰?,總線上的數(shù)據(jù)流則視為公路處的“車輛”。顯然,交通是否暢通直接依賴于總線,因此總線技術(shù)成為微機系統(tǒng)結(jié)構(gòu)的一個重要方面。經(jīng)過十幾年的發(fā)展,已形成了多種高性能的總線標準,如PC機上常用的ISA總線、EISA總線、PCI總線等。(五) 單片機、單板機、個人計算機和工程工作站1. 單片機單片機又稱為“微控制器”(Microcontroller)和“嵌入式計算機”(Embedded compute

19、r)。這是一種把構(gòu)成一微型機的功能部件集成在一塊芯片之中的計算機,這些功能部件包括微處理器、RAM、ROM(有的單片機中不包括ROM)、I/O接口電路、定時器/計數(shù)器等,有的單片機還包括A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器。單片機的體積小、功耗低,在智能化儀器儀表及控制領(lǐng)域應(yīng)用極廣。2. 單板機將微處理器、RAM、ROM以及I/O接口電路,再配上相應(yīng)的外設(shè)(小鍵盤、發(fā)光2極管顯示器)和監(jiān)控程序固件等,安裝在一塊印刷電路板上構(gòu)成的微型計算機系統(tǒng)稱為單板機。例如以Z80微處理器為核心的TP-801單板機,以8086微處理器為核心的TP-86單板機等。單板機可廣泛應(yīng)用于生產(chǎn)過程的實時控制和教學(xué)實驗。3. 個人

20、計算機(Personal Computer,pc)個人計算機是一種通用的微型計算機系統(tǒng),通常由主機箱(包括主板、軟盤驅(qū)動器、硬盤驅(qū)動器、CD-ROM和電源)、鍵盤、顯示器以及打印機等外部設(shè)備組成,其特點是價格低、性能好、體積小,可廣泛應(yīng)用于辦公室和家庭使用。如Apple機、IBM pc機及其兼容機等。個人計算機在科學(xué)、工業(yè)、教學(xué)、商業(yè)和家庭等各領(lǐng)域都得到廣泛的應(yīng)用。4. 工程工作站(Emgineering Work Station ,EWS)工程工作站是一種微型化的功能很強的計算機系統(tǒng),簡稱為“工作站”,它的運行速度快、內(nèi)在容量大,圖形和圖像處理能力強,外設(shè)接口能力強,易于聯(lián)網(wǎng),適合于進行較復(fù)

21、雜的科學(xué)和大型工程計算。工作站由高性能主機、高分辨率顯示器、高速的I/O設(shè)備,以及其他必要的儀器設(shè)備組合而成,置于終端臺上。它本身可以作為一臺計算機使用,能完成工程業(yè)務(wù)、技術(shù)業(yè)務(wù)和管理業(yè)務(wù),并能作為一個工作站加入到網(wǎng)絡(luò)中。二、 微型機的軟件系統(tǒng)我們已經(jīng)知道沒有任何軟件的計算機稱為“裸機”,裸機是不能完成任何工作的,可以說軟件是計算機工作的“靈魂”。近年來微型機迅速普及的原因之一,雖然有硬件性能價格比變化的因素,但更重要的原因是由于微機豐富的軟件,滿足了各類用戶、各種領(lǐng)域的應(yīng)用需求,而且微型機的軟件產(chǎn)業(yè)仍在飛速發(fā)展。軟件系統(tǒng)是由系統(tǒng)軟件和應(yīng)用軟件兩大部分組成的。1. 微型機的系統(tǒng)軟件系統(tǒng)軟件一般

22、由生產(chǎn)廠家或公司在出售計算機時提供給用戶的。微機上常用的系統(tǒng)軟件有:(1) 操作系統(tǒng)。這是指對計算機系統(tǒng)的全部軟、硬件資源進行管理的大型、多模塊程序。如單用戶單任務(wù)的磁盤操作系統(tǒng)DOS、基于圖形界面的多任務(wù)操作系統(tǒng)Windows、多用戶多任務(wù)的UNIX操作系統(tǒng)、Windows NT及IBM OS/2等流行的網(wǎng)絡(luò)操作系統(tǒng)等。(2) 語言處理程序。這是指匯編程序、解釋程序、編譯程序等對各種匯編語言、高級語言源程序進行翻譯的系統(tǒng)程序。如MASM匯編程序、Turbo C 2.0系統(tǒng)等。(3) 數(shù)據(jù)庫管理系統(tǒng)。這是指對數(shù)據(jù)庫進行維護和管理的系統(tǒng)程序。如FoxBASE、Foxpro、Oracle、Acce

23、ss等都是微型機上應(yīng)用比較廣泛的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。(4) 常用服務(wù)性程序。這包括編輯程序、調(diào)試程序、裝配與連接程序、系統(tǒng)的維護與測試程序。 下面以磁盤操作系統(tǒng)(DOS)為例介紹系統(tǒng)軟件中操作系統(tǒng)的功能。 所謂操作系統(tǒng)是一個功能強大的,能對計算機物軟硬件資源進行管理的軟件。它是系統(tǒng)軟件的核心,其他所有程序都要在它的支持下工作。操作系統(tǒng)一般應(yīng)具備處理機管理、存儲器管理、文件管理、設(shè)備管理、作業(yè)管理等五大功能。當然對于用途不同的操作系統(tǒng),不一定要具備全部功能。 DOS( Disk Operating System)是基于文字界面的單用戶、單任務(wù)操作系統(tǒng)。最初是由美國Microsoft公司于198

24、1年研制的,所以叫MS-DOS,同年被IBM公司選擇為其新制造的個人計算機IBM-PC上的操作系統(tǒng),改名為PC-DOS,因此MS-DOS和PC-DOS是同一個操作系統(tǒng),只是核心模塊名略有區(qū)別而已。MS-DOS從1.0版發(fā)展到今天的6.22版,功能不斷加強,是PC機用戶廣泛使用的操作系統(tǒng)。(1) MS-DOS的基本組成。MS-DOS是由許多模塊組成的程序組,但其中最主要的模塊有4個,稱為DOS的核心模塊。一是引導(dǎo)程序(BOOT)。它是一個很小和程序,存放在系統(tǒng)盤的0磁道1扇區(qū) 上。它的主要作用是檢查系統(tǒng)上是否有操作系統(tǒng),若沒有,則在屏幕上給出提示信息。若有,則將IO.SYS和MSDOS.SYS模

25、塊調(diào)入內(nèi)存。 二是輸入輸出管理模塊(IO.SYS)。該模塊包含兩部分:由ROM中的基本輸入輸出系統(tǒng)BIOS和系統(tǒng)盤上的IO.SYS文件組成,該模塊的主要作用是檢查外設(shè)的狀態(tài),對設(shè)備進行初始化并包含一組設(shè)備驅(qū)動程序等。 三是文件管理模塊(MSDOS.SYS)。這是DOS的核心部分,主要作用是對磁盤上的文件進行管理,進行磁盤信息的讀寫等。 四是鍵盤命令處理程序(COMMAND.COM)。該模塊的作用是接受用戶從鍵盤上輸入的DOS命令,檢查該命令是否正確。如果正確則調(diào)用相關(guān)程序,完成用戶的操作要求;如果不正確,則在屏幕上顯示錯誤的原因。(2) DOS的啟動。所謂DOS的啟動就是指把系統(tǒng)盤(C盤或A盤

26、)上的四個系統(tǒng)模塊裝入內(nèi)存。DOS的啟動方法有冷啟動和熱啟動。當我們給計算機加電后,計算機會自動完成啟動過程,這就是冷飲啟動。如果在使用過中出現(xiàn)“死機”等現(xiàn)象時,可同時按下Ctrl+Alt+Del三個鍵,即可實現(xiàn)熱啟動。DOS啟動成功以后,會出現(xiàn)C:>提示符,表明系統(tǒng)已經(jīng)啟動成功,等待輸入鍵盤命令。目前不少用戶使用Win95或Win98操作系統(tǒng),如要進入MS-DOS,可在Win95或Win98程序組菜單中選擇MS-DOS方式,切換到MS-DOS環(huán)境使用。 (3) 文件的概念。文件是一組相關(guān)信息的集合。文件可以是高級語言的一個源程序、一篇文稿、一封信、一組數(shù)據(jù)、一個表格或其他一組信息。DO

27、S系統(tǒng)的數(shù)據(jù)信息絕大多數(shù)都是存放在磁盤上的,并且以文件的形式進行組織和管理。DOS從磁盤上讀取信息或向磁盤寫入信息,都是以文件為單位,文件是DOS管理的基本對象。DOS文件的命名是有規(guī)則的。在DOS命令中,大多數(shù)都要指出操作的文名,如COPYFILEL.C A:命令,該命令的作用是把名為FILEL.C的文件拷貝到A盤上去。為了區(qū)別不同的文件,每一個文件都要取一個不同的名字。DOS文件命名規(guī)則采用8.3結(jié)構(gòu),即主文件名由18個字母(或14個漢字)組成,擴展名用03個字符組成。可用的字符有:26個英文字母,10個數(shù)字和專用字符!、#、$、&、(、)、-、等,主文件名和擴展文件名中間用“.”

28、隔開。主文件名是必須的,擴展文件名是可選的。需要說明的是擴展名通常用來表示文件的類型,用戶可以自己取,但DOS有不少約定的擴展名,如.EXE、.COM、.BAT、.FOR、.TXT等分別表示可執(zhí)行文件、命令文件、批處理文件、FORTRAN源文件、文本文件等,C語言源文件的擴展名為.C。如無特別需要,一般采用DOS約定的擴展名。下面是一組正確的文件名:DISKCOPY.COM,P145.C,通知.doc,1.1,zhouli_1.wj。下列文件名則是非法的:zhang hu.aaa,z ,bat ,UI.FOR1 ,COM。如果你在DOS命令中給出了一個不合法的文件保,DOS便會顯示如下出錯信息

29、:File not found XXXXX.XX這里還有個通配符的使用概念。如有時想對幾個文件做相同的操作,一次復(fù)制一組文件或列出一組文件名等。DOS的通配符“*”和“?”可以幫助你達到這個目的。在文件名和擴展名中,“?”可以代替任意一個字符,“*”可以代替剩余的任意字符。例如,假設(shè)磁盤上有文件,則有A?.C代表A1.C、A2.C、A?.*代表A1.C、A2.C、A3.BAS、A4.BAS A*.BAS代表A3.BAS、A4.BAS、AEXAM001.BAS、AEXAM101.BAS在一個DOS命令中,我們常??梢允褂猛ㄅ浞麃聿僮鞫鄠€文件。(4) DOS對磁盤文件的管理采用目錄及其樹型結(jié)構(gòu)。如

30、前所述,DOS處理磁盤上的信息是以文件為單位的。磁盤上的文件成千上萬,為了便于管理及提高搜索文件的速度,DOS采用多級目錄結(jié)構(gòu)進行文件管理,通常把系統(tǒng)軟件、各種應(yīng)用軟件、用戶程序和數(shù)據(jù)文件等磁盤文件分類存于不同的目錄下。磁盤在進行格式化的時候,自動建立了一個根目錄,之后我們可以根據(jù)需要在根目錄下建立若干不同級別的子目錄,磁盤上的目錄結(jié)構(gòu)好像一棵倒置的“樹”,根目錄是“樹根”,各層子目錄是“樹枝”,文件就是“樹葉”,因此常稱其為樹型目錄結(jié)構(gòu),如圖16所示。在樹型目錄結(jié)構(gòu)中,只有一個根目錄,處于最頂層,用“”表示。樹型目錄結(jié)構(gòu)的每一層上既可以有子目錄,也可以有文件存在。每一個子目錄只有一個上級目錄

31、,但可以有多下下級目錄。相對于某個目錄,我們把它的上一級目錄稱為它的父目錄,把它的下一級目錄稱為它的子目錄。父、子目錄的概念都是相對而言的。例如圖1-6中,子目錄3是子目錄4的父目錄,又是子目錄1的子目錄。根目錄是沒有父目錄的。需要注意的是,在同一目錄下,不允許有相同的子目錄名或文件名,但在不同的子目錄下,即使重名也不必擔心。在這里我們還要了解“當前盤”和“當前目錄”的概念。在系統(tǒng)啟動成功后,自動顯示包含系統(tǒng)盤符的提示符,如C:>,此時對磁盤的操作默認是對C盤操作,這時C盤就是“當前盤”。 當一個盤建立了目錄結(jié)構(gòu),操作時就需要指明,要找的文件在哪眾目錄下,DOS對每個磁盤都記憶一個目錄,

32、操作一個文件時,如果沒有指明目錄,則自動到DOS記憶的這個目錄中去找,該目錄被稱為“當前目錄”,DOS啟動后系統(tǒng)默認的當前目錄是根目錄。當前盤是可以改變的,如C:>A: (回車鍵),則A盤變?yōu)楫斍氨P。當前目錄也是可以改變的,如C:>CD UCDOS ,則UCDOS子目錄變?yōu)楫斍澳夸?。每個子目錄都有一個目錄名,命名規(guī)則與文件命名規(guī)則相同。但DOS允許用一個小圓點“.”表示當前目錄,如C:>COPY A: (注意: 表示空格)表示當前目錄的父目錄,如C:>CD.,表示當前目錄的父目錄被置為當前目錄。(5) 路徑及文件標識。所謂路徑是指從根目錄或當前目錄到指定的目錄或文件所要

33、經(jīng)過的路線的描述。依次所經(jīng)過的各個目錄之間要用反斜杠“”隔開。當我們要對一個文件操作時,必須先確定它處在什么位置上,如果它不在當前目錄下,則必須指出找到它需經(jīng)過的路徑。對路徑的描述方法有兩種:絕對路徑和相對路徑。從根目錄開始的路徑,稱為絕對路徑;從當前目錄開始的路徑,稱為相對路徑。現(xiàn)在假設(shè),在圖1-6所示的目錄結(jié)構(gòu)中,當前目錄是子目錄1,要操作的是文件7,如何描述文件7的路徑呢? 絕對路徑:子目錄1子目錄3子目錄4文件7 相對路徑:子目錄3子目錄4文件7 如果我們要操作的文件不在當前盤,還必須確定它所在的盤符,所以一個完整的文件標識應(yīng)由三部分組成:盤符 路徑 <文件名.擴展名>(6

34、) DOS命令的一般格式。一個DOS命令的格式為:<命令動詞>參數(shù)例1:type c:tcexaml.c顯示C盤tc子目錄的名為examl.c的C源文件內(nèi)容例2:copy a:user*.doc c:把A盤根目錄下user子目錄下所有的.doc文件拷貝到C盤當前目錄下。DOS提供了對磁盤文件、目錄進行管理操作的各種命令,有關(guān)命令的格式、功能和使用方法請參考有關(guān)參考書。2. 微型機的應(yīng)用軟件所謂應(yīng)用軟件是指在系統(tǒng)軟件的支持下,為解決各類實際問題,針對用戶需要而設(shè)計的通用或?qū)S贸绦颉Mㄓ眯偷膽?yīng)用程序如:WPS及WORD等字處理軟件,CCED及EXCEL等電子表格軟件,各種繪圖及動畫制作

35、軟件,各種開發(fā)工具軟件,網(wǎng)絡(luò)通信軟件等。專用型的應(yīng)用程序如:進行某工程設(shè)計的計算程序,某單位的工資管理程序,也包括本課程中同學(xué)們用C語言設(shè)計的解決某一具體問題的程序等。第三節(jié) 計算機中數(shù)據(jù)的表示及存儲形式因為計算機只能識別和處理二進制信息,所以計算機內(nèi)部處理的數(shù)據(jù)都是二進制的。但是在用高級語言編寫程序時,為適應(yīng)人們的使用習(xí)慣通常使用十進制形式,在輸入數(shù)據(jù)或輸出運行結(jié)果時,也多采用十進制,有時也用八進制式或十六進制形式進行輸入輸出,其實八進制式或十六進制是為了二進制的一種書寫法。因此我們要了解這些表示形式及它們之間的關(guān)系,以及數(shù)據(jù)如何在計算機內(nèi)部存儲,這是學(xué)習(xí)C語言程序設(shè)計必備的基礎(chǔ)知識。一、

36、數(shù)的位置記數(shù)法及進制式的概念進制的種類很多,在日常生活中我們經(jīng)常遇到,如常用的十進制,一周七進制,一小時60分有六十進制等,而計算機內(nèi)部采用的則是二進制。不同的進制有共同的特點:(1) 逢進制(或稱基數(shù))進位;(2) 進制的數(shù)有0(X-1)共X個數(shù)碼;(3) 數(shù)的值不僅僅取決于數(shù)碼的大小,還取決于它所在的位置 。 下面以十進制數(shù)1979.126為例說明。 我們看到它的位是由09數(shù)碼排列,09可以說明大小不同,但是同樣一個數(shù)碼,如這里的9,它在個位代表9,而在百位則代表9×102=900,由此可見各位上數(shù)值的大小,除取決于數(shù)碼本身外,還它所在位置有關(guān),若用N表示這個數(shù)的大小,則N=1&

37、#215;103+9×102+7×101+9×100+1×10-1+2×10-2+6×10×-3=i=n-1-maiXi沒有小數(shù)時 N=i=n-10aiXi式中 n整數(shù)部分的位數(shù); m小數(shù)部分的位數(shù); X進制數(shù)(基數(shù)); ai 系數(shù)(0X-1中任意一個數(shù))。103、102、101、100、10-1、10-2、10-3分別稱為十進制的位權(quán)。由上例可見,每一位數(shù)的數(shù)值=數(shù)碼×位權(quán),這就是所謂的位置記數(shù)法,上式稱為按權(quán)展開式。由此可見,只要取不同的基數(shù),即可得到不同進制數(shù)N用位置記數(shù)法表示的按權(quán)展開式,從而得到它所代表的

38、十進制數(shù)值。例如:任意二進制式數(shù)N= N=i=n-10aiXi,基數(shù)是2,ai代表01,各位位權(quán)是2i。任意八進制式數(shù)N= N=i=n-10aiXi,基數(shù)是8,ai代表07,各位位權(quán)是8i。任意十六進制式數(shù)N= N=i=n-10aiXi,基數(shù)是16,ai代表09、A、B、C、D、E、F,各位位權(quán)是16i。顯然,由于基數(shù)不同,同樣一個數(shù)代表的值不同的,原因在于位權(quán)不同,例如:(11011)10=1×104+1×103+0×102+1×101+1×100=11011(11011)2=1×24+1×23+0×22+1&#

39、215;21+1×20=27(11011)16=1×164+1×163+0×162+1×161+1×160=69649 不同進制的數(shù),常用如上的腳標來區(qū)別,也可以加一個后綴字母來標識,如用B標識二進制,用H來表示十六進制,用Q表示八進制,用D或空標識十進制。例如78999D、33440Q、7fffH、11001111B分別表示十、八、十六、二進制數(shù)。二、 各種進制數(shù)之間的轉(zhuǎn)換一個數(shù)可以用二進制、十進制、八進制、十六進制等各種形式來表示,雖然表示形式不同,但他們是等的,我們要熟悉它們之間的轉(zhuǎn)換方法。1. R進制和十進制之間的轉(zhuǎn)換(1)

40、將(R=2,8,16)進制數(shù)轉(zhuǎn)換為十進制數(shù)。 方法:按權(quán)展開求和?!纠?-1】 分別將(1101101.101)2、(3506.24)8、(8FC7.2A)16轉(zhuǎn)換為十進制數(shù)。(1101101.101)2=1×26+1×25+0×24+1×23+1×22+0×21+1×20+1×2-1+0×2-2+1×2-3 =64+32+8+4+1+0.5+0.125 =(109.625)10(3506.24)8 =3×83+5×82+0×81+6×80+2×

41、8-1+4×8-2 =1536+320+6+0.25+0.0625=(1862.3125)10(8FC7.2A)16=8×163+15×162+12×161+7×160+2×16-1 =32768+3840+192+7+0.125=(36807.125)10(2)將十進制數(shù)轉(zhuǎn)換為R(R=2、8、16)進制數(shù)。方法:整數(shù)部分采用除基數(shù)取余法;小數(shù)部分采用乘基數(shù)取整法(“基”即進制的意思)?!纠?-2】 將(57)10分別轉(zhuǎn)換為二進制、八進制、十六進制式數(shù)(用除基數(shù)取余法實現(xiàn))。注意:最先得到的余數(shù)是整數(shù)的最低位。因此,(57)10=(1

42、11001)2=(71)8=(39)16【例1-3】將(57.3125)10轉(zhuǎn)換為二進制數(shù)(分別用除2取余法和乘2取整法對整數(shù)部分和小數(shù)部分進行轉(zhuǎn)換,然后拼接起來即可)。由【例1-2】已知(57)10=(111001)2下面對(0.3125)10進行轉(zhuǎn)換:因此,(57.3125)10=(11101.0101)22.二進制數(shù)轉(zhuǎn)換為八進制或十六進制數(shù)。3位二進制數(shù)可以組合成23=8種狀態(tài),剛好能表示八進制數(shù)07;4位二制數(shù)可以組合成24=16種狀態(tài),剛好能表示十六進制數(shù)0F。十進制、八進制、十六進制與二進制組合代碼的對應(yīng)關(guān)系如表1-1所示。表1-1、十、八、十六進制與二進制組合代碼的對應(yīng)關(guān)系表 因

43、此,二進制轉(zhuǎn)換成八進制或十六進制數(shù)時,只要把二進制數(shù)按3位或4位分組,然后寫出其對應(yīng)的八或十六進制數(shù)即可。具體方法是,從小數(shù)點處開始向左右兩邊每3位(或4位)劃為一組,向左劃分時若最左邊的一組不足3位(或4位),在最左邊補0,湊齊3位(或4位);向右劃分時若最右邊的一組不足3位(或4位),就在最右邊補0,湊齊3位(或4位),然后把每3位(或4位)二進制轉(zhuǎn)換為一位八進制(或十六進制)數(shù)?!纠?-4】 (10110111)2 "010 110 111= (267)8 "1011 0111 =(B7)16【例1-5】 (11100110101.11011)2"011 100 110 101. 110 110=(3465.66)8 "0111 0011 0101. 1101 1000=(735.D8)16(2)八進制或十六進制數(shù)轉(zhuǎn)換為二進制。轉(zhuǎn)換方法是3位或4位分角解法。只要依次把八進制數(shù)或十

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論