計算機軟件技術基礎知識_第1頁
計算機軟件技術基礎知識_第2頁
計算機軟件技術基礎知識_第3頁
計算機軟件技術基礎知識_第4頁
計算機軟件技術基礎知識_第5頁
已閱讀5頁,還剩91頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、計算機軟件技術基礎知識3.1 3.1 軟件技術基礎本節(jié)內容本節(jié)內容: :、基礎知識、基礎知識、數(shù)據(jù)結構基礎、數(shù)據(jù)結構基礎、 操作系統(tǒng)操作系統(tǒng)、編譯基礎、編譯基礎 計算機軟件的概念計算機軟件的概念 計算機軟件就是計算機程序再加上該程計算機軟件就是計算機程序再加上該程序所需的各種文檔。軟件和程序是不同的概序所需的各種文檔。軟件和程序是不同的概念,程序是使計算機實現(xiàn)所預期的目的而編念,程序是使計算機實現(xiàn)所預期的目的而編寫的一系列的計算機語言(或命令)的集合。寫的一系列的計算機語言(或命令)的集合。文檔是描寫程序操作及使用的有關資料。軟文檔是描寫程序操作及使用的有關資料。軟件作為一種特殊產(chǎn)品,計算機程

2、序和文檔是件作為一種特殊產(chǎn)品,計算機程序和文檔是缺一不可的。因此,軟件是計算機程序加上缺一不可的。因此,軟件是計算機程序加上該程序所需的各種文檔。從廣義上講,軟件該程序所需的各種文檔。從廣義上講,軟件應包括程序、相應的數(shù)據(jù)以及有關的知識和應包括程序、相應的數(shù)據(jù)以及有關的知識和文檔三部分。數(shù)據(jù)是指程序能正常加工信息文檔三部分。數(shù)據(jù)是指程序能正常加工信息的原料。程序是軟件的主體,是可執(zhí)行部分,的原料。程序是軟件的主體,是可執(zhí)行部分,由算法和語言組成。由算法和語言組成。 、基礎知識、基礎知識 計算機軟件的種類計算機軟件的種類 按照不同的原則和標準,可將計算機軟件按照不同的原則和標準,可將計算機軟件劃

3、歸不同的種類。一般從應用的角度出發(fā),將劃歸不同的種類。一般從應用的角度出發(fā),將軟件劃分為系統(tǒng)軟件和應用軟件兩大類。軟件劃分為系統(tǒng)軟件和應用軟件兩大類。(1)系統(tǒng)軟件)系統(tǒng)軟件 系統(tǒng)軟件是指對整個計算機系統(tǒng)進行管理、系統(tǒng)軟件是指對整個計算機系統(tǒng)進行管理、調度、監(jiān)控、維護的軟件,即為其他程序服務調度、監(jiān)控、維護的軟件,即為其他程序服務的程序的集合。主要包括以下幾種:操作系統(tǒng)的程序的集合。主要包括以下幾種:操作系統(tǒng) 、語言處理程序語言處理程序 、服務程序、服務程序 、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng) 、網(wǎng)絡通訊管理程序網(wǎng)絡通訊管理程序 。 (2 2) 應用軟件應用軟件 應用軟件是直接服務于用戶的程序系

4、統(tǒng)。應用軟件是直接服務于用戶的程序系統(tǒng)。它一般包括兩類:它一般包括兩類:w實用程序:實用程序: 是指為用戶特定需要而開發(fā)的程是指為用戶特定需要而開發(fā)的程序。如訂票系統(tǒng)、圖書情報檢索系統(tǒng)、工作序。如訂票系統(tǒng)、圖書情報檢索系統(tǒng)、工作管理系統(tǒng)、輔助教學系統(tǒng)等等。管理系統(tǒng)、輔助教學系統(tǒng)等等。w工具軟件:是為了用戶使用方便而提供的軟工具軟件:是為了用戶使用方便而提供的軟件工具,如文字表格處理軟件件工具,如文字表格處理軟件EXCELEXCEL、字處理、字處理軟件軟件WORDWORD、電子演示文稿軟件、電子演示文稿軟件POWERPOINTPOWERPOINT、計算機輔助制圖軟件計算機輔助制圖軟件AUTOCA

5、DAUTOCAD等等等等。 計算機軟件技術發(fā)展過程計算機軟件技術發(fā)展過程 計算機軟件技術是隨著計算機硬件發(fā)展而發(fā)計算機軟件技術是隨著計算機硬件發(fā)展而發(fā)展的。展的。 計算機產(chǎn)生的早期,人們主要進行計算機硬計算機產(chǎn)生的早期,人們主要進行計算機硬件的研制,此時編制的軟件作為硬件的附屬品件的研制,此時編制的軟件作為硬件的附屬品存在,軟件的效率與功能均受到限制。隨著硬存在,軟件的效率與功能均受到限制。隨著硬件技術的發(fā)展,對軟件技術提出了更高的要求,件技術的發(fā)展,對軟件技術提出了更高的要求,要使硬件發(fā)揮其效率和功能,必須配備完善的要使硬件發(fā)揮其效率和功能,必須配備完善的軟件系統(tǒng),軟件技術作為獨立的分支得到

6、迅速軟件系統(tǒng),軟件技術作為獨立的分支得到迅速和充分的發(fā)展。和充分的發(fā)展。 硬件與軟件相互依存,相互推動,缺一不可,硬件與軟件相互依存,相互推動,缺一不可,共同構成了一個計算機系統(tǒng)。從共同構成了一個計算機系統(tǒng)。從20世紀世紀60年代年代高級語言出現(xiàn)到今天,軟件技術的發(fā)展主要經(jīng)高級語言出現(xiàn)到今天,軟件技術的發(fā)展主要經(jīng)歷了三個階段歷了三個階段:w(1 1)6060年代高級語言階段年代高級語言階段 2020世紀世紀5050年代末,年代末,John Backus John Backus 首先完成首先完成了了FORTRANFORTRAN的編譯系統(tǒng),此后的十年中,不同的編譯系統(tǒng),此后的十年中,不同的應用領域

7、出現(xiàn)了的應用領域出現(xiàn)了ALGOL60 ALGOL60 、COBOL COBOL 、LISPLISP等等高級語言。直到高級語言。直到6060年代末出現(xiàn)的年代末出現(xiàn)的PL/1PL/1、ALGOL68 ALGOL68 對這一時期的語言作一總結。此階段,對這一時期的語言作一總結。此階段,編譯技術代表了整個軟件技術,軟件工作者追編譯技術代表了整個軟件技術,軟件工作者追求的主要目標是設計和實現(xiàn)再控制和數(shù)據(jù)結構求的主要目標是設計和實現(xiàn)再控制和數(shù)據(jù)結構方面表現(xiàn)力強的高級語言。這一時期內,編譯方面表現(xiàn)力強的高級語言。這一時期內,編譯系統(tǒng)主要靠手工編制,自動化程度低。系統(tǒng)主要靠手工編制,自動化程度低。w(2 2)

