




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、計(jì)算機(jī)軟件技術(shù)基礎(chǔ)知識(shí)3.1 3.1 軟件技術(shù)基礎(chǔ)本節(jié)內(nèi)容本節(jié)內(nèi)容: :、基礎(chǔ)知識(shí)、基礎(chǔ)知識(shí)、數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)、數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)、 操作系統(tǒng)操作系統(tǒng)、編譯基礎(chǔ)、編譯基礎(chǔ) 計(jì)算機(jī)軟件的概念計(jì)算機(jī)軟件的概念 計(jì)算機(jī)軟件就是計(jì)算機(jī)程序再加上該程計(jì)算機(jī)軟件就是計(jì)算機(jī)程序再加上該程序所需的各種文檔。軟件和程序是不同的概序所需的各種文檔。軟件和程序是不同的概念,程序是使計(jì)算機(jī)實(shí)現(xiàn)所預(yù)期的目的而編念,程序是使計(jì)算機(jī)實(shí)現(xiàn)所預(yù)期的目的而編寫(xiě)的一系列的計(jì)算機(jī)語(yǔ)言(或命令)的集合。寫(xiě)的一系列的計(jì)算機(jī)語(yǔ)言(或命令)的集合。文檔是描寫(xiě)程序操作及使用的有關(guān)資料。軟文檔是描寫(xiě)程序操作及使用的有關(guān)資料。軟件作為一種特殊產(chǎn)品,計(jì)算機(jī)程
2、序和文檔是件作為一種特殊產(chǎn)品,計(jì)算機(jī)程序和文檔是缺一不可的。因此,軟件是計(jì)算機(jī)程序加上缺一不可的。因此,軟件是計(jì)算機(jī)程序加上該程序所需的各種文檔。從廣義上講,軟件該程序所需的各種文檔。從廣義上講,軟件應(yīng)包括程序、相應(yīng)的數(shù)據(jù)以及有關(guān)的知識(shí)和應(yīng)包括程序、相應(yīng)的數(shù)據(jù)以及有關(guān)的知識(shí)和文檔三部分。數(shù)據(jù)是指程序能正常加工信息文檔三部分。數(shù)據(jù)是指程序能正常加工信息的原料。程序是軟件的主體,是可執(zhí)行部分,的原料。程序是軟件的主體,是可執(zhí)行部分,由算法和語(yǔ)言組成。由算法和語(yǔ)言組成。 、基礎(chǔ)知識(shí)、基礎(chǔ)知識(shí) 計(jì)算機(jī)軟件的種類(lèi)計(jì)算機(jī)軟件的種類(lèi) 按照不同的原則和標(biāo)準(zhǔn),可將計(jì)算機(jī)軟件按照不同的原則和標(biāo)準(zhǔn),可將計(jì)算機(jī)軟件劃
3、歸不同的種類(lèi)。一般從應(yīng)用的角度出發(fā),將劃歸不同的種類(lèi)。一般從應(yīng)用的角度出發(fā),將軟件劃分為系統(tǒng)軟件和應(yīng)用軟件兩大類(lèi)。軟件劃分為系統(tǒng)軟件和應(yīng)用軟件兩大類(lèi)。(1)系統(tǒng)軟件)系統(tǒng)軟件 系統(tǒng)軟件是指對(duì)整個(gè)計(jì)算機(jī)系統(tǒng)進(jìn)行管理、系統(tǒng)軟件是指對(duì)整個(gè)計(jì)算機(jī)系統(tǒng)進(jìn)行管理、調(diào)度、監(jiān)控、維護(hù)的軟件,即為其他程序服務(wù)調(diào)度、監(jiān)控、維護(hù)的軟件,即為其他程序服務(wù)的程序的集合。主要包括以下幾種:操作系統(tǒng)的程序的集合。主要包括以下幾種:操作系統(tǒng) 、語(yǔ)言處理程序語(yǔ)言處理程序 、服務(wù)程序、服務(wù)程序 、數(shù)據(jù)庫(kù)管理系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng) 、網(wǎng)絡(luò)通訊管理程序網(wǎng)絡(luò)通訊管理程序 。 (2 2) 應(yīng)用軟件應(yīng)用軟件 應(yīng)用軟件是直接服務(wù)于用戶的程序系
4、統(tǒng)。應(yīng)用軟件是直接服務(wù)于用戶的程序系統(tǒng)。它一般包括兩類(lèi):它一般包括兩類(lèi):w實(shí)用程序:實(shí)用程序: 是指為用戶特定需要而開(kāi)發(fā)的程是指為用戶特定需要而開(kāi)發(fā)的程序。如訂票系統(tǒng)、圖書(shū)情報(bào)檢索系統(tǒng)、工作序。如訂票系統(tǒng)、圖書(shū)情報(bào)檢索系統(tǒng)、工作管理系統(tǒng)、輔助教學(xué)系統(tǒng)等等。管理系統(tǒng)、輔助教學(xué)系統(tǒng)等等。w工具軟件:是為了用戶使用方便而提供的軟工具軟件:是為了用戶使用方便而提供的軟件工具,如文字表格處理軟件件工具,如文字表格處理軟件EXCELEXCEL、字處理、字處理軟件軟件WORDWORD、電子演示文稿軟件、電子演示文稿軟件POWERPOINTPOWERPOINT、計(jì)算機(jī)輔助制圖軟件計(jì)算機(jī)輔助制圖軟件AUTOCA
5、DAUTOCAD等等等等。 計(jì)算機(jī)軟件技術(shù)發(fā)展過(guò)程計(jì)算機(jī)軟件技術(shù)發(fā)展過(guò)程 計(jì)算機(jī)軟件技術(shù)是隨著計(jì)算機(jī)硬件發(fā)展而發(fā)計(jì)算機(jī)軟件技術(shù)是隨著計(jì)算機(jī)硬件發(fā)展而發(fā)展的。展的。 計(jì)算機(jī)產(chǎn)生的早期,人們主要進(jìn)行計(jì)算機(jī)硬計(jì)算機(jī)產(chǎn)生的早期,人們主要進(jìn)行計(jì)算機(jī)硬件的研制,此時(shí)編制的軟件作為硬件的附屬品件的研制,此時(shí)編制的軟件作為硬件的附屬品存在,軟件的效率與功能均受到限制。隨著硬存在,軟件的效率與功能均受到限制。隨著硬件技術(shù)的發(fā)展,對(duì)軟件技術(shù)提出了更高的要求,件技術(shù)的發(fā)展,對(duì)軟件技術(shù)提出了更高的要求,要使硬件發(fā)揮其效率和功能,必須配備完善的要使硬件發(fā)揮其效率和功能,必須配備完善的軟件系統(tǒng),軟件技術(shù)作為獨(dú)立的分支得到
6、迅速軟件系統(tǒng),軟件技術(shù)作為獨(dú)立的分支得到迅速和充分的發(fā)展。和充分的發(fā)展。 硬件與軟件相互依存,相互推動(dòng),缺一不可,硬件與軟件相互依存,相互推動(dòng),缺一不可,共同構(gòu)成了一個(gè)計(jì)算機(jī)系統(tǒng)。從共同構(gòu)成了一個(gè)計(jì)算機(jī)系統(tǒng)。從20世紀(jì)世紀(jì)60年代年代高級(jí)語(yǔ)言出現(xiàn)到今天,軟件技術(shù)的發(fā)展主要經(jīng)高級(jí)語(yǔ)言出現(xiàn)到今天,軟件技術(shù)的發(fā)展主要經(jīng)歷了三個(gè)階段歷了三個(gè)階段:w(1 1)6060年代高級(jí)語(yǔ)言階段年代高級(jí)語(yǔ)言階段 2020世紀(jì)世紀(jì)5050年代末,年代末,John Backus John Backus 首先完成首先完成了了FORTRANFORTRAN的編譯系統(tǒng),此后的十年中,不同的編譯系統(tǒng),此后的十年中,不同的應(yīng)用領(lǐng)域
7、出現(xiàn)了的應(yīng)用領(lǐng)域出現(xiàn)了ALGOL60 ALGOL60 、COBOL COBOL 、LISPLISP等等高級(jí)語(yǔ)言。直到高級(jí)語(yǔ)言。直到6060年代末出現(xiàn)的年代末出現(xiàn)的PL/1PL/1、ALGOL68 ALGOL68 對(duì)這一時(shí)期的語(yǔ)言作一總結(jié)。此階段,對(duì)這一時(shí)期的語(yǔ)言作一總結(jié)。此階段,編譯技術(shù)代表了整個(gè)軟件技術(shù),軟件工作者追編譯技術(shù)代表了整個(gè)軟件技術(shù),軟件工作者追求的主要目標(biāo)是設(shè)計(jì)和實(shí)現(xiàn)再控制和數(shù)據(jù)結(jié)構(gòu)求的主要目標(biāo)是設(shè)計(jì)和實(shí)現(xiàn)再控制和數(shù)據(jù)結(jié)構(gòu)方面表現(xiàn)力強(qiáng)的高級(jí)語(yǔ)言。這一時(shí)期內(nèi),編譯方面表現(xiàn)力強(qiáng)的高級(jí)語(yǔ)言。這一時(shí)期內(nèi),編譯系統(tǒng)主要靠手工編制,自動(dòng)化程度低。系統(tǒng)主要靠手工編制,自動(dòng)化程度低。w(2 2)
8、2020世紀(jì)世紀(jì)7070年代結(jié)構(gòu)化程序設(shè)計(jì)階段年代結(jié)構(gòu)化程序設(shè)計(jì)階段 2020世紀(jì)世紀(jì)7070年代是計(jì)算機(jī)技術(shù)高度發(fā)展的時(shí)代。年代是計(jì)算機(jī)技術(shù)高度發(fā)展的時(shí)代。這一時(shí)期,操作系統(tǒng)軟件迅速發(fā)展,數(shù)據(jù)庫(kù)成為這一時(shí)期,操作系統(tǒng)軟件迅速發(fā)展,數(shù)據(jù)庫(kù)成為獨(dú)立的發(fā)展領(lǐng)域,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)也得以發(fā)展。獨(dú)立的發(fā)展領(lǐng)域,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)也得以發(fā)展。同時(shí),隨著計(jì)算機(jī)應(yīng)用領(lǐng)域的不斷擴(kuò)大,計(jì)算機(jī)同時(shí),隨著計(jì)算機(jī)應(yīng)用領(lǐng)域的不斷擴(kuò)大,計(jì)算機(jī)軟件的規(guī)模增大,復(fù)雜性增加,從而造成軟件的軟件的規(guī)模增大,復(fù)雜性增加,從而造成軟件的可靠性較差,產(chǎn)生了可靠性較差,產(chǎn)生了“軟件危機(jī)軟件危機(jī)”。在此種背景。在此種背景下,產(chǎn)生和發(fā)展了程序設(shè)計(jì)方
9、法學(xué)和軟件工程學(xué)。下,產(chǎn)生和發(fā)展了程序設(shè)計(jì)方法學(xué)和軟件工程學(xué)。軟件工程是指導(dǎo)軟件開(kāi)發(fā)和維護(hù)的工程科學(xué),它軟件工程是指導(dǎo)軟件開(kāi)發(fā)和維護(hù)的工程科學(xué),它采用工程的概念、原理、技術(shù)和方法來(lái)開(kāi)發(fā)和維采用工程的概念、原理、技術(shù)和方法來(lái)開(kāi)發(fā)和維護(hù)軟件產(chǎn)品。應(yīng)用軟件工程的方法,目的是提高護(hù)軟件產(chǎn)品。應(yīng)用軟件工程的方法,目的是提高軟件產(chǎn)品的質(zhì)量和軟件生產(chǎn)率,降低軟件產(chǎn)生開(kāi)軟件產(chǎn)品的質(zhì)量和軟件生產(chǎn)率,降低軟件產(chǎn)生開(kāi)發(fā)成本。發(fā)成本。(3 3)2020世紀(jì)世紀(jì)8080年代至今自動(dòng)程序設(shè)計(jì)階段年代至今自動(dòng)程序設(shè)計(jì)階段 2020世紀(jì)世紀(jì)8080年代軟件設(shè)計(jì)技術(shù)進(jìn)入成熟期,向集成化、一體化方向發(fā)展。年代軟件設(shè)計(jì)技術(shù)進(jìn)入成熟
10、期,向集成化、一體化方向發(fā)展。這一時(shí)期,集成電路的迅速發(fā)展使個(gè)人計(jì)算機(jī)得到了迅速發(fā)展,個(gè)人計(jì)算這一時(shí)期,集成電路的迅速發(fā)展使個(gè)人計(jì)算機(jī)得到了迅速發(fā)展,個(gè)人計(jì)算機(jī)與軟件工程相結(jié)合出現(xiàn)了軟件開(kāi)發(fā)環(huán)境,稱為軟件工程支撐環(huán)境,又稱機(jī)與軟件工程相結(jié)合出現(xiàn)了軟件開(kāi)發(fā)環(huán)境,稱為軟件工程支撐環(huán)境,又稱為為CASECASE(computer aided software engineeringcomputer aided software engineering)。它支持軟件開(kāi)發(fā)和)。它支持軟件開(kāi)發(fā)和維護(hù)的全過(guò)程,即從用戶需求定義、功能規(guī)格說(shuō)明、設(shè)計(jì)規(guī)格說(shuō)明、直到維護(hù)的全過(guò)程,即從用戶需求定義、功能規(guī)格說(shuō)明、設(shè)
11、計(jì)規(guī)格說(shuō)明、直到可執(zhí)行代碼的全部開(kāi)發(fā)過(guò)程,最大程度的借助于計(jì)算機(jī)系統(tǒng)自動(dòng)進(jìn)行,是可執(zhí)行代碼的全部開(kāi)發(fā)過(guò)程,最大程度的借助于計(jì)算機(jī)系統(tǒng)自動(dòng)進(jìn)行,是一個(gè)計(jì)算機(jī)自動(dòng)管理的巨型系統(tǒng)。同時(shí),程序設(shè)計(jì)的基本方法進(jìn)一步得到一個(gè)計(jì)算機(jī)自動(dòng)管理的巨型系統(tǒng)。同時(shí),程序設(shè)計(jì)的基本方法進(jìn)一步得到改善,如產(chǎn)生了第四代語(yǔ)言(改善,如產(chǎn)生了第四代語(yǔ)言(4GL4GL)和面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。)和面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。2020世紀(jì)世紀(jì)8080年代以來(lái)出現(xiàn)了好多面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,以年代以來(lái)出現(xiàn)了好多面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,以C+C+應(yīng)用最為廣泛。應(yīng)用最為廣泛。C+C+是是C C語(yǔ)言的一個(gè)超集,它保留了語(yǔ)言的一個(gè)超集,它
12、保留了C C語(yǔ)言中幾乎全部?jī)?yōu)點(diǎn),并在此基礎(chǔ)之語(yǔ)言中幾乎全部?jī)?yōu)點(diǎn),并在此基礎(chǔ)之上加上了面向?qū)ο蟮奶攸c(diǎn)。上加上了面向?qū)ο蟮奶攸c(diǎn)。JAVAJAVA由由C+C+發(fā)展而來(lái),可在發(fā)展而來(lái),可在Internet Internet 網(wǎng)絡(luò)上分網(wǎng)絡(luò)上分布執(zhí)行的程序設(shè)計(jì)語(yǔ)言。布執(zhí)行的程序設(shè)計(jì)語(yǔ)言。JAVAJAVA語(yǔ)言的重要特點(diǎn)是可在任何一個(gè)硬件和軟件語(yǔ)言的重要特點(diǎn)是可在任何一個(gè)硬件和軟件平臺(tái)上運(yùn)行,具有分布性、可移植性、穩(wěn)定性、安全性等特點(diǎn)。平臺(tái)上運(yùn)行,具有分布性、可移植性、穩(wěn)定性、安全性等特點(diǎn)。 (1 1)數(shù)據(jù)()數(shù)據(jù)(datadata): : 是客觀事物的符號(hào)表示,是客觀事物的符號(hào)表示,它能夠被計(jì)算機(jī)識(shí)別、它能
13、夠被計(jì)算機(jī)識(shí)別、儲(chǔ)存和加工處理。它是儲(chǔ)存和加工處理。它是計(jì)算機(jī)程序加工處理的計(jì)算機(jī)程序加工處理的原料,不僅指一般的整原料,不僅指一般的整數(shù)和實(shí)數(shù),而且包括字?jǐn)?shù)和實(shí)數(shù),而且包括字符串、聲音、圖像等可符串、聲音、圖像等可被計(jì)算機(jī)接收和處理的被計(jì)算機(jī)接收和處理的信息。信息。(2 2)數(shù)據(jù)元素)數(shù)據(jù)元素 (data data elementelement): : 是數(shù)據(jù)的是數(shù)據(jù)的基本單位。有些情況下,基本單位。有些情況下,數(shù)據(jù)元素又稱為元素、數(shù)據(jù)元素又稱為元素、結(jié)點(diǎn)(結(jié)點(diǎn)(nodenode)、記錄)、記錄(recordrecord)。有時(shí),一)。有時(shí),一個(gè)元素可由若干數(shù)據(jù)項(xiàng)個(gè)元素可由若干數(shù)據(jù)項(xiàng)(dat
14、a itemdata item)組成。)組成。數(shù)據(jù)項(xiàng)是數(shù)據(jù)不可分割數(shù)據(jù)項(xiàng)是數(shù)據(jù)不可分割的最小數(shù)據(jù)單位。的最小數(shù)據(jù)單位。(3 3)數(shù)據(jù)對(duì)象)數(shù)據(jù)對(duì)象 (data data objectobject):是具有相同):是具有相同性質(zhì)的數(shù)據(jù)元素的集合。性質(zhì)的數(shù)據(jù)元素的集合。、 數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)基本概念和術(shù)語(yǔ)基本概念和術(shù)語(yǔ) (4 4)數(shù)據(jù)結(jié)構(gòu))數(shù)據(jù)結(jié)構(gòu) (data structuredata structure):是指數(shù)):是指數(shù)據(jù)之間的相互關(guān)系,即數(shù)據(jù)的組織形式。它據(jù)之間的相互關(guān)系,即數(shù)據(jù)的組織形式。它一般包括以下三個(gè)方面的內(nèi)容;一般包括以下三個(gè)方面的內(nèi)容; a. a.數(shù)據(jù)的邏輯結(jié)構(gòu)(數(shù)據(jù)的邏
15、輯結(jié)構(gòu)(logical structurelogical structure),),即數(shù)據(jù)元素之間的邏輯關(guān)系。即數(shù)據(jù)元素之間的邏輯關(guān)系。 b. b.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu) (storage structure) (storage structure),即數(shù)據(jù)元素及其關(guān)系在計(jì)算機(jī)存儲(chǔ)器內(nèi)的表即數(shù)據(jù)元素及其關(guān)系在計(jì)算機(jī)存儲(chǔ)器內(nèi)的表示。示。 c. c.數(shù)據(jù)的運(yùn)算,即對(duì)數(shù)據(jù)所作的操作。數(shù)據(jù)的運(yùn)算,即對(duì)數(shù)據(jù)所作的操作。 (5 5)數(shù)據(jù)類(lèi)型)數(shù)據(jù)類(lèi)型 (data typedata type):分為基本數(shù)):分為基本數(shù)據(jù)類(lèi)型和結(jié)構(gòu)數(shù)據(jù)類(lèi)型兩種。基本數(shù)據(jù)類(lèi)型據(jù)類(lèi)型和結(jié)構(gòu)數(shù)據(jù)類(lèi)型兩種?;緮?shù)據(jù)類(lèi)型如實(shí)數(shù)型
16、、整數(shù)型、布爾型等;而結(jié)構(gòu)類(lèi)型如實(shí)數(shù)型、整數(shù)型、布爾型等;而結(jié)構(gòu)類(lèi)型如數(shù)組、結(jié)構(gòu)體等。如數(shù)組、結(jié)構(gòu)體等。 算法描述和算法分析算法描述和算法分析 數(shù)據(jù)的運(yùn)算是通過(guò)算法描述的。算法是由數(shù)據(jù)的運(yùn)算是通過(guò)算法描述的。算法是由若干條指令的有窮序列組成。算法可用自然語(yǔ)若干條指令的有窮序列組成。算法可用自然語(yǔ)言、數(shù)學(xué)語(yǔ)言、或約定的符號(hào)語(yǔ)言來(lái)描述。若言、數(shù)學(xué)語(yǔ)言、或約定的符號(hào)語(yǔ)言來(lái)描述。若一個(gè)算法用機(jī)器可執(zhí)行的語(yǔ)言來(lái)編寫(xiě),則它就一個(gè)算法用機(jī)器可執(zhí)行的語(yǔ)言來(lái)編寫(xiě),則它就是一個(gè)程序。所以算法都以函數(shù)或過(guò)程的形式是一個(gè)程序。所以算法都以函數(shù)或過(guò)程的形式表示,即;表示,即; 算法名(參數(shù)表)算法名(參數(shù)表) 例例 i
17、ns_sqlist(V, i, b) ins_sqlist(V, i, b) /在順序表在順序表V V中第中第i i 個(gè)數(shù)據(jù)元素之前插入個(gè)數(shù)據(jù)元素之前插入b/b/ 其中其中/為注釋。為注釋。 對(duì)于同一個(gè)問(wèn)題,可以給出多個(gè)不同的對(duì)于同一個(gè)問(wèn)題,可以給出多個(gè)不同的算法,在這些算法中進(jìn)行優(yōu)劣取舍是一個(gè)很重算法,在這些算法中進(jìn)行優(yōu)劣取舍是一個(gè)很重要的問(wèn)題,也就是對(duì)算法進(jìn)行分析的過(guò)程。一要的問(wèn)題,也就是對(duì)算法進(jìn)行分析的過(guò)程。一個(gè)算法除了個(gè)算法除了“正確正確”以外,主要還考慮計(jì)算機(jī)以外,主要還考慮計(jì)算機(jī)在執(zhí)行該算法時(shí)所耗費(fèi)的時(shí)間及所占有的存儲(chǔ)在執(zhí)行該算法時(shí)所耗費(fèi)的時(shí)間及所占有的存儲(chǔ)空間,即時(shí)間復(fù)雜度和空間
18、復(fù)雜度。空間,即時(shí)間復(fù)雜度和空間復(fù)雜度。 線性表線性表(1 1)線性表的定義)線性表的定義 線性表是一種最簡(jiǎn)單的和最常用的數(shù)據(jù)線性表是一種最簡(jiǎn)單的和最常用的數(shù)據(jù)結(jié)構(gòu)。線性表的邏輯結(jié)構(gòu)是由一組數(shù)據(jù)元素結(jié)構(gòu)。線性表的邏輯結(jié)構(gòu)是由一組數(shù)據(jù)元素序列構(gòu)成,其中每一數(shù)據(jù)元素含有一個(gè)或多序列構(gòu)成,其中每一數(shù)據(jù)元素含有一個(gè)或多個(gè)數(shù)據(jù)項(xiàng),各個(gè)數(shù)據(jù)元素之間存在著線性的個(gè)數(shù)據(jù)項(xiàng),各個(gè)數(shù)據(jù)元素之間存在著線性的邏輯關(guān)系。例如英文字母表(邏輯關(guān)系。例如英文字母表(A A,B B,C C,D D,ZZ)是一個(gè)線性表,表中的每一個(gè)英)是一個(gè)線性表,表中的每一個(gè)英文字母是一個(gè)數(shù)據(jù)元素。文字母是一個(gè)數(shù)據(jù)元素。(2 2)線性表的運(yùn)
19、算)線性表的運(yùn)算 數(shù)據(jù)的運(yùn)算是定義在邏輯結(jié)構(gòu)上的,而數(shù)據(jù)的運(yùn)算是定義在邏輯結(jié)構(gòu)上的,而運(yùn)算是在存儲(chǔ)結(jié)構(gòu)上進(jìn)行的。對(duì)于線性表,運(yùn)算是在存儲(chǔ)結(jié)構(gòu)上進(jìn)行的。對(duì)于線性表,常見(jiàn)的基本運(yùn)算有以下幾種:常見(jiàn)的基本運(yùn)算有以下幾種: a.a.存取操作:存取第存取操作:存取第i i 個(gè)數(shù)據(jù)元素,以便檢個(gè)數(shù)據(jù)元素,以便檢查或更新其中的數(shù)據(jù)項(xiàng)。查或更新其中的數(shù)據(jù)項(xiàng)。 b. b.插入操作:在表中的指定位置上,插入一插入操作:在表中的指定位置上,插入一個(gè)新的數(shù)據(jù)元素。個(gè)新的數(shù)據(jù)元素。 c. c.刪除操作:刪除表中第刪除操作:刪除表中第i i 個(gè)元素。個(gè)元素。 d. d.查找操作:按某個(gè)關(guān)鍵字的值,查找表中查找操作:按某個(gè)
20、關(guān)鍵字的值,查找表中相應(yīng)的元素。相應(yīng)的元素。 e. e.排序操作:按給定要求對(duì)表中元素重新排排序操作:按給定要求對(duì)表中元素重新排列。列。 并非任何時(shí)候都需要同時(shí)執(zhí)行以上運(yùn)算,對(duì)并非任何時(shí)候都需要同時(shí)執(zhí)行以上運(yùn)算,對(duì)于不同問(wèn)題中的線性表,所需要執(zhí)行的運(yùn)算可能于不同問(wèn)題中的線性表,所需要執(zhí)行的運(yùn)算可能不同。一般給出一組基本的運(yùn)算,對(duì)于實(shí)際問(wèn)題不同。一般給出一組基本的運(yùn)算,對(duì)于實(shí)際問(wèn)題中所涉及的更為復(fù)雜的運(yùn)算,可以用基本運(yùn)算的中所涉及的更為復(fù)雜的運(yùn)算,可以用基本運(yùn)算的組合來(lái)實(shí)現(xiàn)。組合來(lái)實(shí)現(xiàn)。(3 3)線性表的存儲(chǔ)結(jié)構(gòu))線性表的存儲(chǔ)結(jié)構(gòu) 線性表的存儲(chǔ)結(jié)構(gòu)有兩種:順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱婢€性表的存儲(chǔ)結(jié)構(gòu)有兩
21、種:順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。儲(chǔ)結(jié)構(gòu)。 順序存儲(chǔ)結(jié)構(gòu)順序存儲(chǔ)結(jié)構(gòu) 將一個(gè)線性表存儲(chǔ)將一個(gè)線性表存儲(chǔ)到計(jì)算機(jī),可以采用許到計(jì)算機(jī),可以采用許多不同的方法,其中即多不同的方法,其中即簡(jiǎn)單又自然的是順序存簡(jiǎn)單又自然的是順序存儲(chǔ)方法:即把線性表的儲(chǔ)方法:即把線性表的結(jié)點(diǎn)按邏輯次序放在一結(jié)點(diǎn)按邏輯次序放在一組地址連續(xù)的存儲(chǔ)單元組地址連續(xù)的存儲(chǔ)單元里。用這種方法存儲(chǔ)的里。用這種方法存儲(chǔ)的線性表簡(jiǎn)稱為順序表。線性表簡(jiǎn)稱為順序表。順序表的存儲(chǔ)示意如圖順序表的存儲(chǔ)示意如圖3-13-1所示。所示。 鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu) 為了克服順序表的為了克服順序表的缺點(diǎn),可以采用鏈接缺點(diǎn),可以采用鏈接方式存儲(chǔ)線性表,通方
22、式存儲(chǔ)線性表,通常我們把鏈接方式存常我們把鏈接方式存儲(chǔ)的線性表稱為鏈表。儲(chǔ)的線性表稱為鏈表。如圖如圖3-23-2所示。所示。 由圖由圖3-13-1可知順序結(jié)可知順序結(jié)構(gòu)存儲(chǔ)有以下特點(diǎn):構(gòu)存儲(chǔ)有以下特點(diǎn): A A存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)密度大,存儲(chǔ)空間利用密度大,存儲(chǔ)空間利用率高。率高。 B B能夠快速、隨時(shí)能夠快速、隨時(shí)訪問(wèn)其中任意元素。訪問(wèn)其中任意元素。 C C對(duì)該表進(jìn)行插入對(duì)該表進(jìn)行插入或刪除操作時(shí),為保證或刪除操作時(shí),為保證線性表的連續(xù)性,則會(huì)線性表的連續(xù)性,則會(huì)引起大量數(shù)據(jù)元素的移引起大量數(shù)據(jù)元素的移動(dòng)。動(dòng)。 D D存儲(chǔ)容量不宜擴(kuò)存儲(chǔ)容量不宜擴(kuò)充。充。圖圖3-1 順序存儲(chǔ)結(jié)構(gòu)示意圖
23、順序存儲(chǔ)結(jié)構(gòu)示意圖元素元素1元素元素2元素元素3元素元素i元素元素nL1L2=L1+LL3=L1+2LLi=Li+(i-1)LLn=L1+(n-1)L元素地址元素地址 內(nèi)存狀態(tài)內(nèi)存狀態(tài)圖圖3-2 鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)示意圖鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)示意圖元素元素1元素元素2L3L21元素元素4L23元素元素3L10元素元素5L1L2L3L4L10L11L21L22L23L24元素值元素值指針指針元素值元素值指針指針元素值元素值指針指針元素值元素值指針指針元素值元素值指針指針結(jié)點(diǎn)結(jié)點(diǎn)1結(jié)點(diǎn)結(jié)點(diǎn)2結(jié)點(diǎn)結(jié)點(diǎn)3結(jié)點(diǎn)結(jié)點(diǎn)4結(jié)點(diǎn)結(jié)點(diǎn)5 由圖由圖3-23-2可見(jiàn),數(shù)據(jù)元素之間的邏輯關(guān)系可見(jiàn),數(shù)據(jù)元素之間的邏輯關(guān)系是用指針來(lái)鏈接的
24、。對(duì)于每個(gè)數(shù)據(jù)元素,除是用指針來(lái)鏈接的。對(duì)于每個(gè)數(shù)據(jù)元素,除了元素值以外,還有一個(gè)指針(或鏈)用來(lái)了元素值以外,還有一個(gè)指針(或鏈)用來(lái)指示另一個(gè)數(shù)據(jù)元素的地址。我們將這個(gè)由指示另一個(gè)數(shù)據(jù)元素的地址。我們將這個(gè)由數(shù)據(jù)元素的值和指針組成的總體稱為結(jié)點(diǎn),數(shù)據(jù)元素的值和指針組成的總體稱為結(jié)點(diǎn),表示一個(gè)數(shù)據(jù)元素。鏈表中各結(jié)點(diǎn)的位置在表示一個(gè)數(shù)據(jù)元素。鏈表中各結(jié)點(diǎn)的位置在內(nèi)存中是任意的,通過(guò)指針將它們聯(lián)系起來(lái)。內(nèi)存中是任意的,通過(guò)指針將它們聯(lián)系起來(lái)。邏輯上最后的結(jié)點(diǎn)指針不指向任何地方,常邏輯上最后的結(jié)點(diǎn)指針不指向任何地方,常用用“”表示。表示。、 操作系統(tǒng)操作系統(tǒng)w操作系統(tǒng)用來(lái)管理和控制計(jì)算機(jī)硬件和操作
25、系統(tǒng)用來(lái)管理和控制計(jì)算機(jī)硬件和軟件資源,并用以方便用戶使用并提高系統(tǒng)軟件資源,并用以方便用戶使用并提高系統(tǒng)資源利用率的一組程序(軟件)。資源利用率的一組程序(軟件)。w操作系統(tǒng)的功能是管理和控制計(jì)算機(jī)所操作系統(tǒng)的功能是管理和控制計(jì)算機(jī)所有軟硬件資源,使系統(tǒng)各部分協(xié)調(diào)一致的工有軟硬件資源,使系統(tǒng)各部分協(xié)調(diào)一致的工作,從而達(dá)到提高系統(tǒng)資源利用率的目的。作,從而達(dá)到提高系統(tǒng)資源利用率的目的。計(jì)算機(jī)系統(tǒng)資源通常有四種:處理機(jī)、存儲(chǔ)計(jì)算機(jī)系統(tǒng)資源通常有四種:處理機(jī)、存儲(chǔ)器、外部設(shè)備、以及各種程序和數(shù)據(jù)。相應(yīng)器、外部設(shè)備、以及各種程序和數(shù)據(jù)。相應(yīng)的操作系統(tǒng)的功能也具有四大功能:處理機(jī)的操作系統(tǒng)的功能也具有
26、四大功能:處理機(jī)管理功能、存儲(chǔ)器管理功能、外部設(shè)備管理管理功能、存儲(chǔ)器管理功能、外部設(shè)備管理功能、文件管理功能。功能、文件管理功能。進(jìn)程調(diào)度進(jìn)程調(diào)度阻塞阻塞阻塞阻塞阻塞阻塞I/O 請(qǐng)求請(qǐng)求I/O完成完成圖圖3-3 進(jìn)程狀態(tài)轉(zhuǎn)換示意圖進(jìn)程狀態(tài)轉(zhuǎn)換示意圖 操作系統(tǒng)的功能操作系統(tǒng)的功能wa.處理機(jī)管理處理機(jī)管理w 在多道程序系統(tǒng)中,多個(gè)程在多道程序系統(tǒng)中,多個(gè)程序同時(shí)執(zhí)行,需要對(duì)序同時(shí)執(zhí)行,需要對(duì)CPU的時(shí)間的時(shí)間進(jìn)行合理分配。處理機(jī)管理也稱進(jìn)行合理分配。處理機(jī)管理也稱為進(jìn)程管理,通過(guò)引入為進(jìn)程管理,通過(guò)引入“進(jìn)程進(jìn)程”的概念使的概念使CPU有條不紊的工作,有條不紊的工作,使資源得到最充分的利用,主
27、要使資源得到最充分的利用,主要包括處理中斷事件和處理機(jī)調(diào)度。包括處理中斷事件和處理機(jī)調(diào)度。所謂進(jìn)程,是指程序的一次執(zhí)行。所謂進(jìn)程,是指程序的一次執(zhí)行。進(jìn)程有三個(gè)基本狀態(tài):就緒狀態(tài)、進(jìn)程有三個(gè)基本狀態(tài):就緒狀態(tài)、運(yùn)行狀態(tài)、阻塞狀態(tài),如圖運(yùn)行狀態(tài)、阻塞狀態(tài),如圖3-3 所示;所示;b.b.存儲(chǔ)管理存儲(chǔ)管理 內(nèi)存是除內(nèi)存是除CPUCPU之外之外最寶貴的資源。而計(jì)最寶貴的資源。而計(jì)算機(jī)的內(nèi)存資源是有算機(jī)的內(nèi)存資源是有限的。存儲(chǔ)管理主要限的。存儲(chǔ)管理主要解決多道程序在內(nèi)存解決多道程序在內(nèi)存中的分配,合理利用中的分配,合理利用內(nèi)存空間,并通過(guò)內(nèi)內(nèi)存空間,并通過(guò)內(nèi)外存的管理來(lái)擴(kuò)大存外存的管理來(lái)擴(kuò)大存儲(chǔ)空間。
28、其主要包括:儲(chǔ)空間。其主要包括:內(nèi)存的分配、存儲(chǔ)擴(kuò)內(nèi)存的分配、存儲(chǔ)擴(kuò)充、存儲(chǔ)保護(hù)三個(gè)方充、存儲(chǔ)保護(hù)三個(gè)方面。面。c. c. 設(shè)備管理設(shè)備管理 計(jì)算機(jī)支持多種設(shè)備,計(jì)算機(jī)支持多種設(shè)備,該管理利用操作系統(tǒng)提供該管理利用操作系統(tǒng)提供的設(shè)備驅(qū)動(dòng)程序,實(shí)現(xiàn)對(duì)的設(shè)備驅(qū)動(dòng)程序,實(shí)現(xiàn)對(duì)外部設(shè)備進(jìn)行有效管理。外部設(shè)備進(jìn)行有效管理。負(fù)責(zé)把外部設(shè)備合理地分負(fù)責(zé)把外部設(shè)備合理地分配給進(jìn)程,消除各設(shè)備忙配給進(jìn)程,消除各設(shè)備忙閑不均的現(xiàn)象,使之有效閑不均的現(xiàn)象,使之有效地工作。其主要功能體現(xiàn)地工作。其主要功能體現(xiàn)在:分配和驅(qū)動(dòng)外部設(shè)備、在:分配和驅(qū)動(dòng)外部設(shè)備、利用中斷、通道、緩沖技利用中斷、通道、緩沖技術(shù),提高外部設(shè)備的
29、使用術(shù),提高外部設(shè)備的使用效率。效率。d. d. 文件管理文件管理 文件管理是對(duì)各文件管理是對(duì)各類(lèi)文件進(jìn)行有序的管類(lèi)文件進(jìn)行有序的管理,支持對(duì)文件的存理,支持對(duì)文件的存儲(chǔ)、檢索和修改及文儲(chǔ)、檢索和修改及文件保護(hù),方便用戶安件保護(hù),方便用戶安全地訪問(wèn)它們。其主全地訪問(wèn)它們。其主要功能為:按名存取要功能為:按名存取文件、有效分配存儲(chǔ)文件、有效分配存儲(chǔ)空間、文件的共享和空間、文件的共享和保護(hù)、用戶可通過(guò)命保護(hù)、用戶可通過(guò)命令訪問(wèn)各種文件。令訪問(wèn)各種文件。 通常按照操作系通常按照操作系統(tǒng)的使用環(huán)境,可將其統(tǒng)的使用環(huán)境,可將其分為三大類(lèi):分為三大類(lèi):w多道批處理系統(tǒng)多道批處理系統(tǒng)w分時(shí)系統(tǒng)、分時(shí)系統(tǒng)、w
30、實(shí)時(shí)系統(tǒng)。實(shí)時(shí)系統(tǒng)。(2 2)操作系統(tǒng)的分類(lèi))操作系統(tǒng)的分類(lèi)a.a.多道批處理系統(tǒng)多道批處理系統(tǒng)w 多道批處理系統(tǒng)實(shí)質(zhì)上是多道批處理系統(tǒng)實(shí)質(zhì)上是“多道程序多道程序”和和“批批處理處理”的結(jié)合。的結(jié)合?!叭蝿?wù)任務(wù)”和和“作業(yè)作業(yè)”是指用戶一次上是指用戶一次上機(jī)要求計(jì)算機(jī)系統(tǒng)完成的工作的總稱;機(jī)要求計(jì)算機(jī)系統(tǒng)完成的工作的總稱;“多道程序多道程序”是指在計(jì)算機(jī)內(nèi)存中同時(shí)可以存放若干道作業(yè),允許是指在計(jì)算機(jī)內(nèi)存中同時(shí)可以存放若干道作業(yè),允許交替地由處理機(jī)運(yùn)行;交替地由處理機(jī)運(yùn)行;“批處理批處理”是指用戶與作業(yè)之是指用戶與作業(yè)之間沒(méi)有交互作用,用戶不能直接控制作業(yè)的運(yùn)行,即間沒(méi)有交互作用,用戶不能直接控
31、制作業(yè)的運(yùn)行,即一批經(jīng)過(guò)合理組織的作業(yè)一旦提交給計(jì)算機(jī)系統(tǒng),其一批經(jīng)過(guò)合理組織的作業(yè)一旦提交給計(jì)算機(jī)系統(tǒng),其執(zhí)行由計(jì)算機(jī)系統(tǒng)控制。執(zhí)行由計(jì)算機(jī)系統(tǒng)控制。w多道批處理系統(tǒng)具有自動(dòng)化程度高,資源多道批處理系統(tǒng)具有自動(dòng)化程度高,資源利用率高,作業(yè)吞吐量大等特點(diǎn),多應(yīng)用在大利用率高,作業(yè)吞吐量大等特點(diǎn),多應(yīng)用在大中型計(jì)算機(jī)系統(tǒng)中。其缺點(diǎn)是交互性差。中型計(jì)算機(jī)系統(tǒng)中。其缺點(diǎn)是交互性差。b. b. 分時(shí)系統(tǒng)分時(shí)系統(tǒng)w分時(shí)系統(tǒng)是一種多用戶操作系統(tǒng),它是將中分時(shí)系統(tǒng)是一種多用戶操作系統(tǒng),它是將中央處理機(jī)(央處理機(jī)(CPUCPU)的處理時(shí)間進(jìn)行分割,即把工)的處理時(shí)間進(jìn)行分割,即把工作時(shí)間分割成一個(gè)個(gè)時(shí)間片,每
32、個(gè)用戶輪流使用作時(shí)間分割成一個(gè)個(gè)時(shí)間片,每個(gè)用戶輪流使用時(shí)間片。一臺(tái)計(jì)算機(jī)為一組終端用戶服務(wù),每個(gè)時(shí)間片。一臺(tái)計(jì)算機(jī)為一組終端用戶服務(wù),每個(gè)用戶通過(guò)終端控制程序的運(yùn)行。由于時(shí)間片分割用戶通過(guò)終端控制程序的運(yùn)行。由于時(shí)間片分割很小,每個(gè)用戶感覺(jué)不到時(shí)間上的等待或滯留,很小,每個(gè)用戶感覺(jué)不到時(shí)間上的等待或滯留,如同自己獨(dú)立占用一臺(tái)計(jì)算機(jī)一樣。如同自己獨(dú)立占用一臺(tái)計(jì)算機(jī)一樣。w分時(shí)系統(tǒng)具有良好的人機(jī)交互性,用戶使用方便,分時(shí)系統(tǒng)具有良好的人機(jī)交互性,用戶使用方便,其主要應(yīng)用于中小型系統(tǒng)。其主要應(yīng)用于中小型系統(tǒng)。c. c. 實(shí)時(shí)系統(tǒng)實(shí)時(shí)系統(tǒng) 實(shí)時(shí)系統(tǒng)是指要求系實(shí)時(shí)系統(tǒng)是指要求系統(tǒng)及時(shí)響應(yīng)外部事件的請(qǐng)統(tǒng)
33、及時(shí)響應(yīng)外部事件的請(qǐng)求,在規(guī)定的時(shí)間內(nèi)完成求,在規(guī)定的時(shí)間內(nèi)完成對(duì)該事件的處理并控制所對(duì)該事件的處理并控制所有實(shí)時(shí)設(shè)備和實(shí)時(shí)任務(wù)協(xié)有實(shí)時(shí)設(shè)備和實(shí)時(shí)任務(wù)協(xié)調(diào)一致地工作。實(shí)時(shí)系統(tǒng)調(diào)一致地工作。實(shí)時(shí)系統(tǒng)包括實(shí)時(shí)過(guò)程控制和實(shí)時(shí)包括實(shí)時(shí)過(guò)程控制和實(shí)時(shí)信息處理兩種,前者主要信息處理兩種,前者主要應(yīng)用于工業(yè)生產(chǎn)的過(guò)程控應(yīng)用于工業(yè)生產(chǎn)的過(guò)程控制,而后者主要應(yīng)用于信制,而后者主要應(yīng)用于信息處理系統(tǒng),如查詢系統(tǒng)、息處理系統(tǒng),如查詢系統(tǒng)、訂票系統(tǒng)等。訂票系統(tǒng)等。 w以上三類(lèi)操作系以上三類(lèi)操作系統(tǒng)可以根據(jù)實(shí)際需要統(tǒng)可以根據(jù)實(shí)際需要組合使用,實(shí)現(xiàn)最佳組合使用,實(shí)現(xiàn)最佳功能。隨著計(jì)算機(jī)系功能。隨著計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的變化,操
34、作統(tǒng)結(jié)構(gòu)的變化,操作系統(tǒng)技術(shù)也有了進(jìn)一系統(tǒng)技術(shù)也有了進(jìn)一步的發(fā)展,產(chǎn)生了一步的發(fā)展,產(chǎn)生了一些具有特點(diǎn)的操作系些具有特點(diǎn)的操作系統(tǒng),如個(gè)人計(jì)算機(jī)操統(tǒng),如個(gè)人計(jì)算機(jī)操作系統(tǒng)、分布式操作作系統(tǒng)、分布式操作系統(tǒng)和網(wǎng)絡(luò)操作系統(tǒng)。系統(tǒng)和網(wǎng)絡(luò)操作系統(tǒng)。w個(gè)人計(jì)算機(jī)操作系統(tǒng)是一個(gè)單用戶交互式的操個(gè)人計(jì)算機(jī)操作系統(tǒng)是一個(gè)單用戶交互式的操作系統(tǒng),它以文件管理為主,具有簡(jiǎn)單的設(shè)備管理作系統(tǒng),它以文件管理為主,具有簡(jiǎn)單的設(shè)備管理功能,并向用戶提供了一組功能豐富的鍵盤(pán)操作命功能,并向用戶提供了一組功能豐富的鍵盤(pán)操作命令。令。w分布式操作系統(tǒng)是指由多臺(tái)計(jì)算機(jī)組成的一個(gè)分布式操作系統(tǒng)是指由多臺(tái)計(jì)算機(jī)組成的一個(gè)系統(tǒng),相互協(xié)
35、作地完成一個(gè)任務(wù)。任意兩臺(tái)計(jì)算機(jī)系統(tǒng),相互協(xié)作地完成一個(gè)任務(wù)。任意兩臺(tái)計(jì)算機(jī)之間可以交換信息,無(wú)主次之分,系統(tǒng)資源為所有之間可以交換信息,無(wú)主次之分,系統(tǒng)資源為所有用戶共享。用戶共享。w網(wǎng)絡(luò)操作系統(tǒng)是為網(wǎng)絡(luò)中各臺(tái)計(jì)算機(jī)之間網(wǎng)絡(luò)操作系統(tǒng)是為網(wǎng)絡(luò)中各臺(tái)計(jì)算機(jī)之間提供通信和資源共享。除了具有常規(guī)操作系統(tǒng)提供通信和資源共享。除了具有常規(guī)操作系統(tǒng)功能外,還具有網(wǎng)絡(luò)管理功能。功能外,還具有網(wǎng)絡(luò)管理功能。 (3 3) 常用操作系統(tǒng)簡(jiǎn)介常用操作系統(tǒng)簡(jiǎn)介 Windows Windows Windows Windows以其靈活方便的窗口操作、彈出式菜單以及以其靈活方便的窗口操作、彈出式菜單以及命令對(duì)話框,為用戶使
36、用計(jì)算機(jī)提供了方便,并為人們命令對(duì)話框,為用戶使用計(jì)算機(jī)提供了方便,并為人們廣泛接受。它從廣泛接受。它從19901990年由年由Microsoft Microsoft 公司推出公司推出Windows Windows 3.03.0,先后進(jìn)行了多次改版。如,先后進(jìn)行了多次改版。如Windows3.1Windows3.1、Windows 98Windows 98、Windows NTWindows NT、Windows2000Windows2000、Windows XP Windows XP 等。其中等。其中Windows95Windows95以上版本具有網(wǎng)絡(luò)管理功能。還具有友好的人以上版本具有網(wǎng)絡(luò)
37、管理功能。還具有友好的人機(jī)界面、功能強(qiáng)大的應(yīng)用程序、多任務(wù)并行處理的功能機(jī)界面、功能強(qiáng)大的應(yīng)用程序、多任務(wù)并行處理的功能等諸多優(yōu)點(diǎn),所以深受用戶歡迎。等諸多優(yōu)點(diǎn),所以深受用戶歡迎。 UNIX UNIX UNIXUNIX操作系統(tǒng)是一個(gè)通用的、操作系統(tǒng)是一個(gè)通用的、交互的分時(shí)系統(tǒng),適用于小型機(jī)交互的分時(shí)系統(tǒng),適用于小型機(jī)和微型機(jī)。它由美國(guó)貝爾實(shí)驗(yàn)室和微型機(jī)。它由美國(guó)貝爾實(shí)驗(yàn)室19691969年研制的,其特點(diǎn)是結(jié)構(gòu)緊年研制的,其特點(diǎn)是結(jié)構(gòu)緊湊、功能強(qiáng)大、使用方便、易于湊、功能強(qiáng)大、使用方便、易于擴(kuò)充、修改維護(hù)和移植。它主要擴(kuò)充、修改維護(hù)和移植。它主要由兩部分組成:內(nèi)核和外殼由兩部分組成:內(nèi)核和外殼(
38、shellshell語(yǔ)言)。其內(nèi)核部分負(fù)語(yǔ)言)。其內(nèi)核部分負(fù)責(zé)進(jìn)程管理、文件管理、存儲(chǔ)管責(zé)進(jìn)程管理、文件管理、存儲(chǔ)管理、設(shè)備管理等,而外殼語(yǔ)言是理、設(shè)備管理等,而外殼語(yǔ)言是用來(lái)控制、使用內(nèi)核以及語(yǔ)言處用來(lái)控制、使用內(nèi)核以及語(yǔ)言處理程序和軟件工具。理程序和軟件工具。 Linux Linux LinuxLinux是目前最流行的操作是目前最流行的操作系統(tǒng)之一,是系統(tǒng)之一,是UNIXUNIX的的PCPC版。它版。它從從19911991年芬蘭人年芬蘭人Linux Linux Torvalds Torvalds 創(chuàng)建至今發(fā)展迅速。創(chuàng)建至今發(fā)展迅速。它具有占用空間小、高效、健它具有占用空間小、高效、健壯和功
39、能強(qiáng)大等特性,特別是壯和功能強(qiáng)大等特性,特別是可以免費(fèi)使用和源代碼開(kāi)放,可以免費(fèi)使用和源代碼開(kāi)放,為用戶廣泛接受。其中的為用戶廣泛接受。其中的Red Red Hat Linux Hat Linux 版是一個(gè)杰出的代版是一個(gè)杰出的代表,它在表,它在Linux Linux 基礎(chǔ)上開(kāi)發(fā)了基礎(chǔ)上開(kāi)發(fā)了許多優(yōu)秀的軟件和工具,并提許多優(yōu)秀的軟件和工具,并提供了最新軟硬件的技術(shù)支持。供了最新軟硬件的技術(shù)支持。、編譯基礎(chǔ)、編譯基礎(chǔ)(1) 編譯程序的作用編譯程序的作用編譯編譯連接連接運(yùn)行運(yùn)行源程序源程序目標(biāo)程序目標(biāo)程序可執(zhí)行程序可執(zhí)行程序結(jié)果程序庫(kù)程序庫(kù)數(shù)據(jù)數(shù)據(jù)圖圖3-4 程序的編譯與運(yùn)行示意圖程序的編譯與運(yùn)行
40、示意圖w人們利用計(jì)算機(jī)可以進(jìn)行復(fù)雜的科學(xué)計(jì)算、工人們利用計(jì)算機(jī)可以進(jìn)行復(fù)雜的科學(xué)計(jì)算、工業(yè)過(guò)程控制、企業(yè)管理和辦公自動(dòng)化等工作。計(jì)算業(yè)過(guò)程控制、企業(yè)管理和辦公自動(dòng)化等工作。計(jì)算機(jī)在上述各領(lǐng)域的應(yīng)用都是在計(jì)算機(jī)硬件和系統(tǒng)軟機(jī)在上述各領(lǐng)域的應(yīng)用都是在計(jì)算機(jī)硬件和系統(tǒng)軟件支持下,運(yùn)用某種高級(jí)語(yǔ)言編制出程序并在該環(huán)件支持下,運(yùn)用某種高級(jí)語(yǔ)言編制出程序并在該環(huán)境下運(yùn)行來(lái)實(shí)現(xiàn)的。在計(jì)算機(jī)上執(zhí)行一個(gè)高級(jí)語(yǔ)言境下運(yùn)行來(lái)實(shí)現(xiàn)的。在計(jì)算機(jī)上執(zhí)行一個(gè)高級(jí)語(yǔ)言程序,一般要分為兩步:程序,一般要分為兩步:w第一步,用一個(gè)編譯程序?qū)⒏呒?jí)語(yǔ)言程序翻譯成機(jī)器第一步,用一個(gè)編譯程序?qū)⒏呒?jí)語(yǔ)言程序翻譯成機(jī)器語(yǔ)言程序;語(yǔ)言程序;w
41、第二步,運(yùn)行所得的機(jī)器語(yǔ)言程序并求得計(jì)算結(jié)果。第二步,運(yùn)行所得的機(jī)器語(yǔ)言程序并求得計(jì)算結(jié)果。w編譯程序就是將某一種語(yǔ)言(源語(yǔ)言)程序翻編譯程序就是將某一種語(yǔ)言(源語(yǔ)言)程序翻譯成另一種語(yǔ)言(目標(biāo)語(yǔ)言)程序,即進(jìn)行符號(hào)轉(zhuǎn)譯成另一種語(yǔ)言(目標(biāo)語(yǔ)言)程序,即進(jìn)行符號(hào)轉(zhuǎn)換。程序的編譯與運(yùn)行如圖換。程序的編譯與運(yùn)行如圖 3-4 所示。所示。(2)編譯編譯程序程序的組的組成與成與結(jié)構(gòu)結(jié)構(gòu)目標(biāo)程序詞法分析語(yǔ)法分析中間代碼生成代碼優(yōu)化目標(biāo)代碼生成表 格 管 理出 錯(cuò) 管 理源程序圖圖3-5 編譯程序的基本結(jié)構(gòu)編譯程序的基本結(jié)構(gòu)雖然各高級(jí)語(yǔ)言的特點(diǎn)不同,其編譯程序也有差別,但各編雖然各高級(jí)語(yǔ)言的特點(diǎn)不同,其編譯
42、程序也有差別,但各編譯程序的基本結(jié)構(gòu)均相似。編譯程序的結(jié)構(gòu)可按編譯的五個(gè)階段譯程序的基本結(jié)構(gòu)均相似。編譯程序的結(jié)構(gòu)可按編譯的五個(gè)階段分模塊進(jìn)行設(shè)計(jì),如圖分模塊進(jìn)行設(shè)計(jì),如圖3-5所示。圖所示。圖3-5中編譯過(guò)程源程序的各種中編譯過(guò)程源程序的各種信息被保留在各種不同的表格里,編譯各階段的工作都涉及到構(gòu)信息被保留在各種不同的表格里,編譯各階段的工作都涉及到構(gòu)造、查找、更新各種有關(guān)表格。造、查找、更新各種有關(guān)表格。w編譯程序的工作,編譯程序的工作,從輸入源程序到輸出目從輸入源程序到輸出目標(biāo)程序的整個(gè)過(guò)程,是標(biāo)程序的整個(gè)過(guò)程,是很復(fù)雜的。這個(gè)過(guò)程一很復(fù)雜的。這個(gè)過(guò)程一般可分為五個(gè)階段:詞般可分為五個(gè)階
43、段:詞法分析、語(yǔ)法分析、中法分析、語(yǔ)法分析、中間代碼生成、代碼優(yōu)化、間代碼生成、代碼優(yōu)化、目標(biāo)代碼生成。目標(biāo)代碼生成。w上述編譯程序工作上述編譯程序工作過(guò)程的五個(gè)階段不是每過(guò)程的五個(gè)階段不是每個(gè)階段都必不可少的,個(gè)階段都必不可少的,在實(shí)際應(yīng)用中有些階段在實(shí)際應(yīng)用中有些階段可以省去。若編譯程序可以省去。若編譯程序?qū)?yōu)化沒(méi)有要求,可省對(duì)優(yōu)化沒(méi)有要求,可省去代碼優(yōu)化;若要加快去代碼優(yōu)化;若要加快編譯速度,可將中間代編譯速度,可將中間代碼生成階段省去。碼生成階段省去。3.2 3.2 數(shù)據(jù)庫(kù)技術(shù)基礎(chǔ)數(shù)據(jù)庫(kù)技術(shù)基礎(chǔ) 數(shù)據(jù)庫(kù)技術(shù)產(chǎn)生于數(shù)據(jù)庫(kù)技術(shù)產(chǎn)生于2020世紀(jì)世紀(jì)6060年代中期,是年代中期,是數(shù)據(jù)管理的
44、最新技術(shù),是計(jì)算機(jī)科學(xué)的重要數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的重要分支,它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用向分支,它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用向各行業(yè)滲透。從而不難看出數(shù)據(jù)庫(kù)技術(shù)的重各行業(yè)滲透。從而不難看出數(shù)據(jù)庫(kù)技術(shù)的重要性所在。要性所在。 1 數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)庫(kù)技術(shù)的新發(fā)展數(shù)據(jù)庫(kù)技術(shù)的新發(fā)展1 1 數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)庫(kù)系統(tǒng)概述(1 1)數(shù)據(jù)庫(kù)技術(shù)的基本概念)數(shù)據(jù)庫(kù)技術(shù)的基本概念w數(shù)據(jù)(數(shù)據(jù)(DataData):): 通常是指用符號(hào)記錄下來(lái)的,可以識(shí)別的信息。信息是關(guān)于現(xiàn)實(shí)世界事物存在的方式或運(yùn)動(dòng)狀態(tài)的客觀反映。w數(shù)據(jù)庫(kù)(數(shù)據(jù)庫(kù)(Data BaseData Base):):簡(jiǎn)稱D
45、B,是指按一定方式組織起來(lái)的相互關(guān)聯(lián)的數(shù)據(jù)集合。如人事檔案數(shù)據(jù)庫(kù)、圖書(shū)資料數(shù)據(jù)庫(kù)、藥品管理數(shù)據(jù)庫(kù)等。w數(shù)據(jù)庫(kù)管理系統(tǒng)(數(shù)據(jù)庫(kù)管理系統(tǒng)(Data Base Management SystemData Base Management System):):簡(jiǎn)稱DBMS,是用戶與操作系統(tǒng)之間的一層管理軟件,它為用戶或應(yīng)用程序提供訪問(wèn)數(shù)據(jù)庫(kù)的方法,包括數(shù)據(jù)庫(kù)的建立、查詢、更新及對(duì)各種數(shù)據(jù)的控制。w數(shù)據(jù)庫(kù)系統(tǒng)(數(shù)據(jù)庫(kù)系統(tǒng)(Data Base SystemData Base System):):簡(jiǎn)稱DBS,是實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量關(guān)聯(lián)數(shù)據(jù)、方便多用戶訪問(wèn)的計(jì)算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng),即它是采
46、用了數(shù)據(jù)庫(kù)技術(shù)的計(jì)算機(jī)系統(tǒng)。w數(shù)據(jù)庫(kù)技術(shù):數(shù)據(jù)庫(kù)技術(shù):是在操作系統(tǒng)的文件系統(tǒng)的基礎(chǔ)上發(fā)展起來(lái)的,它是研究數(shù)據(jù)庫(kù)的結(jié)構(gòu)、存儲(chǔ)、設(shè)計(jì)、管理和使用的一門(mén)軟件學(xué)科。(2 2)數(shù)據(jù)描述和數(shù)據(jù)模型)數(shù)據(jù)描述和數(shù)據(jù)模型數(shù)據(jù)描述:是數(shù)據(jù)處理中的一個(gè)重要環(huán)節(jié)。從事物數(shù)據(jù)描述:是數(shù)據(jù)處理中的一個(gè)重要環(huán)節(jié)。從事物的特征到計(jì)算機(jī)中的具體表示,實(shí)際上經(jīng)歷了三個(gè)的特征到計(jì)算機(jī)中的具體表示,實(shí)際上經(jīng)歷了三個(gè)領(lǐng)域:現(xiàn)實(shí)世界、信息世界、機(jī)器世界。領(lǐng)域:現(xiàn)實(shí)世界、信息世界、機(jī)器世界。w現(xiàn)實(shí)世界的數(shù)據(jù)描述主要是對(duì)原始數(shù)據(jù)進(jìn)行綜合現(xiàn)實(shí)世界的數(shù)據(jù)描述主要是對(duì)原始數(shù)據(jù)進(jìn)行綜合工作,取出數(shù)據(jù)庫(kù)系統(tǒng)所需要研究的數(shù)據(jù),如各種報(bào)工作,取出數(shù)據(jù)庫(kù)
47、系統(tǒng)所需要研究的數(shù)據(jù),如各種報(bào)表、單據(jù)、查詢格式等。表、單據(jù)、查詢格式等。w信息世界的數(shù)據(jù)描述,是人們將現(xiàn)實(shí)世界在信息世界的數(shù)據(jù)描述,是人們將現(xiàn)實(shí)世界在人腦中的反映用文字或符號(hào)表示出來(lái),它需要用人腦中的反映用文字或符號(hào)表示出來(lái),它需要用以下一些基本術(shù)語(yǔ)來(lái)實(shí)現(xiàn):以下一些基本術(shù)語(yǔ)來(lái)實(shí)現(xiàn): 實(shí)體實(shí)體(entity)(entity):實(shí)體是指客觀存在并相互區(qū)別的事物。 實(shí)體集(實(shí)體集(entity setentity set):):具有相同性質(zhì)的同類(lèi)實(shí)體的集合。 屬性(屬性(attributeattribute):):實(shí)體具有許多特性,每一個(gè)特性稱為屬性。每一個(gè)屬性有一個(gè)取值范圍,即值域。 主鍵(主鍵
48、(keykey):唯一標(biāo)識(shí)實(shí)體的屬性集為主鍵。 w機(jī)器世界中的信息是以數(shù)據(jù)形式存儲(chǔ)機(jī)器世界中的信息是以數(shù)據(jù)形式存儲(chǔ)的,其數(shù)據(jù)描述需要用以下術(shù)語(yǔ)表示。的,其數(shù)據(jù)描述需要用以下術(shù)語(yǔ)表示。 字段(字段(fieldfield):標(biāo)記實(shí)體屬性的命名):標(biāo)記實(shí)體屬性的命名單位稱為字段(或數(shù)據(jù)項(xiàng))。它是可命名單位稱為字段(或數(shù)據(jù)項(xiàng))。它是可命名的最小數(shù)據(jù)單位。的最小數(shù)據(jù)單位。 記錄(記錄(recordrecord):字段的有序集合稱為):字段的有序集合稱為記錄。一般用一個(gè)記錄描述一個(gè)實(shí)體。記錄。一般用一個(gè)記錄描述一個(gè)實(shí)體。 文件(文件(filefile):同一類(lèi)記錄的匯集稱為):同一類(lèi)記錄的匯集稱為文件。文
49、件是描述實(shí)體集的。文件。文件是描述實(shí)體集的。 主鍵(主鍵(keykey):能唯一標(biāo)識(shí)文件中每個(gè)):能唯一標(biāo)識(shí)文件中每個(gè)記錄的字段或字段集,稱為文件的主鍵。記錄的字段或字段集,稱為文件的主鍵。 w現(xiàn)實(shí)世界中,事物是相互聯(lián)系的。這種聯(lián)系必然在信息世界現(xiàn)實(shí)世界中,事物是相互聯(lián)系的。這種聯(lián)系必然在信息世界中體現(xiàn)出來(lái),即實(shí)體是相互有聯(lián)系的。實(shí)體的聯(lián)系有兩類(lèi):中體現(xiàn)出來(lái),即實(shí)體是相互有聯(lián)系的。實(shí)體的聯(lián)系有兩類(lèi):一類(lèi)是實(shí)體內(nèi)部的聯(lián)系,即同一記錄內(nèi)部各個(gè)字段之間的一類(lèi)是實(shí)體內(nèi)部的聯(lián)系,即同一記錄內(nèi)部各個(gè)字段之間的聯(lián)系;聯(lián)系;另一類(lèi)是實(shí)體與實(shí)體之間的聯(lián)系,即實(shí)體中記錄之間的聯(lián)另一類(lèi)是實(shí)體與實(shí)體之間的聯(lián)系,即實(shí)體
50、中記錄之間的聯(lián)系。系。而實(shí)體之間的聯(lián)系比較復(fù)雜,其相應(yīng)的數(shù)據(jù)結(jié)構(gòu)也比較復(fù)雜,而實(shí)體之間的聯(lián)系比較復(fù)雜,其相應(yīng)的數(shù)據(jù)結(jié)構(gòu)也比較復(fù)雜,這類(lèi)聯(lián)系在數(shù)據(jù)庫(kù)技術(shù)中應(yīng)用較多。實(shí)體間的聯(lián)系有兩種:這類(lèi)聯(lián)系在數(shù)據(jù)庫(kù)技術(shù)中應(yīng)用較多。實(shí)體間的聯(lián)系有兩種:一是同一實(shí)體集中實(shí)體之間的聯(lián)系(記錄之間的聯(lián)系),一是同一實(shí)體集中實(shí)體之間的聯(lián)系(記錄之間的聯(lián)系),二是不同實(shí)體集間的實(shí)體聯(lián)系(文件之間的記錄與記錄二是不同實(shí)體集間的實(shí)體聯(lián)系(文件之間的記錄與記錄的聯(lián)系)。的聯(lián)系)。 w它有以下三種情況:它有以下三種情況: 一對(duì)一聯(lián)系:記作一對(duì)一聯(lián)系:記作 1 1:1 1。例如學(xué)校與校長(zhǎng)之間,。例如學(xué)校與校長(zhǎng)之間,火車(chē)的座位與乘客
51、之間的聯(lián)系都是一對(duì)一聯(lián)系。火車(chē)的座位與乘客之間的聯(lián)系都是一對(duì)一聯(lián)系。 一對(duì)多聯(lián)系:記作一對(duì)多聯(lián)系:記作1 1:N N。例如一個(gè)學(xué)校有多名。例如一個(gè)學(xué)校有多名學(xué)生,而每個(gè)學(xué)生均在同一所學(xué)校學(xué)習(xí),學(xué)校與學(xué)學(xué)生,而每個(gè)學(xué)生均在同一所學(xué)校學(xué)習(xí),學(xué)校與學(xué)生之間就是一對(duì)多的聯(lián)系。生之間就是一對(duì)多的聯(lián)系。 多對(duì)多聯(lián)系:記作多對(duì)多聯(lián)系:記作M M:N N。例如課程與學(xué)生之間,一個(gè)。例如課程與學(xué)生之間,一個(gè)學(xué)生可選多門(mén)課程,而每一門(mén)課程有多名學(xué)生選修,課學(xué)生可選多門(mén)課程,而每一門(mén)課程有多名學(xué)生選修,課程與學(xué)生之間是多對(duì)多的聯(lián)系。程與學(xué)生之間是多對(duì)多的聯(lián)系。 數(shù)據(jù)模型數(shù)據(jù)模型數(shù)據(jù)模型是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象。數(shù)據(jù)
52、模型是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象。由于計(jì)算機(jī)不可能直接處理現(xiàn)實(shí)世界中的由于計(jì)算機(jī)不可能直接處理現(xiàn)實(shí)世界中的事物,人們必須先把具體事物轉(zhuǎn)換成計(jì)算事物,人們必須先把具體事物轉(zhuǎn)換成計(jì)算機(jī)能夠處理的數(shù)據(jù)。在數(shù)據(jù)庫(kù)中音樂(lè)數(shù)據(jù)機(jī)能夠處理的數(shù)據(jù)。在數(shù)據(jù)庫(kù)中音樂(lè)數(shù)據(jù)模型來(lái)抽象、表示和處理現(xiàn)實(shí)世界中的信模型來(lái)抽象、表示和處理現(xiàn)實(shí)世界中的信息。數(shù)據(jù)庫(kù)系統(tǒng)均是基于某種數(shù)據(jù)模型的,息。數(shù)據(jù)庫(kù)系統(tǒng)均是基于某種數(shù)據(jù)模型的,不同的數(shù)據(jù)模型,實(shí)際上是提供給我們模不同的數(shù)據(jù)模型,實(shí)際上是提供給我們模型化信息的不同工具。數(shù)據(jù)模型是數(shù)據(jù)庫(kù)型化信息的不同工具。數(shù)據(jù)模型是數(shù)據(jù)庫(kù)系統(tǒng)的核心和基礎(chǔ)。根據(jù)模型應(yīng)用的不同系統(tǒng)的核心和基礎(chǔ)。根據(jù)模型
53、應(yīng)用的不同目的,可將模型劃分為兩類(lèi):概念模型和目的,可將模型劃分為兩類(lèi):概念模型和數(shù)據(jù)模型。數(shù)據(jù)模型。 概念模型概念模型 概念模型又稱信息模型,它是按照用戶的觀點(diǎn)來(lái)對(duì)信息概念模型又稱信息模型,它是按照用戶的觀點(diǎn)來(lái)對(duì)信息建模,主要用于數(shù)據(jù)庫(kù)設(shè)計(jì)。建模,主要用于數(shù)據(jù)庫(kù)設(shè)計(jì)。 概念模型的表示方法很多,其中最常用的是概念模型的表示方法很多,其中最常用的是P.P.ChenP.P.Chen于于19761976年提出的實(shí)體聯(lián)系方法。該方法用年提出的實(shí)體聯(lián)系方法。該方法用ERER圖來(lái)描述現(xiàn)實(shí)世圖來(lái)描述現(xiàn)實(shí)世界的概念模型。界的概念模型。ERER方法也稱為方法也稱為ERER模型。模型。ERER方法提供以下四方法提
54、供以下四種基本工具來(lái)實(shí)現(xiàn)種基本工具來(lái)實(shí)現(xiàn)ERER圖:圖: A. A.矩形框,表示實(shí)體類(lèi)型。矩形框,表示實(shí)體類(lèi)型。 B. B.菱形框,表示聯(lián)系類(lèi)型。菱形框,表示聯(lián)系類(lèi)型。 C. C.橢圓型框,表示實(shí)體類(lèi)型和聯(lián)系類(lèi)型的屬性。對(duì)于鍵的橢圓型框,表示實(shí)體類(lèi)型和聯(lián)系類(lèi)型的屬性。對(duì)于鍵的屬性,在屬性名下畫(huà)一橫線。屬性,在屬性名下畫(huà)一橫線。 D. D.直線,表示聯(lián)系類(lèi)型和相關(guān)實(shí)體類(lèi)型之間的聯(lián)系,并直線,表示聯(lián)系類(lèi)型和相關(guān)實(shí)體類(lèi)型之間的聯(lián)系,并在直線端部標(biāo)注其種類(lèi)(在直線端部標(biāo)注其種類(lèi)(1 1:1 1,1 1:N N,M M:N N)。例如一個(gè)具)。例如一個(gè)具體的體的ERER圖,圖圖,圖3-63-6所示。所示
55、。項(xiàng)目項(xiàng)目代號(hào)代號(hào)日期日期項(xiàng)目項(xiàng)目名稱名稱項(xiàng)目項(xiàng)目項(xiàng)目項(xiàng)目-零件零件零件零件零件零件代號(hào)代號(hào)零件零件名名顏色顏色重量重量零件零件數(shù)量數(shù)量MN圖3-6 ER圖實(shí)例 數(shù)據(jù)模型數(shù)據(jù)模型 數(shù)據(jù)模型是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,主要數(shù)據(jù)模型是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,主要用于數(shù)據(jù)庫(kù)管理系統(tǒng)的實(shí)現(xiàn),它主要包括;層次模用于數(shù)據(jù)庫(kù)管理系統(tǒng)的實(shí)現(xiàn),它主要包括;層次模型、關(guān)系模型、網(wǎng)狀模型和面向?qū)ο竽P偷取P?、關(guān)系模型、網(wǎng)狀模型和面向?qū)ο竽P偷取?層次模型:用樹(shù)型結(jié)構(gòu)表示實(shí)體類(lèi)型和實(shí)體間聯(lián)系的數(shù)層次模型:用樹(shù)型結(jié)構(gòu)表示實(shí)體類(lèi)型和實(shí)體間聯(lián)系的數(shù)據(jù)模型,據(jù)模型,如圖如圖3-73-7所示所示。 關(guān)系模型:用表格結(jié)
56、構(gòu)表達(dá)集與實(shí)體間聯(lián)系的數(shù)據(jù)模關(guān)系模型:用表格結(jié)構(gòu)表達(dá)集與實(shí)體間聯(lián)系的數(shù)據(jù)模型,型,如表如表3-13-1所示。所示。 網(wǎng)狀模型:網(wǎng)狀模型: 用有向圖結(jié)構(gòu)表示實(shí)體類(lèi)型及實(shí)體間聯(lián)系的用有向圖結(jié)構(gòu)表示實(shí)體類(lèi)型及實(shí)體間聯(lián)系的數(shù)據(jù)模型。數(shù)據(jù)模型。如圖如圖3-8 3-8 所示所示。 面向?qū)ο竽P停河脤?duì)象和類(lèi)來(lái)表示實(shí)體類(lèi)型和實(shí)體間聯(lián)面向?qū)ο竽P停河脤?duì)象和類(lèi)來(lái)表示實(shí)體類(lèi)型和實(shí)體間聯(lián)系的數(shù)據(jù)模型。系的數(shù)據(jù)模型。如圖如圖3-93-9所示所示 M1M2M3M4M5M6圖3-7 層次模型示例學(xué)號(hào)姓名年齡性別系別9921108李明21男信息系9921126王妍22女信息系9921208馬凱22男信息系9922210劉青青
57、21男物理系9918109方芳20女?dāng)?shù)學(xué)系表關(guān)系模型示意圖表關(guān)系模型示意圖姓名性別年齡姓名性別年齡系別專業(yè)姓名性別年齡班級(jí)特長(zhǎng)類(lèi) 學(xué)生類(lèi) 大學(xué)生類(lèi) 小學(xué)生圖3-9 面向?qū)ο竽P褪疽釹1S2SP1SP2SP3SP4SP5P1P2P3圖3-8 網(wǎng)狀模型示意(3 3) 數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)數(shù)據(jù)庫(kù)的體系結(jié)構(gòu) 數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)分為三級(jí),內(nèi)部級(jí)、概念級(jí)、數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)分為三級(jí),內(nèi)部級(jí)、概念級(jí)、外部級(jí)。如圖外部級(jí)。如圖3-103-10所示。所示。 用戶A用戶B用戶C外模式外模式外模式概念模式內(nèi)模式數(shù)據(jù)庫(kù)外部級(jí)概念級(jí)內(nèi)部級(jí)圖3-10數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)w外部級(jí)是最接近用戶的一級(jí),外部級(jí)是最接近用戶的一級(jí),是每個(gè)
58、用戶所能看到的數(shù)據(jù)庫(kù)內(nèi)容,是每個(gè)用戶所能看到的數(shù)據(jù)庫(kù)內(nèi)容,它是整個(gè)數(shù)據(jù)庫(kù)的一部分,稱為用它是整個(gè)數(shù)據(jù)庫(kù)的一部分,稱為用戶視圖或外部視圖。每個(gè)外視圖的戶視圖或外部視圖。每個(gè)外視圖的具體表示稱為外模式,又稱子模式。具體表示稱為外模式,又稱子模式。w概念級(jí)觀察到的是整個(gè)數(shù)概念級(jí)觀察到的是整個(gè)數(shù)據(jù)庫(kù)的全部信息,稱為全局視據(jù)庫(kù)的全部信息,稱為全局視圖。全局視圖的具體表示稱為圖。全局視圖的具體表示稱為概念模式、簡(jiǎn)稱模式。概念模式、簡(jiǎn)稱模式。w內(nèi)部級(jí)是最接近存儲(chǔ)設(shè)備內(nèi)部級(jí)是最接近存儲(chǔ)設(shè)備的一級(jí),從這一級(jí)觀察到的數(shù)的一級(jí),從這一級(jí)觀察到的數(shù)據(jù)庫(kù)就是被存儲(chǔ)的數(shù)據(jù)庫(kù),稱據(jù)庫(kù)就是被存儲(chǔ)的數(shù)據(jù)庫(kù),稱為內(nèi)視圖。內(nèi)視圖的
59、具體表示為內(nèi)視圖。內(nèi)視圖的具體表示稱為內(nèi)模式,又稱為物理模式。稱為內(nèi)模式,又稱為物理模式。w用戶用戶A用戶用戶B用戶用戶C外外模式外模式外模式概念模式模式外模式外模式概念模式內(nèi)模式數(shù)據(jù)庫(kù)外部級(jí)概念級(jí)內(nèi)模式數(shù)據(jù)庫(kù)外部級(jí)概念級(jí)內(nèi)部級(jí)圖內(nèi)部級(jí)圖3-10數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)體系結(jié)構(gòu)w數(shù)據(jù)庫(kù)的三級(jí)體系結(jié)構(gòu)數(shù)據(jù)庫(kù)的三級(jí)體系結(jié)構(gòu)是數(shù)據(jù)庫(kù)的三個(gè)抽象級(jí)別,是數(shù)據(jù)庫(kù)的三個(gè)抽象級(jí)別,它將數(shù)據(jù)的具體組織留給它將數(shù)據(jù)的具體組織留給DBMS去做,用戶只抽象地去做,用戶只抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計(jì)算機(jī)中的表示和存儲(chǔ)。在計(jì)算機(jī)中的表示和存儲(chǔ)。為了實(shí)現(xiàn)三個(gè)級(jí)別的轉(zhuǎn)換,為了實(shí)現(xiàn)三個(gè)級(jí)別
60、的轉(zhuǎn)換,DBMS在三個(gè)級(jí)別之間提供在三個(gè)級(jí)別之間提供了兩個(gè)層次的映像,即外模了兩個(gè)層次的映像,即外模式式/概念模式映像和概念模概念模式映像和概念模式式/內(nèi)模式映像。內(nèi)模式映像。2. 2.數(shù)據(jù)庫(kù)技術(shù)的新發(fā)展數(shù)據(jù)庫(kù)技術(shù)的新發(fā)展 數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)軟件領(lǐng)域的一數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)軟件領(lǐng)域的一個(gè)重要分支,經(jīng)過(guò)三十多年的發(fā)展經(jīng)歷個(gè)重要分支,經(jīng)過(guò)三十多年的發(fā)展經(jīng)歷了第一代(層次和網(wǎng)狀數(shù)據(jù)庫(kù))和第二了第一代(層次和網(wǎng)狀數(shù)據(jù)庫(kù))和第二代(關(guān)系數(shù)據(jù)庫(kù)),已形成了相當(dāng)規(guī)模代(關(guān)系數(shù)據(jù)庫(kù)),已形成了相當(dāng)規(guī)模的理論體系和應(yīng)用技術(shù)。隨著相關(guān)學(xué)科的理論體系和應(yīng)用技術(shù)。隨著相關(guān)學(xué)科的不斷發(fā)展和應(yīng)用領(lǐng)域的不斷延伸,數(shù)的不斷發(fā)展
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- JAVA圖形界面編程基礎(chǔ)試題及答案
- JAVA智能設(shè)備開(kāi)發(fā)趨勢(shì)試題及答案
- 2025年中級(jí)社會(huì)工作者《社會(huì)工作綜合能力》沖刺試卷一
- C語(yǔ)言式編程風(fēng)格探討試題及答案
- VFP編程思想啟示試題及答案
- 2025年計(jì)算機(jī)二級(jí)VFP考試知識(shí)地圖及試題及答案
- 2025年JAVA代碼重用的試題及答案
- 財(cái)務(wù)分析中的高級(jí)邏輯推理試題及答案
- 計(jì)算機(jī)二級(jí)核心知識(shí)的試題及答案重點(diǎn)
- 超市合作的合同協(xié)議書(shū)
- 杭州市2025年中考作文《勇敢自信》寫(xiě)作策略與范文
- 成都設(shè)計(jì)咨詢集團(tuán)有限公司2025年社會(huì)公開(kāi)招聘(19人)筆試參考題庫(kù)附帶答案詳解
- 江蘇南京茉莉環(huán)境投資有限公司招聘筆試題庫(kù)2025
- 針刺傷預(yù)防與處理(中華護(hù)理學(xué)會(huì)團(tuán)體標(biāo)準(zhǔn))
- 北京小升初分班考試數(shù)學(xué)試卷
- 2021年周施工進(jìn)度計(jì)劃表
- 起重機(jī)械日常點(diǎn)檢表
- 說(shuō)明書(shū)hid500系列變頻調(diào)速器使用說(shuō)明書(shū)s1.1(1)
- 消化系統(tǒng)疾病護(hù)理題庫(kù)
- 金屬非金屬地下礦山六大系統(tǒng)簡(jiǎn)介
- 建筑施工重大危險(xiǎn)源的辨識(shí)及控制措施
評(píng)論
0/150
提交評(píng)論