8、2020世紀世紀7070年代結構化程序設計階段年代結構化程序設計階段 2020世紀世紀7070年代是計算機技術高度發(fā)展的時代。年代是計算機技術高度發(fā)展的時代。這一時期,操作系統(tǒng)軟件迅速發(fā)展,數(shù)據(jù)庫成為這一時期,操作系統(tǒng)軟件迅速發(fā)展,數(shù)據(jù)庫成為獨立的發(fā)展領域,計算機網(wǎng)絡技術也得以發(fā)展。獨立的發(fā)展領域,計算機網(wǎng)絡技術也得以發(fā)展。同時,隨著計算機應用領域的不斷擴大,計算機同時,隨著計算機應用領域的不斷擴大,計算機軟件的規(guī)模增大,復雜性增加,從而造成軟件的軟件的規(guī)模增大,復雜性增加,從而造成軟件的可靠性較差,產(chǎn)生了可靠性較差,產(chǎn)生了“軟件危機軟件危機”。在此種背景。在此種背景下,產(chǎn)生和發(fā)展了程序設計方

9、法學和軟件工程學。下,產(chǎn)生和發(fā)展了程序設計方法學和軟件工程學。軟件工程是指導軟件開發(fā)和維護的工程科學,它軟件工程是指導軟件開發(fā)和維護的工程科學,它采用工程的概念、原理、技術和方法來開發(fā)和維采用工程的概念、原理、技術和方法來開發(fā)和維護軟件產(chǎn)品。應用軟件工程的方法,目的是提高護軟件產(chǎn)品。應用軟件工程的方法,目的是提高軟件產(chǎn)品的質量和軟件生產(chǎn)率,降低軟件產(chǎn)生開軟件產(chǎn)品的質量和軟件生產(chǎn)率,降低軟件產(chǎn)生開發(fā)成本。發(fā)成本。(3 3)2020世紀世紀8080年代至今自動程序設計階段年代至今自動程序設計階段 2020世紀世紀8080年代軟件設計技術進入成熟期,向集成化、一體化方向發(fā)展。年代軟件設計技術進入成熟

10、期,向集成化、一體化方向發(fā)展。這一時期,集成電路的迅速發(fā)展使個人計算機得到了迅速發(fā)展,個人計算這一時期,集成電路的迅速發(fā)展使個人計算機得到了迅速發(fā)展,個人計算機與軟件工程相結合出現(xiàn)了軟件開發(fā)環(huán)境,稱為軟件工程支撐環(huán)境,又稱機與軟件工程相結合出現(xiàn)了軟件開發(fā)環(huán)境,稱為軟件工程支撐環(huán)境,又稱為為CASECASE(computer aided software engineeringcomputer aided software engineering)。它支持軟件開發(fā)和)。它支持軟件開發(fā)和維護的全過程,即從用戶需求定義、功能規(guī)格說明、設計規(guī)格說明、直到維護的全過程,即從用戶需求定義、功能規(guī)格說明、設

11、計規(guī)格說明、直到可執(zhí)行代碼的全部開發(fā)過程,最大程度的借助于計算機系統(tǒng)自動進行,是可執(zhí)行代碼的全部開發(fā)過程,最大程度的借助于計算機系統(tǒng)自動進行,是一個計算機自動管理的巨型系統(tǒng)。同時,程序設計的基本方法進一步得到一個計算機自動管理的巨型系統(tǒng)。同時,程序設計的基本方法進一步得到改善,如產(chǎn)生了第四代語言(改善,如產(chǎn)生了第四代語言(4GL4GL)和面向對象的程序設計方法。)和面向對象的程序設計方法。2020世紀世紀8080年代以來出現(xiàn)了好多面向對象的程序設計語言,以年代以來出現(xiàn)了好多面向對象的程序設計語言,以C+C+應用最為廣泛。應用最為廣泛。C+C+是是C C語言的一個超集,它保留了語言的一個超集,它

12、保留了C C語言中幾乎全部優(yōu)點,并在此基礎之語言中幾乎全部優(yōu)點,并在此基礎之上加上了面向對象的特點。上加上了面向對象的特點。JAVAJAVA由由C+C+發(fā)展而來,可在發(fā)展而來,可在Internet Internet 網(wǎng)絡上分網(wǎng)絡上分布執(zhí)行的程序設計語言。布執(zhí)行的程序設計語言。JAVAJAVA語言的重要特點是可在任何一個硬件和軟件語言的重要特點是可在任何一個硬件和軟件平臺上運行,具有分布性、可移植性、穩(wěn)定性、安全性等特點。平臺上運行,具有分布性、可移植性、穩(wěn)定性、安全性等特點。 (1 1)數(shù)據(jù)()數(shù)據(jù)(datadata): : 是客觀事物的符號表示,是客觀事物的符號表示,它能夠被計算機識別、它能

13、夠被計算機識別、儲存和加工處理。它是儲存和加工處理。它是計算機程序加工處理的計算機程序加工處理的原料,不僅指一般的整原料,不僅指一般的整數(shù)和實數(shù),而且包括字數(shù)和實數(shù),而且包括字符串、聲音、圖像等可符串、聲音、圖像等可被計算機接收和處理的被計算機接收和處理的信息。信息。(2 2)數(shù)據(jù)元素)數(shù)據(jù)元素 (data data elementelement): : 是數(shù)據(jù)的是數(shù)據(jù)的基本單位。有些情況下,基本單位。有些情況下,數(shù)據(jù)元素又稱為元素、數(shù)據(jù)元素又稱為元素、結點(結點(nodenode)、記錄)、記錄(recordrecord)。有時,一)。有時,一個元素可由若干數(shù)據(jù)項個元素可由若干數(shù)據(jù)項(dat

14、a itemdata item)組成。)組成。數(shù)據(jù)項是數(shù)據(jù)不可分割數(shù)據(jù)項是數(shù)據(jù)不可分割的最小數(shù)據(jù)單位。的最小數(shù)據(jù)單位。(3 3)數(shù)據(jù)對象)數(shù)據(jù)對象 (data data objectobject):是具有相同):是具有相同性質的數(shù)據(jù)元素的集合。性質的數(shù)據(jù)元素的集合。、 數(shù)據(jù)結構基礎數(shù)據(jù)結構基礎基本概念和術語基本概念和術語 (4 4)數(shù)據(jù)結構)數(shù)據(jù)結構 (data structuredata structure):是指數(shù)):是指數(shù)據(jù)之間的相互關系,即數(shù)據(jù)的組織形式。它據(jù)之間的相互關系,即數(shù)據(jù)的組織形式。它一般包括以下三個方面的內容;一般包括以下三個方面的內容; a. a.數(shù)據(jù)的邏輯結構(數(shù)據(jù)的邏

15、輯結構(logical structurelogical structure),),即數(shù)據(jù)元素之間的邏輯關系。即數(shù)據(jù)元素之間的邏輯關系。 b. b.數(shù)據(jù)的存儲結構數(shù)據(jù)的存儲結構 (storage structure) (storage structure),即數(shù)據(jù)元素及其關系在計算機存儲器內的表即數(shù)據(jù)元素及其關系在計算機存儲器內的表示。示。 c. c.數(shù)據(jù)的運算,即對數(shù)據(jù)所作的操作。數(shù)據(jù)的運算,即對數(shù)據(jù)所作的操作。 (5 5)數(shù)據(jù)類型)數(shù)據(jù)類型 (data typedata type):分為基本數(shù)):分為基本數(shù)據(jù)類型和結構數(shù)據(jù)類型兩種?;緮?shù)據(jù)類型據(jù)類型和結構數(shù)據(jù)類型兩種?;緮?shù)據(jù)類型如實數(shù)型

16、、整數(shù)型、布爾型等;而結構類型如實數(shù)型、整數(shù)型、布爾型等;而結構類型如數(shù)組、結構體等。如數(shù)組、結構體等。 算法描述和算法分析算法描述和算法分析 數(shù)據(jù)的運算是通過算法描述的。算法是由數(shù)據(jù)的運算是通過算法描述的。算法是由若干條指令的有窮序列組成。算法可用自然語若干條指令的有窮序列組成。算法可用自然語言、數(shù)學語言、或約定的符號語言來描述。若言、數(shù)學語言、或約定的符號語言來描述。若一個算法用機器可執(zhí)行的語言來編寫,則它就一個算法用機器可執(zhí)行的語言來編寫,則它就是一個程序。所以算法都以函數(shù)或過程的形式是一個程序。所以算法都以函數(shù)或過程的形式表示,即;表示,即; 算法名(參數(shù)表)算法名(參數(shù)表) 例例 i

17、ns_sqlist(V, i, b) ins_sqlist(V, i, b) /在順序表在順序表V V中第中第i i 個數(shù)據(jù)元素之前插入個數(shù)據(jù)元素之前插入b/b/ 其中其中/為注釋。為注釋。 對于同一個問題,可以給出多個不同的對于同一個問題,可以給出多個不同的算法,在這些算法中進行優(yōu)劣取舍是一個很重算法,在這些算法中進行優(yōu)劣取舍是一個很重要的問題,也就是對算法進行分析的過程。一要的問題,也就是對算法進行分析的過程。一個算法除了個算法除了“正確正確”以外,主要還考慮計算機以外,主要還考慮計算機在執(zhí)行該算法時所耗費的時間及所占有的存儲在執(zhí)行該算法時所耗費的時間及所占有的存儲空間,即時間復雜度和空間

18、復雜度??臻g,即時間復雜度和空間復雜度。 線性表線性表(1 1)線性表的定義)線性表的定義 線性表是一種最簡單的和最常用的數(shù)據(jù)線性表是一種最簡單的和最常用的數(shù)據(jù)結構。線性表的邏輯結構是由一組數(shù)據(jù)元素結構。線性表的邏輯結構是由一組數(shù)據(jù)元素序列構成,其中每一數(shù)據(jù)元素含有一個或多序列構成,其中每一數(shù)據(jù)元素含有一個或多個數(shù)據(jù)項,各個數(shù)據(jù)元素之間存在著線性的個數(shù)據(jù)項,各個數(shù)據(jù)元素之間存在著線性的邏輯關系。例如英文字母表(邏輯關系。例如英文字母表(A A,B B,C C,D D,ZZ)是一個線性表,表中的每一個英)是一個線性表,表中的每一個英文字母是一個數(shù)據(jù)元素。文字母是一個數(shù)據(jù)元素。(2 2)線性表的運

19、算)線性表的運算 數(shù)據(jù)的運算是定義在邏輯結構上的,而數(shù)據(jù)的運算是定義在邏輯結構上的,而運算是在存儲結構上進行的。對于線性表,運算是在存儲結構上進行的。對于線性表,常見的基本運算有以下幾種:常見的基本運算有以下幾種: a.a.存取操作:存取第存取操作:存取第i i 個數(shù)據(jù)元素,以便檢個數(shù)據(jù)元素,以便檢查或更新其中的數(shù)據(jù)項。查或更新其中的數(shù)據(jù)項。 b. b.插入操作:在表中的指定位置上,插入一插入操作:在表中的指定位置上,插入一個新的數(shù)據(jù)元素。個新的數(shù)據(jù)元素。 c. c.刪除操作:刪除表中第刪除操作:刪除表中第i i 個元素。個元素。 d. d.查找操作:按某個關鍵字的值,查找表中查找操作:按某個

20、關鍵字的值,查找表中相應的元素。相應的元素。 e. e.排序操作:按給定要求對表中元素重新排排序操作:按給定要求對表中元素重新排列。列。 并非任何時候都需要同時執(zhí)行以上運算,對并非任何時候都需要同時執(zhí)行以上運算,對于不同問題中的線性表,所需要執(zhí)行的運算可能于不同問題中的線性表,所需要執(zhí)行的運算可能不同。一般給出一組基本的運算,對于實際問題不同。一般給出一組基本的運算,對于實際問題中所涉及的更為復雜的運算,可以用基本運算的中所涉及的更為復雜的運算,可以用基本運算的組合來實現(xiàn)。組合來實現(xiàn)。(3 3)線性表的存儲結構)線性表的存儲結構 線性表的存儲結構有兩種:順序存儲結構和鏈式存線性表的存儲結構有兩

21、種:順序存儲結構和鏈式存儲結構。儲結構。 順序存儲結構順序存儲結構 將一個線性表存儲將一個線性表存儲到計算機,可以采用許到計算機,可以采用許多不同的方法,其中即多不同的方法,其中即簡單又自然的是順序存簡單又自然的是順序存儲方法:即把線性表的儲方法:即把線性表的結點按邏輯次序放在一結點按邏輯次序放在一組地址連續(xù)的存儲單元組地址連續(xù)的存儲單元里。用這種方法存儲的里。用這種方法存儲的線性表簡稱為順序表。線性表簡稱為順序表。順序表的存儲示意如圖順序表的存儲示意如圖3-13-1所示。所示。 鏈式存儲結構鏈式存儲結構 為了克服順序表的為了克服順序表的缺點,可以采用鏈接缺點,可以采用鏈接方式存儲線性表,通方

22、式存儲線性表,通常我們把鏈接方式存常我們把鏈接方式存儲的線性表稱為鏈表。儲的線性表稱為鏈表。如圖如圖3-23-2所示。所示。 由圖由圖3-13-1可知順序結可知順序結構存儲有以下特點:構存儲有以下特點: A A存儲結構的存儲存儲結構的存儲密度大,存儲空間利用密度大,存儲空間利用率高。率高。 B B能夠快速、隨時能夠快速、隨時訪問其中任意元素。訪問其中任意元素。 C C對該表進行插入對該表進行插入或刪除操作時,為保證或刪除操作時,為保證線性表的連續(xù)性,則會線性表的連續(xù)性,則會引起大量數(shù)據(jù)元素的移引起大量數(shù)據(jù)元素的移動。動。 D D存儲容量不宜擴存儲容量不宜擴充。充。圖圖3-1 順序存儲結構示意圖

23、順序存儲結構示意圖元素元素1元素元素2元素元素3元素元素i元素元素nL1L2=L1+LL3=L1+2LLi=Li+(i-1)LLn=L1+(n-1)L元素地址元素地址 內存狀態(tài)內存狀態(tài)圖圖3-2 鏈式存儲結構示意圖鏈式存儲結構示意圖元素元素1元素元素2L3L21元素元素4L23元素元素3L10元素元素5L1L2L3L4L10L11L21L22L23L24元素值元素值指針指針元素值元素值指針指針元素值元素值指針指針元素值元素值指針指針元素值元素值指針指針結點結點1結點結點2結點結點3結點結點4結點結點5 由圖由圖3-23-2可見,數(shù)據(jù)元素之間的邏輯關系可見,數(shù)據(jù)元素之間的邏輯關系是用指針來鏈接的

24、。對于每個數(shù)據(jù)元素,除是用指針來鏈接的。對于每個數(shù)據(jù)元素,除了元素值以外,還有一個指針(或鏈)用來了元素值以外,還有一個指針(或鏈)用來指示另一個數(shù)據(jù)元素的地址。我們將這個由指示另一個數(shù)據(jù)元素的地址。我們將這個由數(shù)據(jù)元素的值和指針組成的總體稱為結點,數(shù)據(jù)元素的值和指針組成的總體稱為結點,表示一個數(shù)據(jù)元素。鏈表中各結點的位置在表示一個數(shù)據(jù)元素。鏈表中各結點的位置在內存中是任意的,通過指針將它們聯(lián)系起來。內存中是任意的,通過指針將它們聯(lián)系起來。邏輯上最后的結點指針不指向任何地方,常邏輯上最后的結點指針不指向任何地方,常用用“”表示。表示。、 操作系統(tǒng)操作系統(tǒng)w操作系統(tǒng)用來管理和控制計算機硬件和操作

25、系統(tǒng)用來管理和控制計算機硬件和軟件資源,并用以方便用戶使用并提高系統(tǒng)軟件資源,并用以方便用戶使用并提高系統(tǒng)資源利用率的一組程序(軟件)。資源利用率的一組程序(軟件)。w操作系統(tǒng)的功能是管理和控制計算機所操作系統(tǒng)的功能是管理和控制計算機所有軟硬件資源,使系統(tǒng)各部分協(xié)調一致的工有軟硬件資源,使系統(tǒng)各部分協(xié)調一致的工作,從而達到提高系統(tǒng)資源利用率的目的。作,從而達到提高系統(tǒng)資源利用率的目的。計算機系統(tǒng)資源通常有四種:處理機、存儲計算機系統(tǒng)資源通常有四種:處理機、存儲器、外部設備、以及各種程序和數(shù)據(jù)。相應器、外部設備、以及各種程序和數(shù)據(jù)。相應的操作系統(tǒng)的功能也具有四大功能:處理機的操作系統(tǒng)的功能也具有

26、四大功能:處理機管理功能、存儲器管理功能、外部設備管理管理功能、存儲器管理功能、外部設備管理功能、文件管理功能。功能、文件管理功能。進程調度進程調度阻塞阻塞阻塞阻塞阻塞阻塞I/O 請求請求I/O完成完成圖圖3-3 進程狀態(tài)轉換示意圖進程狀態(tài)轉換示意圖 操作系統(tǒng)的功能操作系統(tǒng)的功能wa.處理機管理處理機管理w 在多道程序系統(tǒng)中,多個程在多道程序系統(tǒng)中,多個程序同時執(zhí)行,需要對序同時執(zhí)行,需要對CPU的時間的時間進行合理分配。處理機管理也稱進行合理分配。處理機管理也稱為進程管理,通過引入為進程管理,通過引入“進程進程”的概念使的概念使CPU有條不紊的工作,有條不紊的工作,使資源得到最充分的利用,主

27、要使資源得到最充分的利用,主要包括處理中斷事件和處理機調度。包括處理中斷事件和處理機調度。所謂進程,是指程序的一次執(zhí)行。所謂進程,是指程序的一次執(zhí)行。進程有三個基本狀態(tài):就緒狀態(tài)、進程有三個基本狀態(tài):就緒狀態(tài)、運行狀態(tài)、阻塞狀態(tài),如圖運行狀態(tài)、阻塞狀態(tài),如圖3-3 所示;所示;b.b.存儲管理存儲管理 內存是除內存是除CPUCPU之外之外最寶貴的資源。而計最寶貴的資源。而計算機的內存資源是有算機的內存資源是有限的。存儲管理主要限的。存儲管理主要解決多道程序在內存解決多道程序在內存中的分配,合理利用中的分配,合理利用內存空間,并通過內內存空間,并通過內外存的管理來擴大存外存的管理來擴大存儲空間。

28、其主要包括:儲空間。其主要包括:內存的分配、存儲擴內存的分配、存儲擴充、存儲保護三個方充、存儲保護三個方面。面。c. c. 設備管理設備管理 計算機支持多種設備,計算機支持多種設備,該管理利用操作系統(tǒng)提供該管理利用操作系統(tǒng)提供的設備驅動程序,實現(xiàn)對的設備驅動程序,實現(xiàn)對外部設備進行有效管理。外部設備進行有效管理。負責把外部設備合理地分負責把外部設備合理地分配給進程,消除各設備忙配給進程,消除各設備忙閑不均的現(xiàn)象,使之有效閑不均的現(xiàn)象,使之有效地工作。其主要功能體現(xiàn)地工作。其主要功能體現(xiàn)在:分配和驅動外部設備、在:分配和驅動外部設備、利用中斷、通道、緩沖技利用中斷、通道、緩沖技術,提高外部設備的

29、使用術,提高外部設備的使用效率。效率。d. d. 文件管理文件管理 文件管理是對各文件管理是對各類文件進行有序的管類文件進行有序的管理,支持對文件的存理,支持對文件的存儲、檢索和修改及文儲、檢索和修改及文件保護,方便用戶安件保護,方便用戶安全地訪問它們。其主全地訪問它們。其主要功能為:按名存取要功能為:按名存取文件、有效分配存儲文件、有效分配存儲空間、文件的共享和空間、文件的共享和保護、用戶可通過命保護、用戶可通過命令訪問各種文件。令訪問各種文件。 通常按照操作系通常按照操作系統(tǒng)的使用環(huán)境,可將其統(tǒng)的使用環(huán)境,可將其分為三大類:分為三大類:w多道批處理系統(tǒng)多道批處理系統(tǒng)w分時系統(tǒng)、分時系統(tǒng)、w

30、實時系統(tǒng)。實時系統(tǒng)。(2 2)操作系統(tǒng)的分類)操作系統(tǒng)的分類a.a.多道批處理系統(tǒng)多道批處理系統(tǒng)w 多道批處理系統(tǒng)實質上是多道批處理系統(tǒng)實質上是“多道程序多道程序”和和“批批處理處理”的結合。的結合。“任務任務”和和“作業(yè)作業(yè)”是指用戶一次上是指用戶一次上機要求計算機系統(tǒng)完成的工作的總稱;機要求計算機系統(tǒng)完成的工作的總稱;“多道程序多道程序”是指在計算機內存中同時可以存放若干道作業(yè),允許是指在計算機內存中同時可以存放若干道作業(yè),允許交替地由處理機運行;交替地由處理機運行;“批處理批處理”是指用戶與作業(yè)之是指用戶與作業(yè)之間沒有交互作用,用戶不能直接控制作業(yè)的運行,即間沒有交互作用,用戶不能直接控

31、制作業(yè)的運行,即一批經(jīng)過合理組織的作業(yè)一旦提交給計算機系統(tǒng),其一批經(jīng)過合理組織的作業(yè)一旦提交給計算機系統(tǒng),其執(zhí)行由計算機系統(tǒng)控制。執(zhí)行由計算機系統(tǒng)控制。w多道批處理系統(tǒng)具有自動化程度高,資源多道批處理系統(tǒng)具有自動化程度高,資源利用率高,作業(yè)吞吐量大等特點,多應用在大利用率高,作業(yè)吞吐量大等特點,多應用在大中型計算機系統(tǒng)中。其缺點是交互性差。中型計算機系統(tǒng)中。其缺點是交互性差。b. b. 分時系統(tǒng)分時系統(tǒng)w分時系統(tǒng)是一種多用戶操作系統(tǒng),它是將中分時系統(tǒng)是一種多用戶操作系統(tǒng),它是將中央處理機(央處理機(CPUCPU)的處理時間進行分割,即把工)的處理時間進行分割,即把工作時間分割成一個個時間片,每

32、個用戶輪流使用作時間分割成一個個時間片,每個用戶輪流使用時間片。一臺計算機為一組終端用戶服務,每個時間片。一臺計算機為一組終端用戶服務,每個用戶通過終端控制程序的運行。由于時間片分割用戶通過終端控制程序的運行。由于時間片分割很小,每個用戶感覺不到時間上的等待或滯留,很小,每個用戶感覺不到時間上的等待或滯留,如同自己獨立占用一臺計算機一樣。如同自己獨立占用一臺計算機一樣。w分時系統(tǒng)具有良好的人機交互性,用戶使用方便,分時系統(tǒng)具有良好的人機交互性,用戶使用方便,其主要應用于中小型系統(tǒng)。其主要應用于中小型系統(tǒng)。c. c. 實時系統(tǒng)實時系統(tǒng) 實時系統(tǒng)是指要求系實時系統(tǒng)是指要求系統(tǒng)及時響應外部事件的請統(tǒng)

33、及時響應外部事件的請求,在規(guī)定的時間內完成求,在規(guī)定的時間內完成對該事件的處理并控制所對該事件的處理并控制所有實時設備和實時任務協(xié)有實時設備和實時任務協(xié)調一致地工作。實時系統(tǒng)調一致地工作。實時系統(tǒng)包括實時過程控制和實時包括實時過程控制和實時信息處理兩種,前者主要信息處理兩種,前者主要應用于工業(yè)生產(chǎn)的過程控應用于工業(yè)生產(chǎn)的過程控制,而后者主要應用于信制,而后者主要應用于信息處理系統(tǒng),如查詢系統(tǒng)、息處理系統(tǒng),如查詢系統(tǒng)、訂票系統(tǒng)等。訂票系統(tǒng)等。 w以上三類操作系以上三類操作系統(tǒng)可以根據(jù)實際需要統(tǒng)可以根據(jù)實際需要組合使用,實現(xiàn)最佳組合使用,實現(xiàn)最佳功能。隨著計算機系功能。隨著計算機系統(tǒng)結構的變化,操

34、作統(tǒng)結構的變化,操作系統(tǒng)技術也有了進一系統(tǒng)技術也有了進一步的發(fā)展,產(chǎn)生了一步的發(fā)展,產(chǎn)生了一些具有特點的操作系些具有特點的操作系統(tǒng),如個人計算機操統(tǒng),如個人計算機操作系統(tǒng)、分布式操作作系統(tǒng)、分布式操作系統(tǒng)和網(wǎng)絡操作系統(tǒng)。系統(tǒng)和網(wǎng)絡操作系統(tǒng)。w個人計算機操作系統(tǒng)是一個單用戶交互式的操個人計算機操作系統(tǒng)是一個單用戶交互式的操作系統(tǒng),它以文件管理為主,具有簡單的設備管理作系統(tǒng),它以文件管理為主,具有簡單的設備管理功能,并向用戶提供了一組功能豐富的鍵盤操作命功能,并向用戶提供了一組功能豐富的鍵盤操作命令。令。w分布式操作系統(tǒng)是指由多臺計算機組成的一個分布式操作系統(tǒng)是指由多臺計算機組成的一個系統(tǒng),相互協(xié)

35、作地完成一個任務。任意兩臺計算機系統(tǒng),相互協(xié)作地完成一個任務。任意兩臺計算機之間可以交換信息,無主次之分,系統(tǒng)資源為所有之間可以交換信息,無主次之分,系統(tǒng)資源為所有用戶共享。用戶共享。w網(wǎng)絡操作系統(tǒng)是為網(wǎng)絡中各臺計算機之間網(wǎng)絡操作系統(tǒng)是為網(wǎng)絡中各臺計算機之間提供通信和資源共享。除了具有常規(guī)操作系統(tǒng)提供通信和資源共享。除了具有常規(guī)操作系統(tǒng)功能外,還具有網(wǎng)絡管理功能。功能外,還具有網(wǎng)絡管理功能。 (3 3) 常用操作系統(tǒng)簡介常用操作系統(tǒng)簡介 Windows Windows Windows Windows以其靈活方便的窗口操作、彈出式菜單以及以其靈活方便的窗口操作、彈出式菜單以及命令對話框,為用戶使

36、用計算機提供了方便,并為人們命令對話框,為用戶使用計算機提供了方便,并為人們廣泛接受。它從廣泛接受。它從19901990年由年由Microsoft Microsoft 公司推出公司推出Windows Windows 3.03.0,先后進行了多次改版。如,先后進行了多次改版。如Windows3.1Windows3.1、Windows 98Windows 98、Windows NTWindows NT、Windows2000Windows2000、Windows XP Windows XP 等。其中等。其中Windows95Windows95以上版本具有網(wǎng)絡管理功能。還具有友好的人以上版本具有網(wǎng)絡

37、管理功能。還具有友好的人機界面、功能強大的應用程序、多任務并行處理的功能機界面、功能強大的應用程序、多任務并行處理的功能等諸多優(yōu)點,所以深受用戶歡迎。等諸多優(yōu)點,所以深受用戶歡迎。 UNIX UNIX UNIXUNIX操作系統(tǒng)是一個通用的、操作系統(tǒng)是一個通用的、交互的分時系統(tǒng),適用于小型機交互的分時系統(tǒng),適用于小型機和微型機。它由美國貝爾實驗室和微型機。它由美國貝爾實驗室19691969年研制的,其特點是結構緊年研制的,其特點是結構緊湊、功能強大、使用方便、易于湊、功能強大、使用方便、易于擴充、修改維護和移植。它主要擴充、修改維護和移植。它主要由兩部分組成:內核和外殼由兩部分組成:內核和外殼(

38、shellshell語言)。其內核部分負語言)。其內核部分負責進程管理、文件管理、存儲管責進程管理、文件管理、存儲管理、設備管理等,而外殼語言是理、設備管理等,而外殼語言是用來控制、使用內核以及語言處用來控制、使用內核以及語言處理程序和軟件工具。理程序和軟件工具。 Linux Linux LinuxLinux是目前最流行的操作是目前最流行的操作系統(tǒng)之一,是系統(tǒng)之一,是UNIXUNIX的的PCPC版。它版。它從從19911991年芬蘭人年芬蘭人Linux Linux Torvalds Torvalds 創(chuàng)建至今發(fā)展迅速。創(chuàng)建至今發(fā)展迅速。它具有占用空間小、高效、健它具有占用空間小、高效、健壯和功

39、能強大等特性,特別是壯和功能強大等特性,特別是可以免費使用和源代碼開放,可以免費使用和源代碼開放,為用戶廣泛接受。其中的為用戶廣泛接受。其中的Red Red Hat Linux Hat Linux 版是一個杰出的代版是一個杰出的代表,它在表,它在Linux Linux 基礎上開發(fā)了基礎上開發(fā)了許多優(yōu)秀的軟件和工具,并提許多優(yōu)秀的軟件和工具,并提供了最新軟硬件的技術支持。供了最新軟硬件的技術支持。、編譯基礎、編譯基礎(1) 編譯程序的作用編譯程序的作用編譯編譯連接連接運行運行源程序源程序目標程序目標程序可執(zhí)行程序可執(zhí)行程序結果程序庫程序庫數(shù)據(jù)數(shù)據(jù)圖圖3-4 程序的編譯與運行示意圖程序的編譯與運行

40、示意圖w人們利用計算機可以進行復雜的科學計算、工人們利用計算機可以進行復雜的科學計算、工業(yè)過程控制、企業(yè)管理和辦公自動化等工作。計算業(yè)過程控制、企業(yè)管理和辦公自動化等工作。計算機在上述各領域的應用都是在計算機硬件和系統(tǒng)軟機在上述各領域的應用都是在計算機硬件和系統(tǒng)軟件支持下,運用某種高級語言編制出程序并在該環(huán)件支持下,運用某種高級語言編制出程序并在該環(huán)境下運行來實現(xiàn)的。在計算機上執(zhí)行一個高級語言境下運行來實現(xiàn)的。在計算機上執(zhí)行一個高級語言程序,一般要分為兩步:程序,一般要分為兩步:w第一步,用一個編譯程序將高級語言程序翻譯成機器第一步,用一個編譯程序將高級語言程序翻譯成機器語言程序;語言程序;w

41、第二步,運行所得的機器語言程序并求得計算結果。第二步,運行所得的機器語言程序并求得計算結果。w編譯程序就是將某一種語言(源語言)程序翻編譯程序就是將某一種語言(源語言)程序翻譯成另一種語言(目標語言)程序,即進行符號轉譯成另一種語言(目標語言)程序,即進行符號轉換。程序的編譯與運行如圖換。程序的編譯與運行如圖 3-4 所示。所示。(2)編譯編譯程序程序的組的組成與成與結構結構目標程序詞法分析語法分析中間代碼生成代碼優(yōu)化目標代碼生成表 格 管 理出 錯 管 理源程序圖圖3-5 編譯程序的基本結構編譯程序的基本結構雖然各高級語言的特點不同,其編譯程序也有差別,但各編雖然各高級語言的特點不同,其編譯

42、程序也有差別,但各編譯程序的基本結構均相似。編譯程序的結構可按編譯的五個階段譯程序的基本結構均相似。編譯程序的結構可按編譯的五個階段分模塊進行設計,如圖分模塊進行設計,如圖3-5所示。圖所示。圖3-5中編譯過程源程序的各種中編譯過程源程序的各種信息被保留在各種不同的表格里,編譯各階段的工作都涉及到構信息被保留在各種不同的表格里,編譯各階段的工作都涉及到構造、查找、更新各種有關表格。造、查找、更新各種有關表格。w編譯程序的工作,編譯程序的工作,從輸入源程序到輸出目從輸入源程序到輸出目標程序的整個過程,是標程序的整個過程,是很復雜的。這個過程一很復雜的。這個過程一般可分為五個階段:詞般可分為五個階

43、段:詞法分析、語法分析、中法分析、語法分析、中間代碼生成、代碼優(yōu)化、間代碼生成、代碼優(yōu)化、目標代碼生成。目標代碼生成。w上述編譯程序工作上述編譯程序工作過程的五個階段不是每過程的五個階段不是每個階段都必不可少的,個階段都必不可少的,在實際應用中有些階段在實際應用中有些階段可以省去。若編譯程序可以省去。若編譯程序對優(yōu)化沒有要求,可省對優(yōu)化沒有要求,可省去代碼優(yōu)化;若要加快去代碼優(yōu)化;若要加快編譯速度,可將中間代編譯速度,可將中間代碼生成階段省去。碼生成階段省去。3.2 3.2 數(shù)據(jù)庫技術基礎數(shù)據(jù)庫技術基礎 數(shù)據(jù)庫技術產(chǎn)生于數(shù)據(jù)庫技術產(chǎn)生于2020世紀世紀6060年代中期,是年代中期,是數(shù)據(jù)管理的

44、最新技術,是計算機科學的重要數(shù)據(jù)管理的最新技術,是計算機科學的重要分支,它的出現(xiàn)極大地促進了計算機應用向分支,它的出現(xiàn)極大地促進了計算機應用向各行業(yè)滲透。從而不難看出數(shù)據(jù)庫技術的重各行業(yè)滲透。從而不難看出數(shù)據(jù)庫技術的重要性所在。要性所在。 1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫技術的新發(fā)展數(shù)據(jù)庫技術的新發(fā)展1 1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述(1 1)數(shù)據(jù)庫技術的基本概念)數(shù)據(jù)庫技術的基本概念w數(shù)據(jù)(數(shù)據(jù)(DataData):): 通常是指用符號記錄下來的,可以識別的信息。信息是關于現(xiàn)實世界事物存在的方式或運動狀態(tài)的客觀反映。w數(shù)據(jù)庫(數(shù)據(jù)庫(Data BaseData Base):):簡稱D

45、B,是指按一定方式組織起來的相互關聯(lián)的數(shù)據(jù)集合。如人事檔案數(shù)據(jù)庫、圖書資料數(shù)據(jù)庫、藥品管理數(shù)據(jù)庫等。w數(shù)據(jù)庫管理系統(tǒng)(數(shù)據(jù)庫管理系統(tǒng)(Data Base Management SystemData Base Management System):):簡稱DBMS,是用戶與操作系統(tǒng)之間的一層管理軟件,它為用戶或應用程序提供訪問數(shù)據(jù)庫的方法,包括數(shù)據(jù)庫的建立、查詢、更新及對各種數(shù)據(jù)的控制。w數(shù)據(jù)庫系統(tǒng)(數(shù)據(jù)庫系統(tǒng)(Data Base SystemData Base System):):簡稱DBS,是實現(xiàn)有組織地、動態(tài)地存儲大量關聯(lián)數(shù)據(jù)、方便多用戶訪問的計算機軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng),即它是采

46、用了數(shù)據(jù)庫技術的計算機系統(tǒng)。w數(shù)據(jù)庫技術:數(shù)據(jù)庫技術:是在操作系統(tǒng)的文件系統(tǒng)的基礎上發(fā)展起來的,它是研究數(shù)據(jù)庫的結構、存儲、設計、管理和使用的一門軟件學科。(2 2)數(shù)據(jù)描述和數(shù)據(jù)模型)數(shù)據(jù)描述和數(shù)據(jù)模型數(shù)據(jù)描述:是數(shù)據(jù)處理中的一個重要環(huán)節(jié)。從事物數(shù)據(jù)描述:是數(shù)據(jù)處理中的一個重要環(huán)節(jié)。從事物的特征到計算機中的具體表示,實際上經(jīng)歷了三個的特征到計算機中的具體表示,實際上經(jīng)歷了三個領域:現(xiàn)實世界、信息世界、機器世界。領域:現(xiàn)實世界、信息世界、機器世界。w現(xiàn)實世界的數(shù)據(jù)描述主要是對原始數(shù)據(jù)進行綜合現(xiàn)實世界的數(shù)據(jù)描述主要是對原始數(shù)據(jù)進行綜合工作,取出數(shù)據(jù)庫系統(tǒng)所需要研究的數(shù)據(jù),如各種報工作,取出數(shù)據(jù)庫

47、系統(tǒng)所需要研究的數(shù)據(jù),如各種報表、單據(jù)、查詢格式等。表、單據(jù)、查詢格式等。w信息世界的數(shù)據(jù)描述,是人們將現(xiàn)實世界在信息世界的數(shù)據(jù)描述,是人們將現(xiàn)實世界在人腦中的反映用文字或符號表示出來,它需要用人腦中的反映用文字或符號表示出來,它需要用以下一些基本術語來實現(xiàn):以下一些基本術語來實現(xiàn): 實體實體(entity)(entity):實體是指客觀存在并相互區(qū)別的事物。 實體集(實體集(entity setentity set):):具有相同性質的同類實體的集合。 屬性(屬性(attributeattribute):):實體具有許多特性,每一個特性稱為屬性。每一個屬性有一個取值范圍,即值域。 主鍵(主鍵

48、(keykey):唯一標識實體的屬性集為主鍵。 w機器世界中的信息是以數(shù)據(jù)形式存儲機器世界中的信息是以數(shù)據(jù)形式存儲的,其數(shù)據(jù)描述需要用以下術語表示。的,其數(shù)據(jù)描述需要用以下術語表示。 字段(字段(fieldfield):標記實體屬性的命名):標記實體屬性的命名單位稱為字段(或數(shù)據(jù)項)。它是可命名單位稱為字段(或數(shù)據(jù)項)。它是可命名的最小數(shù)據(jù)單位。的最小數(shù)據(jù)單位。 記錄(記錄(recordrecord):字段的有序集合稱為):字段的有序集合稱為記錄。一般用一個記錄描述一個實體。記錄。一般用一個記錄描述一個實體。 文件(文件(filefile):同一類記錄的匯集稱為):同一類記錄的匯集稱為文件。文

49、件是描述實體集的。文件。文件是描述實體集的。 主鍵(主鍵(keykey):能唯一標識文件中每個):能唯一標識文件中每個記錄的字段或字段集,稱為文件的主鍵。記錄的字段或字段集,稱為文件的主鍵。 w現(xiàn)實世界中,事物是相互聯(lián)系的。這種聯(lián)系必然在信息世界現(xiàn)實世界中,事物是相互聯(lián)系的。這種聯(lián)系必然在信息世界中體現(xiàn)出來,即實體是相互有聯(lián)系的。實體的聯(lián)系有兩類:中體現(xiàn)出來,即實體是相互有聯(lián)系的。實體的聯(lián)系有兩類:一類是實體內部的聯(lián)系,即同一記錄內部各個字段之間的一類是實體內部的聯(lián)系,即同一記錄內部各個字段之間的聯(lián)系;聯(lián)系;另一類是實體與實體之間的聯(lián)系,即實體中記錄之間的聯(lián)另一類是實體與實體之間的聯(lián)系,即實體

50、中記錄之間的聯(lián)系。系。而實體之間的聯(lián)系比較復雜,其相應的數(shù)據(jù)結構也比較復雜,而實體之間的聯(lián)系比較復雜,其相應的數(shù)據(jù)結構也比較復雜,這類聯(lián)系在數(shù)據(jù)庫技術中應用較多。實體間的聯(lián)系有兩種:這類聯(lián)系在數(shù)據(jù)庫技術中應用較多。實體間的聯(lián)系有兩種:一是同一實體集中實體之間的聯(lián)系(記錄之間的聯(lián)系),一是同一實體集中實體之間的聯(lián)系(記錄之間的聯(lián)系),二是不同實體集間的實體聯(lián)系(文件之間的記錄與記錄二是不同實體集間的實體聯(lián)系(文件之間的記錄與記錄的聯(lián)系)。的聯(lián)系)。 w它有以下三種情況:它有以下三種情況: 一對一聯(lián)系:記作一對一聯(lián)系:記作 1 1:1 1。例如學校與校長之間,。例如學校與校長之間,火車的座位與乘客

51、之間的聯(lián)系都是一對一聯(lián)系。火車的座位與乘客之間的聯(lián)系都是一對一聯(lián)系。 一對多聯(lián)系:記作一對多聯(lián)系:記作1 1:N N。例如一個學校有多名。例如一個學校有多名學生,而每個學生均在同一所學校學習,學校與學學生,而每個學生均在同一所學校學習,學校與學生之間就是一對多的聯(lián)系。生之間就是一對多的聯(lián)系。 多對多聯(lián)系:記作多對多聯(lián)系:記作M M:N N。例如課程與學生之間,一個。例如課程與學生之間,一個學生可選多門課程,而每一門課程有多名學生選修,課學生可選多門課程,而每一門課程有多名學生選修,課程與學生之間是多對多的聯(lián)系。程與學生之間是多對多的聯(lián)系。 數(shù)據(jù)模型數(shù)據(jù)模型數(shù)據(jù)模型是現(xiàn)實世界數(shù)據(jù)特征的抽象。數(shù)據(jù)

52、模型是現(xiàn)實世界數(shù)據(jù)特征的抽象。由于計算機不可能直接處理現(xiàn)實世界中的由于計算機不可能直接處理現(xiàn)實世界中的事物,人們必須先把具體事物轉換成計算事物,人們必須先把具體事物轉換成計算機能夠處理的數(shù)據(jù)。在數(shù)據(jù)庫中音樂數(shù)據(jù)機能夠處理的數(shù)據(jù)。在數(shù)據(jù)庫中音樂數(shù)據(jù)模型來抽象、表示和處理現(xiàn)實世界中的信模型來抽象、表示和處理現(xiàn)實世界中的信息。數(shù)據(jù)庫系統(tǒng)均是基于某種數(shù)據(jù)模型的,息。數(shù)據(jù)庫系統(tǒng)均是基于某種數(shù)據(jù)模型的,不同的數(shù)據(jù)模型,實際上是提供給我們模不同的數(shù)據(jù)模型,實際上是提供給我們模型化信息的不同工具。數(shù)據(jù)模型是數(shù)據(jù)庫型化信息的不同工具。數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎。根據(jù)模型應用的不同系統(tǒng)的核心和基礎。根據(jù)模型

53、應用的不同目的,可將模型劃分為兩類:概念模型和目的,可將模型劃分為兩類:概念模型和數(shù)據(jù)模型。數(shù)據(jù)模型。 概念模型概念模型 概念模型又稱信息模型,它是按照用戶的觀點來對信息概念模型又稱信息模型,它是按照用戶的觀點來對信息建模,主要用于數(shù)據(jù)庫設計。建模,主要用于數(shù)據(jù)庫設計。 概念模型的表示方法很多,其中最常用的是概念模型的表示方法很多,其中最常用的是P.P.ChenP.P.Chen于于19761976年提出的實體聯(lián)系方法。該方法用年提出的實體聯(lián)系方法。該方法用ERER圖來描述現(xiàn)實世圖來描述現(xiàn)實世界的概念模型。界的概念模型。ERER方法也稱為方法也稱為ERER模型。模型。ERER方法提供以下四方法提

54、供以下四種基本工具來實現(xiàn)種基本工具來實現(xiàn)ERER圖:圖: A. A.矩形框,表示實體類型。矩形框,表示實體類型。 B. B.菱形框,表示聯(lián)系類型。菱形框,表示聯(lián)系類型。 C. C.橢圓型框,表示實體類型和聯(lián)系類型的屬性。對于鍵的橢圓型框,表示實體類型和聯(lián)系類型的屬性。對于鍵的屬性,在屬性名下畫一橫線。屬性,在屬性名下畫一橫線。 D. D.直線,表示聯(lián)系類型和相關實體類型之間的聯(lián)系,并直線,表示聯(lián)系類型和相關實體類型之間的聯(lián)系,并在直線端部標注其種類(在直線端部標注其種類(1 1:1 1,1 1:N N,M M:N N)。例如一個具)。例如一個具體的體的ERER圖,圖圖,圖3-63-6所示。所示

55、。項目項目代號代號日期日期項目項目名稱名稱項目項目項目項目-零件零件零件零件零件零件代號代號零件零件名名顏色顏色重量重量零件零件數(shù)量數(shù)量MN圖3-6 ER圖實例 數(shù)據(jù)模型數(shù)據(jù)模型 數(shù)據(jù)模型是按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,主要數(shù)據(jù)模型是按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,主要用于數(shù)據(jù)庫管理系統(tǒng)的實現(xiàn),它主要包括;層次模用于數(shù)據(jù)庫管理系統(tǒng)的實現(xiàn),它主要包括;層次模型、關系模型、網(wǎng)狀模型和面向對象模型等。型、關系模型、網(wǎng)狀模型和面向對象模型等。 層次模型:用樹型結構表示實體類型和實體間聯(lián)系的數(shù)層次模型:用樹型結構表示實體類型和實體間聯(lián)系的數(shù)據(jù)模型,據(jù)模型,如圖如圖3-73-7所示所示。 關系模型:用表格結

56、構表達集與實體間聯(lián)系的數(shù)據(jù)模關系模型:用表格結構表達集與實體間聯(lián)系的數(shù)據(jù)模型,型,如表如表3-13-1所示。所示。 網(wǎng)狀模型:網(wǎng)狀模型: 用有向圖結構表示實體類型及實體間聯(lián)系的用有向圖結構表示實體類型及實體間聯(lián)系的數(shù)據(jù)模型。數(shù)據(jù)模型。如圖如圖3-8 3-8 所示所示。 面向對象模型:用對象和類來表示實體類型和實體間聯(lián)面向對象模型:用對象和類來表示實體類型和實體間聯(lián)系的數(shù)據(jù)模型。系的數(shù)據(jù)模型。如圖如圖3-93-9所示所示 M1M2M3M4M5M6圖3-7 層次模型示例學號姓名年齡性別系別9921108李明21男信息系9921126王妍22女信息系9921208馬凱22男信息系9922210劉青青

57、21男物理系9918109方芳20女數(shù)學系表關系模型示意圖表關系模型示意圖姓名性別年齡姓名性別年齡系別專業(yè)姓名性別年齡班級特長類 學生類 大學生類 小學生圖3-9 面向對象模型示意S1S2SP1SP2SP3SP4SP5P1P2P3圖3-8 網(wǎng)狀模型示意(3 3) 數(shù)據(jù)庫的體系結構數(shù)據(jù)庫的體系結構 數(shù)據(jù)庫的體系結構分為三級,內部級、概念級、數(shù)據(jù)庫的體系結構分為三級,內部級、概念級、外部級。如圖外部級。如圖3-103-10所示。所示。 用戶A用戶B用戶C外模式外模式外模式概念模式內模式數(shù)據(jù)庫外部級概念級內部級圖3-10數(shù)據(jù)庫系統(tǒng)的體系結構w外部級是最接近用戶的一級,外部級是最接近用戶的一級,是每個

58、用戶所能看到的數(shù)據(jù)庫內容,是每個用戶所能看到的數(shù)據(jù)庫內容,它是整個數(shù)據(jù)庫的一部分,稱為用它是整個數(shù)據(jù)庫的一部分,稱為用戶視圖或外部視圖。每個外視圖的戶視圖或外部視圖。每個外視圖的具體表示稱為外模式,又稱子模式。具體表示稱為外模式,又稱子模式。w概念級觀察到的是整個數(shù)概念級觀察到的是整個數(shù)據(jù)庫的全部信息,稱為全局視據(jù)庫的全部信息,稱為全局視圖。全局視圖的具體表示稱為圖。全局視圖的具體表示稱為概念模式、簡稱模式。概念模式、簡稱模式。w內部級是最接近存儲設備內部級是最接近存儲設備的一級,從這一級觀察到的數(shù)的一級,從這一級觀察到的數(shù)據(jù)庫就是被存儲的數(shù)據(jù)庫,稱據(jù)庫就是被存儲的數(shù)據(jù)庫,稱為內視圖。內視圖的

59、具體表示為內視圖。內視圖的具體表示稱為內模式,又稱為物理模式。稱為內模式,又稱為物理模式。w用戶用戶A用戶用戶B用戶用戶C外外模式外模式外模式概念模式模式外模式外模式概念模式內模式數(shù)據(jù)庫外部級概念級內模式數(shù)據(jù)庫外部級概念級內部級圖內部級圖3-10數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)庫系統(tǒng)的體系結構體系結構w數(shù)據(jù)庫的三級體系結構數(shù)據(jù)庫的三級體系結構是數(shù)據(jù)庫的三個抽象級別,是數(shù)據(jù)庫的三個抽象級別,它將數(shù)據(jù)的具體組織留給它將數(shù)據(jù)的具體組織留給DBMS去做,用戶只抽象地去做,用戶只抽象地處理數(shù)據(jù),而不必關心數(shù)據(jù)處理數(shù)據(jù),而不必關心數(shù)據(jù)在計算機中的表示和存儲。在計算機中的表示和存儲。為了實現(xiàn)三個級別的轉換,為了實現(xiàn)三個級別

60、的轉換,DBMS在三個級別之間提供在三個級別之間提供了兩個層次的映像,即外模了兩個層次的映像,即外模式式/概念模式映像和概念模概念模式映像和概念模式式/內模式映像。內模式映像。2. 2.數(shù)據(jù)庫技術的新發(fā)展數(shù)據(jù)庫技術的新發(fā)展 數(shù)據(jù)庫技術是計算機軟件領域的一數(shù)據(jù)庫技術是計算機軟件領域的一個重要分支,經(jīng)過三十多年的發(fā)展經(jīng)歷個重要分支,經(jīng)過三十多年的發(fā)展經(jīng)歷了第一代(層次和網(wǎng)狀數(shù)據(jù)庫)和第二了第一代(層次和網(wǎng)狀數(shù)據(jù)庫)和第二代(關系數(shù)據(jù)庫),已形成了相當規(guī)模代(關系數(shù)據(jù)庫),已形成了相當規(guī)模的理論體系和應用技術。隨著相關學科的理論體系和應用技術。隨著相關學科的不斷發(fā)展和應用領域的不斷延伸,數(shù)的不斷發(fā)展

溫馨提示

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

評論

0/150

提交評論