




已閱讀5頁,還剩138頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1.4 計(jì)算機(jī)軟件系統(tǒng),計(jì)算機(jī)系統(tǒng)=硬件+軟件,計(jì)算機(jī)系統(tǒng)是由硬件和軟件組成的,兩者缺一不可!,軟件、硬件和用戶的關(guān)系,硬件的能力非常有限,只是速度極高而已 沒有軟件,硬件幾乎什么任務(wù)也完成不了,計(jì)算機(jī)通過軟件才能進(jìn)行信息處理,不同的軟件,完成不同的任務(wù),同一軟件處理不同的數(shù)據(jù),完成不同的任務(wù),什么是程序?,程序是告訴計(jì)算機(jī)做什么和如何做的一組指令(語句),這些指令(語句)都是計(jì)算機(jī)能夠理解并能夠執(zhí)行的一些命令 程序的特性: 用于完成某一確定的信息處理任務(wù) 使用某種計(jì)算機(jī)語言描述如何完成該任務(wù) 預(yù)先存儲(chǔ)在計(jì)算機(jī)中,啟動(dòng)運(yùn)行后才能完成任務(wù),程序與數(shù)據(jù)的關(guān)系,程序所處理的對(duì)象和處理后得到的結(jié)果統(tǒng)稱為數(shù)據(jù)(分別稱為輸入數(shù)據(jù)和輸出數(shù)據(jù)) 程序必須處理合理的輸入數(shù)據(jù),否則不會(huì)產(chǎn)生有意義的輸出 程序和數(shù)據(jù)具有相對(duì)性,程序與軟件是什么關(guān)系?,軟件往往指的是設(shè)計(jì)比較成熟、功能比較完善、具有某種使用價(jià)值、且有一定規(guī)模的程序 軟件既包含程序、也包含與程序相關(guān)的數(shù)據(jù)和文檔: 程序是軟件的主體 數(shù)據(jù)指的是程序運(yùn)行過程中處理的對(duì)象和必須使用的一些參數(shù)(如三角函數(shù)表、英漢詞典等) 文檔指的是與程序開發(fā)、維護(hù)及操作有關(guān)的一些資料(如設(shè)計(jì)報(bào)告、維護(hù)手冊(cè)和使用指南等) “軟件” 強(qiáng)調(diào)的是產(chǎn)品、工程、產(chǎn)業(yè)或?qū)W科等宏觀方面的含義,“程序”更側(cè)重技術(shù)層面的含義 軟件和程序本質(zhì)上相同,在不會(huì)發(fā)生混淆的場(chǎng)合,軟件和程序兩個(gè)名稱經(jīng)?;煊茫⒉粐?yán)格加以區(qū)分,2. 計(jì)算機(jī)軟件的特性,計(jì)算機(jī)軟件有哪些特性? (1),1. 不可見性(是無形的,不能被人們直接觀察、欣賞和評(píng)價(jià)) 2. 適用性(可以適應(yīng)一類應(yīng)用問題的需要 ) 3. 依附性(依附于特定的硬件、網(wǎng)絡(luò)和其他軟件 ) 4. 復(fù)雜性(規(guī)模越來越大,開發(fā)人員越來越多,開發(fā)成本也越來越高) ,例如:,軟件的復(fù)雜性 舉例,程序規(guī)模:Windows XP源程序約有5000萬行 人員隊(duì)伍:Vista及新版Office 2007兩個(gè)團(tuán)隊(duì)開發(fā)設(shè)計(jì)成員總共9000余人 資金投入:微軟為Vista投入90億美元,包括Vista未來的配套及合作伙伴的投入,預(yù)計(jì)在180億美元以上,如果加上新版Office的成本,投入資金在240億270億美元之間 開發(fā)周期:Vista的開發(fā)經(jīng)歷6年,發(fā)布時(shí)間一拖再拖,計(jì)算機(jī)軟件有哪些特性? (2),5. 無磨損性(功能和性能一般不會(huì)發(fā)生變化 ) 6. 易復(fù)制性(可以非常容易且毫無失真地進(jìn)行復(fù)制 ) 7. 不斷演變性(軟件的生命周期 ) ,例如: 1989年Word 1.0 1997年推出Word 97 2000年推出Office 2000 2003年 Office 2003 最新版本是Office 2007,8. 有限責(zé)任(有限保證) 9. 脆弱性(黑客攻擊、病毒入侵、信息盜用),Windows版本演變,計(jì)算機(jī)軟件與知識(shí)產(chǎn)權(quán),軟件是智力活動(dòng)的成果,受到知識(shí)產(chǎn)權(quán)(版權(quán))法的保護(hù) 版權(quán)授予軟件作者(版權(quán)所有者)享有下列權(quán)利: 拷貝、發(fā)布、修改、署名、出售、 保護(hù)知識(shí)產(chǎn)權(quán)的目的:確保腦力勞動(dòng)受到獎(jiǎng)勵(lì)并鼓勵(lì)發(fā)明創(chuàng)造,保護(hù)知識(shí)產(chǎn)權(quán)就是保護(hù)腦力勞動(dòng)人員,使他們發(fā)揮創(chuàng)造能力,社會(huì)也會(huì)從他們的成果中受益 購買一個(gè)軟件,用戶僅僅得到了該軟件的使用權(quán),并沒有獲得它的版權(quán) 隨意進(jìn)行軟件拷貝和分發(fā)是一種違法行為,3. 計(jì)算機(jī)軟件的分類,從用途對(duì)計(jì)算機(jī)軟件分類,系統(tǒng)軟件 不是為了解決某種具體應(yīng)用,而是為了: 給用戶使用計(jì)算機(jī)提供方便 給應(yīng)用軟件的開發(fā)與運(yùn)行提供支持 使計(jì)算機(jī)有效、安全、可靠地運(yùn)行,應(yīng)用軟件 專門用于幫助最終用戶解決各種具體應(yīng)用問題的軟件 分類(按開發(fā)方式): 定制應(yīng)用軟件 通用應(yīng)用軟件 幾乎所有領(lǐng)域、所有人都需要使用 設(shè)計(jì)精巧,易學(xué)易用 商品化,價(jià)格較低,什么是系統(tǒng)軟件?,系統(tǒng)軟件是管理、監(jiān)控和維護(hù)計(jì)算機(jī)硬件資源和軟件資源的軟件, 主要包括操作系統(tǒng)、各種語言的處理程序、數(shù)據(jù)庫管理系統(tǒng)等。 舉例: 基本輸入/輸出系統(tǒng)(BIOS) 操作系統(tǒng)(如Windows、Unix、Linux等) 程序開發(fā)工具與環(huán)境(如C語言編譯器等) 數(shù)據(jù)庫管理系統(tǒng)(DBMS) 實(shí)用程序(Utility,如磁盤清理程序、備份程序、殺毒軟件、防火墻等),系統(tǒng)軟件有哪些特性?,與計(jì)算機(jī)硬件有密切的關(guān)系,能對(duì)硬件進(jìn)行統(tǒng)一的控制、調(diào)度和管理; 具有通用性,能為多種應(yīng)用軟件的開發(fā)和運(yùn)行提供支持與服務(wù) 在任何計(jì)算機(jī)系統(tǒng)中,系統(tǒng)軟件都是必不可少的 在購買計(jì)算機(jī)時(shí),通常計(jì)算機(jī)供應(yīng)廠商會(huì)提供給用戶一些最基本的系統(tǒng)軟件,否則計(jì)算機(jī)無法工作。,系統(tǒng)軟件有哪些?,操作系統(tǒng)(OS) 操作系統(tǒng)是控制、管理計(jì)算機(jī)硬件資源和軟件資源的大型系統(tǒng)軟件,是計(jì)算機(jī)所有軟、硬件系統(tǒng)的組織者和管理者,它能合理地組織計(jì)算機(jī)的工作流程,控制用戶程序的運(yùn)行,為用戶提供各種服務(wù)。 操作系統(tǒng)由許多具有控制和管理功能的子程序組成。 典型的操作系統(tǒng)有:DOS、UNIX、Windows、OS/2、NetWare及Linux等。,系統(tǒng)軟件有哪些?,語言處理系統(tǒng) 機(jī)器語言 它是計(jì)算機(jī)能唯一識(shí)別并執(zhí)行的語言,不同型號(hào)的計(jì)算機(jī)的機(jī)器語言有所不同。 優(yōu)點(diǎn):程序的執(zhí)行效率高 缺點(diǎn):其編寫的程序難寫、難讀、易出錯(cuò)、難移植 匯編語言 匯編語言又稱符號(hào)語言,是機(jī)器語言的符號(hào)化表示。 高級(jí)語言 人工智能高級(jí)語言 數(shù)據(jù)庫管理系統(tǒng)(DBMS),語言處理系統(tǒng) 機(jī)器語言 現(xiàn)在已不直接用機(jī)器語言編制程序,系統(tǒng)軟件有哪些?,語言處理系統(tǒng) 匯編語言,系統(tǒng)軟件有哪些?,優(yōu)點(diǎn): 操作數(shù)直接使用十進(jìn)制,缺點(diǎn): 大型程序難以開發(fā) 依賴于具體計(jì)算機(jī),系統(tǒng)軟件有哪些?,語言處理系統(tǒng) 高級(jí)語言 目的:克服匯編語言的缺陷,提高編程和維護(hù)的效率 特點(diǎn): 接近人們?nèi)粘J褂玫淖匀徽Z言(主要是英語)容易理解、記憶和使用 可在不同計(jì)算機(jī)上通用 對(duì)使用的符號(hào)、詞匯、語法和語義等各種語言成分都有嚴(yán)格的規(guī)定 意義:使程序設(shè)計(jì)的難度降低,導(dǎo)致了計(jì)算機(jī)的發(fā)展進(jìn)入新的階段,高級(jí)程序設(shè)計(jì)語言的發(fā)展,50年代:Fortran,ALGOL 60年代:COBOL語言 70年代:Pascal 語言,C語言,BASIC語言 80年代: Ada語言,PROLOG語言,LISP語言 90年代起:面向?qū)ο笳Z言C+、 JAVA、C#等,FORTRAN語言,FORTRAN是FORmula TRANslation (公式翻譯)的縮寫詞,它是一種主要用于數(shù)值計(jì)算的面向過程的程序設(shè)計(jì)語言。FORTRAN語言的特點(diǎn)是接近數(shù)學(xué)公式,簡(jiǎn)單易用 目前最新的國(guó)際標(biāo)準(zhǔn)是FORTRAN2003,BASIC和Visual Basic語言,BASIC語言的特點(diǎn)是簡(jiǎn)單易學(xué) Visual BASIC(VB)語言是微軟公司基于BASIC發(fā)展而來的一種程序設(shè)計(jì)語言,特點(diǎn)是: 是一種可視化的、面向?qū)ο蟮?、采用事件?qū)動(dòng)方式的結(jié)構(gòu)化高級(jí)程序設(shè)計(jì)語言 具有高效率、簡(jiǎn)單易學(xué)及功能強(qiáng)大的特點(diǎn) 可以高效、快速地開發(fā)Windows 環(huán)境下功能強(qiáng)大、圖形界面豐富的應(yīng)用軟件,Pascal語言,1968年由N.Wirth提出,1973年正式發(fā)表。 Pascal語言是結(jié)構(gòu)化程序設(shè)計(jì)語言 適用于科學(xué)計(jì)算、數(shù)據(jù)處理、尤其是系統(tǒng)軟件開發(fā)等,C語言和C+語言,C語言是19721973年間由ATT公司Bell實(shí)驗(yàn)室開發(fā)而成 C語言兼有高級(jí)語言的優(yōu)點(diǎn)和匯編語言的效率,有效地處理了簡(jiǎn)潔性和實(shí)用性、可移植性和高效性之間的矛盾 C+語言以C語言為基礎(chǔ)發(fā)展而成,既有數(shù)據(jù)抽象和面向?qū)ο竽芰?,運(yùn)行性能高,又能與C語言兼容,因而C+語言迅速流行,成為當(dāng)前面向?qū)ο蟪绦蛟O(shè)計(jì)的主流語言,Java語言,由SUN Microsystem公司于1995年發(fā)布的一種面向?qū)ο蟮?、用于網(wǎng)絡(luò)環(huán)境的程序設(shè)計(jì)語言 基本特征是: 適用于網(wǎng)絡(luò)分布環(huán)境 具有一定的平臺(tái)獨(dú)立性 安全性和穩(wěn)定性好 Java語言受到各種應(yīng)用領(lǐng)域的重視,取得快速的發(fā)展,在Internet上已推出了用Java語言編寫的很多應(yīng)用程序,系統(tǒng)軟件有哪些?,語言處理系統(tǒng) 人工智能高級(jí)語言 人工智能高級(jí)語言不要求用戶給出問題的求解算法,只需要指出求解問題、輸入數(shù)據(jù)和指出輸出格式,就可以得到求解結(jié)果。 又稱面向問題的語言、非過程語言或描述性語言。,系統(tǒng)軟件有哪些?,數(shù)據(jù)庫管理系統(tǒng)(DBMS) 是管理數(shù)據(jù)庫的軟件,主要解決數(shù)據(jù)處理中非數(shù)值計(jì)算問題,常用于各種管理信息系統(tǒng)。,1.4.2 系統(tǒng)支撐軟件,支持其他軟件實(shí)施設(shè)計(jì)、開發(fā)和維護(hù)的軟件稱為支撐軟件。,1.4.3 應(yīng)用軟件,應(yīng)用軟件是針對(duì)某一專門目的而開發(fā)的軟件。,關(guān)于微軟的辦公軟件Office,歷史與發(fā)展 內(nèi)容與功能:以O(shè)ffice2003為例,共包含7個(gè)主要的軟件:,成功軟件的經(jīng)驗(yàn)是什么?它們都具有如下特點(diǎn): 1 它們能替代現(xiàn)實(shí)世界已有的其他工具,而且使用起來比已有工具更方便有效 2 它們能完成已有工具很難完成甚至完全不可能完成的事,擴(kuò)展了人們的能力 3 ,從軟件知識(shí)產(chǎn)權(quán)對(duì)軟件進(jìn)行分類,商品軟件 共享軟件(shareware) 具有版權(quán),可免費(fèi)試用一段時(shí)間,允許拷貝和散發(fā)(但不可修改),過了試用期若還想繼續(xù)使用,就得交一筆注冊(cè)費(fèi),成為注冊(cè)用戶。 自由軟件 (freeware)(開放源代碼軟件) 用戶可共享,并允許隨意拷貝、修改其源代碼,允許銷售和自由傳播。但是,對(duì)軟件源代碼的任何修改都必須向所有用戶公開,還必須允許此后的用戶享有進(jìn)一步拷貝和修改的自由。 自由軟件的重大意義,2.1 Windows操作系統(tǒng),2.1.1 操作系統(tǒng)的概述 2.1.2 典型操作系統(tǒng)介紹 2.1.3 Windows操作系統(tǒng),OS屏蔽了計(jì)算機(jī)中幾乎所有物理設(shè)備的技術(shù)細(xì)節(jié),為使用、開發(fā)和運(yùn)行其他軟件提供了一個(gè)高效、可靠的平臺(tái)。 OS非常龐大和復(fù)雜,它由許多程序模塊組成,沒有安裝任何軟件的計(jì)算機(jī)稱為裸機(jī), 裸機(jī)是無法使用的 操作系統(tǒng)是最重要的一種系統(tǒng)軟件,幾乎所有計(jì)算機(jī)都要安裝OS,2.1.1操作系統(tǒng)概述,操作系統(tǒng)(Operating System,簡(jiǎn)稱OS)是計(jì)算機(jī)系統(tǒng)中最基本的系統(tǒng)軟件, 它統(tǒng)一管理和調(diào)度計(jì)算機(jī)系統(tǒng)的硬件資源和軟件資源,它是保障計(jì)算機(jī)系統(tǒng)中所有軟件和硬件資源協(xié)調(diào)一致,有條不紊工作的軟件。用戶通過它使用計(jì)算機(jī)。,1. 什么是操作系統(tǒng),(1) 處理器管理 允許多個(gè)程序同時(shí)運(yùn)行的操作系統(tǒng)稱為多道程序系統(tǒng)。 多道程序系統(tǒng)中,對(duì)某一處理器而言,任一時(shí)刻僅能執(zhí)行一道程序,系統(tǒng)中各程序是交替執(zhí)行的。 多道程序同時(shí)在系統(tǒng)中運(yùn)行,它們共享系統(tǒng)資源,但操作系統(tǒng)也必須承擔(dān)系統(tǒng)資源的管理任務(wù),包括對(duì)處理器的分配管理。 處理器的分配和運(yùn)行都是以進(jìn)程為基本單位,因此,處理器管理也可稱為進(jìn)程管理。,2. 操作系統(tǒng)的管理對(duì)象,(1) 處理器管理 進(jìn)程(Process):進(jìn)程是指在系統(tǒng)中一個(gè)正在運(yùn)行的應(yīng)用程序,即一個(gè)程序被加載到內(nèi)存,就建立了該程序的進(jìn)程。程序是計(jì)算機(jī)的指令集合,是一個(gè)靜態(tài)的概念;進(jìn)程是一個(gè)動(dòng)態(tài)的概念,是程序的一次執(zhí)行過程,一個(gè)程序可以多次執(zhí)行,每次執(zhí)行就會(huì)創(chuàng)建一個(gè)進(jìn)程,進(jìn)程在它的整個(gè)生命周期中,始終在就緒、運(yùn)行、掛起的狀態(tài)中變化著直到進(jìn)程結(jié)束才撤銷。 線程(Threads):隨著軟、硬件技術(shù)的發(fā)展,為了更好地實(shí)現(xiàn)并發(fā)處理和共享資源,提高CPU的利用率,目前許多操作系統(tǒng)把進(jìn)程再細(xì)分成線程。線程又被稱為輕量級(jí)進(jìn)程,是系統(tǒng)分配處理器時(shí)間資源的基本單元。每個(gè)進(jìn)程包含一到多個(gè)線程,它可與同屬一個(gè)進(jìn)程的其它線程共享進(jìn)程所擁有的全部資源。,2. 操作系統(tǒng)的管理對(duì)象,為什么需要操作系統(tǒng)?,控制基本的輸入/輸出操作,分配系統(tǒng)中的資源,管理存儲(chǔ)器空間,監(jiān)測(cè)計(jì)算機(jī)運(yùn)行和故障,維護(hù)計(jì)算機(jī)安全,操作系統(tǒng)的重要作用,三項(xiàng)主要作用: (1)為計(jì)算機(jī)中運(yùn)行的程序管理和分配系統(tǒng)中的各種軟硬件資源 (2)為用戶提供友善的人機(jī)界面(圖形用戶界面) (3)為開發(fā)和運(yùn)行應(yīng)用程序提供高效率的平臺(tái) 其它輔助功能: 輔導(dǎo)用戶操作(幫助功能) 顯示系統(tǒng)狀態(tài) 處理軟硬件錯(cuò)誤 保護(hù)系統(tǒng)安全,基本輸入輸出系統(tǒng)BIOS,基本輸入/輸出系統(tǒng)是存放在主板上只讀存儲(chǔ)器(flash ROM) 中的一組程序(也稱為firmware, 固件 ) 主要包含4個(gè)部分: 加電自檢程序 (診斷計(jì)算機(jī)故障) 系統(tǒng)自舉(裝入)程序 (啟動(dòng)計(jì)算機(jī)工作) CMOS設(shè)置程序 (設(shè)定和修改計(jì)算機(jī)配置) 基本外圍設(shè)備的驅(qū)動(dòng)程序 (控制基本的I/O操作) 計(jì)算機(jī)斷電后,BIOS程序和CMOS中的數(shù)據(jù)仍保持不變 需要時(shí)BIOS程序可以升級(jí)(update),操作系統(tǒng)的啟動(dòng)(boot up),ROM BIOS,RAM,CPU,CMOS,操作系統(tǒng)運(yùn)行時(shí)內(nèi)存的態(tài)勢(shì),什么是任務(wù),什么是多任務(wù)處理?,“任務(wù)”指的是要計(jì)算機(jī)做的一件事,計(jì)算機(jī)執(zhí)行一個(gè)任務(wù)通常就對(duì)應(yīng)著運(yùn)行一個(gè)應(yīng)用程序 “單任務(wù)處理”與“多任務(wù)處理” 單任務(wù)處理:前一個(gè)任務(wù)完成后才能啟動(dòng)后一個(gè)任務(wù)的運(yùn)行,任務(wù)是順序執(zhí)行的 多任務(wù)處理(Multitasking):允許計(jì)算機(jī)同時(shí)執(zhí)行多個(gè)任務(wù),任務(wù)是并發(fā)執(zhí)行的 多任務(wù)處理舉例: 編輯PPT講稿 + 播放音樂 + 收發(fā)郵件 多任務(wù)處理的優(yōu)點(diǎn): 大大提高了用戶的工作效率 大大提高了計(jì)算機(jī)的使用效率,如何知道有哪些任務(wù)在運(yùn)行?,每啟動(dòng)一個(gè)應(yīng)用程序,OS就會(huì)打開一個(gè)相應(yīng)的窗口,通常一個(gè)窗口就是一個(gè)任務(wù) 每啟動(dòng)一個(gè)應(yīng)用程序,OS就會(huì)在任務(wù)欄上顯示一個(gè)相應(yīng)的任務(wù)按鈕(程序按鈕),通常一個(gè)按鈕就是一個(gè)任務(wù) 窗口可以放大或縮小,甚至可以“最小化”,但任務(wù)的運(yùn)行不受其影響 使用“任務(wù)管理器”程序可以了解每個(gè)任務(wù)的運(yùn)行情況,什么是前臺(tái)任務(wù)與后臺(tái)任務(wù)?,前臺(tái)任務(wù):能接受用戶輸入(擊鍵或按擊鼠標(biāo))的窗口只能有一個(gè),稱為活動(dòng)窗口,它所對(duì)應(yīng)的任務(wù)稱為前臺(tái)任務(wù) 后臺(tái)任務(wù):除前臺(tái)任務(wù)外,所有其它任務(wù)均為后臺(tái)任務(wù) 前臺(tái)任務(wù)與后臺(tái)任務(wù)的區(qū)別: 前臺(tái)任務(wù)對(duì)應(yīng)的窗口(活動(dòng)窗口)位于其它窗口的前面 活動(dòng)窗口的標(biāo)題欄比非活動(dòng)窗口顏色更深(深藍(lán)色) 前臺(tái)任務(wù)與后臺(tái)任務(wù)的共同點(diǎn):都在計(jì)算機(jī)中運(yùn)行 前臺(tái)任務(wù)與后臺(tái)任務(wù)的切換: 為了輸入信息到某個(gè)后臺(tái)任務(wù)中去,必須切換窗口(單擊要激活的后臺(tái)任務(wù)窗口的任何部位, 或單擊任務(wù)欄中對(duì)應(yīng)的任務(wù)按鈕),如何結(jié)束任務(wù)的運(yùn)行?,每一個(gè)應(yīng)用程序運(yùn)行時(shí)都要占用大量的系統(tǒng)資源(存儲(chǔ)器、CPU、屏幕等),所以當(dāng)不再需要某個(gè)應(yīng)用程序運(yùn)行時(shí),就應(yīng)該退出這個(gè)應(yīng)用程序,釋放它所占用的資源 多數(shù)應(yīng)用程序都設(shè)計(jì)成交互式控制的方式,所以運(yùn)行完畢后必須由用戶退出該程序。 Windows XP中退出應(yīng)用程序的幾種方法: 最快速的方法,是左擊應(yīng)用程序窗口右上角的紅色“叉子”按鈕 左擊窗口左上角的控制按鈕,在彈出菜單中選擇“關(guān)閉” 在應(yīng)用程序的“文件”菜單中,選擇“退出” 通過OS的任務(wù)管理器,強(qiáng)迫結(jié)束任務(wù),OS如何支持多任務(wù)處理?,為什么可以實(shí)現(xiàn)多任務(wù)處理? CPU速度極高,必須并且可以充分發(fā)揮CPU的效能 CPU與I/O(外圍設(shè)備)的并行工作 各個(gè)外圍設(shè)備之間并行工作 實(shí)現(xiàn)多任務(wù)處理要解決哪些問題? CPU如何管理和調(diào)度 存儲(chǔ)器空間如何分配和管理 I/O設(shè)備和I/O操作如何管理和控制 誰來解決上述問題? 不是應(yīng)用程序自己,而是操作系統(tǒng)(OS) !,Windows中的處理器管理,Windows為了確保每個(gè)已經(jīng)啟動(dòng)的任務(wù)都有機(jī)會(huì)運(yùn)行,它采用“搶先式”多任務(wù)處理技術(shù): 由硬件計(jì)時(shí)器大約每10-20ms發(fā)出1次中斷信號(hào),Windows立即暫停當(dāng)前正在運(yùn)行的任務(wù),查看當(dāng)前所有的任務(wù),選擇其中的一個(gè)交給CPU去運(yùn)行 只要時(shí)間片結(jié)束,不管任務(wù)有多重要,也不管它執(zhí)行到什么地方,正在執(zhí)行的任務(wù)就會(huì)被強(qiáng)行暫時(shí)終止 上述的任務(wù)調(diào)度,每秒鐘要進(jìn)行幾十次幾百次 實(shí)際上,操作系統(tǒng)本身的若干程序也是與應(yīng)用程序同時(shí)運(yùn)行的,它們一起參與CPU時(shí)間的分配。當(dāng)然,不同程序的重要性不完全一樣,它們獲得CPU使用權(quán)的優(yōu)先級(jí)也有區(qū)別,2. 操作系統(tǒng)的管理對(duì)象,(2)存儲(chǔ)管理和虛擬存儲(chǔ)器 存儲(chǔ)器資源包括內(nèi)存儲(chǔ)器和外存儲(chǔ)器。 內(nèi)存中存放著正在運(yùn)行的程序 外存中存放著程序文件及數(shù)據(jù) 當(dāng)外存中的文件及數(shù)據(jù)加載到內(nèi)存中時(shí),需要得到內(nèi)存空間,當(dāng)多個(gè)程序文件同時(shí)加載時(shí),如何來管理內(nèi)存呢?,系統(tǒng)運(yùn)行時(shí)內(nèi)存儲(chǔ)器的布局,內(nèi)存儲(chǔ)器空間劃分為2個(gè)部分:系統(tǒng)區(qū)和用戶區(qū),用戶區(qū)用來存放正在運(yùn)行的應(yīng)用程序,分析: 允許同時(shí)運(yùn)行多少程序?數(shù)目有沒有限制? 程序的大小和數(shù)據(jù)的規(guī)模受不受限制? 程序與程序相互之間會(huì)不會(huì)互相干擾?,存儲(chǔ)管理的任務(wù),為每個(gè)任務(wù)分配存儲(chǔ)空間,任務(wù)結(jié)束之后收回存儲(chǔ)空間 轉(zhuǎn)換地址,當(dāng)多進(jìn)程同時(shí)運(yùn)行時(shí),將程序中的邏輯地址轉(zhuǎn)換為內(nèi)存中的物理地址 對(duì)存儲(chǔ)空間進(jìn)行擴(kuò)充,使應(yīng)用程序的存儲(chǔ)空間不受實(shí)際存儲(chǔ)容量大小的限制 解決方案虛擬存儲(chǔ)器(Virtual Memory) 對(duì)存儲(chǔ)空間進(jìn)行保護(hù) 保護(hù)操作系統(tǒng)所在區(qū)域不被應(yīng)用程序修改 保護(hù)每個(gè)應(yīng)用程序的私有區(qū)域不被其他程序修改,虛擬存儲(chǔ)器示意圖,硬盤中專門劃出一個(gè)“交換區(qū)”,作為物理內(nèi)存的補(bǔ)充,稱為“虛擬內(nèi)存”,2. 操作系統(tǒng)的管理對(duì)象,(3)設(shè)備管理 緩沖區(qū)管理:解決CPU和外設(shè)速度不匹配的矛盾。 設(shè)備分配:根據(jù)用戶的I/O請(qǐng)求和相應(yīng)的分配策略,為該用戶分配外部設(shè)備以及通道,控制器等,實(shí)現(xiàn)CPU與通道和外設(shè)之間的通信。 設(shè)備驅(qū)動(dòng):是指驅(qū)動(dòng)相應(yīng)設(shè)備進(jìn)行I/O操作的程序。 設(shè)備無關(guān)性:又稱設(shè)備獨(dú)立性,即用戶編寫的程序與實(shí)際使用的物理設(shè)備無關(guān),由操作系統(tǒng)把用戶程序中使用的邏輯設(shè)備映射到物理設(shè)備。,(按名存取) (按地址存?。?2. 操作系統(tǒng)的管理對(duì)象,(4)文件管理,什么是文件(file) ?,文件是存儲(chǔ)在外存儲(chǔ)器中的一組相關(guān)信息的集合,例如: 一個(gè)程序 一張數(shù)碼相片 一只MP3歌曲 一封電子郵件 文件是外存中信息的存取(讀出/寫入)單位 計(jì)算機(jī)中所有的程序和數(shù)據(jù)都組織成為文件存放在外存儲(chǔ)器中,并使用其名字進(jìn)行存取操作,復(fù)習(xí):文件名和文件類型,文件的名字由兩部分組成:(主文件名) .擴(kuò)展名 主文件名(簡(jiǎn)稱文件名)是文件的主要標(biāo)識(shí),不可省略 文件擴(kuò)展名(類型名)由“.”加34個(gè)英文字母組成, 用于區(qū)分文件的類型: 程序文件(可執(zhí)行文件):.exe .com 文件中包含的是可以由CPU執(zhí)行的程序的二進(jìn)制代碼 數(shù)據(jù)文件: 純文本文件(.txt) PDF文件(.pdf) Word文件(.doc) 投影片文件(.ppt) 數(shù)碼照片文件(.jpg) MP3音樂文件(.mp3) 文件中包含的是由程序處理的數(shù)據(jù)的二進(jìn)制代碼 處理不同類型的數(shù)據(jù)文件一般需要使用(關(guān)聯(lián))不同的程序! 文件名字使用西文(或中文)字符組成,但不能使用某些特殊字符(如 ? * :“”等),Windows XP 的文件,允許使用長(zhǎng)文件名,即文件名最多可包含255個(gè)中文或西文字符 英文字母的大、小寫只在形式上加以區(qū)分,實(shí)際上不予區(qū)別 (例如: Text.DOC 與 text.doc 是同一個(gè)文件) 常用程序文件的擴(kuò)展名: .exe .com .dll .bat 常用數(shù)據(jù)文件的擴(kuò)展名:,文件的組成和文件說明信息,每一個(gè)文件都由2部分組成:,Windows XP 的文件組織,文件目錄在Windows中稱為文件夾 每個(gè)邏輯盤(物理盤或硬盤上的分區(qū))是一個(gè)根文件夾 文件夾中既可包含文件,也可包含文件夾 (子文件夾),子文件夾又可存放文件和子文件夾, 形成樹狀多級(jí)文件夾結(jié)構(gòu),根節(jié)點(diǎn)和中間節(jié)點(diǎn)都是文件夾,葉節(jié)點(diǎn)都是文件,為什么使用多級(jí)文件夾? 1)有利于文件分類存儲(chǔ) 2)允許文件同名(在不同 文件夾中時(shí)) 3)便于文件共享和保護(hù),Windows XP中文件如何定位?,計(jì)算機(jī)中的每個(gè)文件都有一個(gè)確定的位置 文件的位置由存放文件的邏輯驅(qū)動(dòng)器號(hào)、文件路徑以及文件名組成: 驅(qū)動(dòng)器號(hào)(盤符) + 文件路徑 + 文件名,例 右圖中文件02.ppt的位置是: D:數(shù)據(jù)概論講稿02.ppt,從根文件夾到文件所在文件夾所順序經(jīng)過的一串文件夾,其間用“”相互隔開,文件管理和文件系統(tǒng),文件系統(tǒng)需要解決的問題: 有效管理外存儲(chǔ)器的存儲(chǔ)空間 實(shí)現(xiàn)對(duì)文件方便而快速的存取操作 對(duì)軟盤、硬盤、光盤、優(yōu)盤等不同外存儲(chǔ)器實(shí)現(xiàn)統(tǒng)一管理 統(tǒng)一本地文件/遠(yuǎn)程文件的存取操作 實(shí)現(xiàn)文件的安全存取,文件系統(tǒng)是OS的一個(gè)組成部分,它負(fù)責(zé)管理計(jì)算機(jī)中的文件,使用戶(和程序)能很方便地進(jìn)行文件的存取操作,3. 人機(jī)對(duì)話接口,用戶向計(jì)算機(jī)發(fā)出的任何操作命令,都是由操作系統(tǒng)的人機(jī)對(duì)話接口程序接收、解釋給計(jì)算機(jī)硬件,命令動(dòng)作的實(shí)施由計(jì)算機(jī)硬件完成。 操作的反饋信息是硬件報(bào)告給操作系統(tǒng)的人機(jī)對(duì)話接口程序,再由人機(jī)對(duì)話接口程序反饋給用戶或應(yīng)用程序。 任何用戶都是通過操作系統(tǒng)使用計(jì)算機(jī),使用操作系統(tǒng)主要是使用操作系統(tǒng)的人機(jī)對(duì)話接口。有了操作系統(tǒng)之后,普通用戶才可以非常方便地使用計(jì)算機(jī)。 學(xué)會(huì)幾種不同的操作系統(tǒng)的使用,是很有現(xiàn)實(shí)意義的。,4操作系統(tǒng)的分類,歷經(jīng)多年的發(fā)展,操作系統(tǒng)的種類越來越多,功能上的差異也很大,以適應(yīng)不同的應(yīng)用領(lǐng)域和不同的硬件配置。按系統(tǒng)的功能為標(biāo)準(zhǔn)分類,可分為批處理系統(tǒng)、分時(shí)系統(tǒng)、實(shí)時(shí)操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)、分布式操作系統(tǒng)、并行操作系統(tǒng)、嵌入式操作系統(tǒng)、個(gè)人計(jì)算機(jī)操作系統(tǒng)。,(1)批處理系統(tǒng),批處理系統(tǒng)(batch prodessing system)產(chǎn)生于計(jì)算機(jī)發(fā)展的早期,它把多個(gè)作業(yè)排列成一個(gè)作業(yè)隊(duì)列,然后成批的執(zhí)行,提高CPU的利用率,但用戶的作業(yè)被計(jì)算機(jī)執(zhí)行期間,用戶不能和計(jì)算機(jī)交互,用戶一旦將程序提交系統(tǒng),就失去了對(duì)程序的控制。直到作業(yè)運(yùn)行完成,才能根據(jù)輸出的結(jié)果分析程序的正確性,并適應(yīng)修改下次再運(yùn)行。該系統(tǒng)一般運(yùn)行于大型計(jì)算機(jī)系統(tǒng)中。,(2)分時(shí)系統(tǒng),分時(shí)系統(tǒng)(time-sharing system)的產(chǎn)生是為了解決批處理系統(tǒng)的缺點(diǎn),引進(jìn)“多道程序”概念,把多個(gè)作業(yè)裝入存儲(chǔ)器,將CPU的時(shí)間劃分成若干個(gè)片段,稱為時(shí)間片。操作系統(tǒng)以時(shí)間片為單位,輪流為每個(gè)終端用戶服務(wù)。每個(gè)用戶輪流使用一個(gè)時(shí)間片而使每個(gè)用戶并不感到有別的用戶存在。,(3)實(shí)時(shí)操作系統(tǒng),實(shí)時(shí)操作系統(tǒng)(real time operating system)是指當(dāng)外界事件或數(shù)據(jù)產(chǎn)生時(shí),能夠接受并以足夠快的速度予以處理,其處理的結(jié)果又能在規(guī)定的時(shí)間之內(nèi)來控制生產(chǎn)過程或?qū)μ幚硐到y(tǒng)作出快速響應(yīng),并控制所有實(shí)時(shí)任務(wù)協(xié)調(diào)一致運(yùn)行的操作系統(tǒng)。因而,提供及時(shí)響應(yīng)和高可靠性是其主要特點(diǎn)。實(shí)時(shí)操作系統(tǒng)有硬實(shí)時(shí)和軟實(shí)時(shí)之分,硬實(shí)時(shí)要求在規(guī)定的時(shí)間內(nèi)必須完成操作,這是在操作系統(tǒng)設(shè)計(jì)時(shí)保證的;軟實(shí)時(shí)則只要按照任務(wù)的優(yōu)先級(jí),盡可能快地完成操作即可。,(4)網(wǎng)絡(luò)操作系統(tǒng),網(wǎng)絡(luò)操作系統(tǒng)(network operating system)是基于網(wǎng)絡(luò)的操作系統(tǒng)。是為了管理網(wǎng)絡(luò)中的共享資源,實(shí)現(xiàn)用戶通信以及方便用戶使用網(wǎng)絡(luò),因而網(wǎng)絡(luò)操作系統(tǒng)是作為網(wǎng)絡(luò)用戶與網(wǎng)絡(luò)系統(tǒng)之間的接口。 功能 網(wǎng)絡(luò)通信 資源管理 網(wǎng)絡(luò)管理 網(wǎng)絡(luò)服務(wù),(4)網(wǎng)絡(luò)操作系統(tǒng),工作模式(兩種) 客戶機(jī)/服務(wù)器 網(wǎng)絡(luò)中的計(jì)算機(jī)分成兩類,一類作為網(wǎng)絡(luò)控制中心或數(shù)據(jù)中心的服務(wù)器,提供文件打印、通信傳輸、數(shù)據(jù)庫等各種服務(wù)。另一類是本地處理和訪問服務(wù)器的客戶機(jī)。 對(duì)等模式 網(wǎng)絡(luò)中的計(jì)算機(jī)都是對(duì)等的,每一臺(tái)計(jì)算機(jī)即可作為服務(wù)器又可作為客戶機(jī)。 目前常用的網(wǎng)絡(luò)操作系統(tǒng)由UNIX、NetWare、Windows NT等。,(5)分布式操作系統(tǒng),分布式操作系統(tǒng)(distributed software systems)負(fù)責(zé)管理分布式系統(tǒng)資源和控制分布式程序運(yùn)行。它和集中式操作系統(tǒng)的區(qū)別在于資源管理、進(jìn)程通信和系統(tǒng)結(jié)構(gòu)等方面。 分布式操作系統(tǒng)的網(wǎng)絡(luò)中,各計(jì)算機(jī)沒有主次之分,在任意兩臺(tái)計(jì)算機(jī)之間可進(jìn)行信息交換和資源共享。 分布式操作系統(tǒng)與網(wǎng)絡(luò)操作系統(tǒng)的本質(zhì)區(qū)別在于分布式操作系統(tǒng)能使系統(tǒng)中若干互連的計(jì)算機(jī)可以互相協(xié)調(diào)工作,共同完成一項(xiàng)任務(wù)。,(6)并行操作系統(tǒng),并行處理技術(shù)包括并行結(jié)構(gòu)、并行算法、并行操作系統(tǒng)、并行語言及其編譯系統(tǒng)。 并行處理方式有多處理機(jī)體系結(jié)構(gòu)、大規(guī)模并行處理系統(tǒng)、工作站群(包括工作站機(jī)群系統(tǒng)、網(wǎng)絡(luò)工作站)。,(7)嵌入式操作系統(tǒng),嵌入式操作系統(tǒng)(embedded Operating System )是一種支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件。 嵌入式系統(tǒng)主要由四個(gè)部分:嵌入式微處理器、外部硬件設(shè)備、嵌入式操作系統(tǒng)和用戶的應(yīng)用程序(由于多數(shù)嵌入式設(shè)備的應(yīng)用程序和操作系統(tǒng)都是緊密結(jié)合的,在這里我們對(duì)其不加區(qū)分,這也是嵌入式系統(tǒng)和Windows系統(tǒng)的最大區(qū)別)。,(8)個(gè)人計(jì)算機(jī)操作系統(tǒng),個(gè)人計(jì)算機(jī)操作系統(tǒng)(personal computer operating system)是前面所介紹的操作系統(tǒng)技術(shù)的選擇性組合,它的進(jìn)程調(diào)度、多任務(wù)切換、多線程技術(shù)、網(wǎng)絡(luò)功能等都是沿用了操作系統(tǒng)技術(shù)的發(fā)展而形成的。 主要特點(diǎn):支持單個(gè)用戶使用、采用圖形界面的人機(jī)交互方式、易學(xué)易用、支持網(wǎng)絡(luò)、多媒體和娛樂功能。,2.1.2 典型操作系統(tǒng)介紹,1、DOS操作系統(tǒng) DOS是19811995年的個(gè)人電腦上使用的一種主要的操作系統(tǒng)。由于早期的DOS系統(tǒng)是由微軟公司為IBM的個(gè)人電腦(Personal Computer)開發(fā)的,故而稱之為PC-DOS,又以其公司命名為MS-DOS 。字符界面的DOS系統(tǒng)已被Windows系統(tǒng)替代。,2.1.2 典型操作系統(tǒng)介紹,2、Windows系統(tǒng) Windows是Microsoft公司在1985年11月發(fā)布的第一代窗口式多任務(wù)系統(tǒng),它使PC機(jī)開始進(jìn)入了所謂的圖形用戶界面(GUI:Graphic User Interface)時(shí)代。從1995年開始,取代DOS在微機(jī)操作系統(tǒng)領(lǐng)域的地位成為無可爭(zhēng)辯的霸主。,3、OS/2系統(tǒng) 1987年IBM公司在激烈的市場(chǎng)競(jìng)爭(zhēng)中推出了PS/2(Personal System/2)個(gè)人電腦。PS/2系列電腦大幅度突破了現(xiàn)行PC機(jī)的體系,采用了與其它總線互不兼容的微通道總線MCA,并自行設(shè)計(jì)了該系統(tǒng)約80%的零部件,以防止其它公司仿制。OS/2系統(tǒng)正是為PS/2系列機(jī)開發(fā)的新型多任務(wù)操作系統(tǒng)。OS/2克服了DOS系統(tǒng)640KB內(nèi)存的限制,具有圖形界面、支持多任務(wù)的32位操作系統(tǒng)。OS/2的整體水平超過當(dāng)時(shí)的Windows 3.X,但因“開放性”差,導(dǎo)致缺乏大量的應(yīng)用軟件的支持而失敗。,2.1.2 典型操作系統(tǒng)介紹,4、MAC系統(tǒng) MAC系統(tǒng)是蘋果機(jī)專用系統(tǒng),在普通pc上無法安裝的,只能安裝在蘋果電腦上。其操作習(xí)慣與Windows有很大的不同。界面漂亮,處理圖像具有優(yōu)勢(shì)。,2.1.2 典型操作系統(tǒng)介紹,5、Unix系統(tǒng) Unix最初在小型計(jì)算機(jī)上開發(fā)的,后來不斷向微型機(jī)、大、中型機(jī)和多處理機(jī)系統(tǒng)和網(wǎng)絡(luò)領(lǐng)域滲透,并獲得巨大成功。 Unix在技術(shù)上的成熟度以及穩(wěn)定性、可靠性和安全性等方面性能非常好,目前仍是唯一能在從巨型計(jì)算機(jī)到微型計(jì)算機(jī)的各種硬件平臺(tái)上運(yùn)行的多用戶、多任務(wù)網(wǎng)絡(luò)操作系統(tǒng)。 Unix系統(tǒng)是1969年問世的,由美國(guó)電報(bào)電話公司(AT&T)的貝爾實(shí)驗(yàn)室研制。并于1973年用C語言重寫了UNIX。用C語言編寫的UNIX代碼簡(jiǎn)潔緊湊,易移植,易讀,易修改,為此后UNIX的發(fā)展奠定了堅(jiān)實(shí)基礎(chǔ)。,2.1.2 典型操作系統(tǒng)介紹,6、Linux系統(tǒng) Linux最初由芬蘭人李納斯托瓦茲 (Linus Torvalds)開發(fā),其源程序在Internet網(wǎng)上公開發(fā)布。Linux與其他操作系統(tǒng)的區(qū)別在于Linux是一種開放、免費(fèi)的操作系統(tǒng),而其他操作系統(tǒng)都是封閉的系統(tǒng),需要有償使用。 缺憾:入門難度高,需要較高的計(jì)算機(jī)專業(yè)知識(shí)。,2.1.2 典型操作系統(tǒng)介紹,1、Windows 壟斷地位的形成因素 微軟開發(fā)出來的Windows完全兼容IBM的兼容機(jī)結(jié)構(gòu),PC制造業(yè)的統(tǒng)一化造成了成本下降,廉價(jià)的PC加上便宜的Windows操作系統(tǒng),銷量巨大,采用NT內(nèi)核改良Windows操作系統(tǒng),系統(tǒng)更加穩(wěn)定,操作界面更加漂亮,操作也變得簡(jiǎn)單,容易上手,造就了Windows的壟斷地位。,2.1.3 Windows 操作系統(tǒng),微軟Windows操作系統(tǒng),特點(diǎn): 提供了多任務(wù)處理能力 在個(gè)人計(jì)算機(jī)上廣泛使用 采用圖形用戶界面,簡(jiǎn)化計(jì)算機(jī)操作 版本的演變:,2003,Win server 2003,2、Windows Vista簡(jiǎn)介 缺點(diǎn): 對(duì)硬件配置要求過高 對(duì)各種軟件兼容性差 沒有令人特別激動(dòng)的新特性 優(yōu)點(diǎn):界面華麗。 普及率不高,將被Windows 7 取代。,2.1.3 Windows 操作系統(tǒng),總結(jié): 唯美派的追求:蘋果Mac 技術(shù)狂的最愛: Linux 實(shí)用流的選擇:Windows,Vista,程序設(shè)計(jì)語言的成分,程序設(shè)計(jì)語言的要素,字符集(大多使用ASCII字符集) 詞匯: 保留詞 運(yùn)算符 分隔符 標(biāo)識(shí)符 語法:詞法和句法 語義:,程序設(shè)計(jì)語言的4種基本成分,數(shù)據(jù)成分: 用于描述程序所涉及的對(duì)象數(shù)據(jù) 運(yùn)算成分: 用以描述程序中所包含的運(yùn)算(算術(shù)運(yùn)算、邏輯運(yùn)算、字符串運(yùn)算等) 控制成分: 用以控制程序中所含語句的執(zhí)行順序 傳輸成分: 用以描述程序中的數(shù)據(jù)傳輸操作,程序語言中的數(shù)據(jù)成分,數(shù)據(jù)是客觀事物在計(jì)算機(jī)內(nèi)的(格式化)表示,是程序所操作和處理的對(duì)象 程序中的數(shù)據(jù)通常應(yīng)該先說明、后使用 數(shù)據(jù)說明的內(nèi)容包括: 變量還是常量 它們的標(biāo)識(shí)符(符號(hào)表示) 它們的數(shù)據(jù)類型 ,什么是數(shù)據(jù)類型(data type)?,數(shù)據(jù)類型:用于刻畫數(shù)據(jù)的特性數(shù)據(jù)的取值范圍和允許對(duì)它進(jìn)行哪些操作 C 語言通常支持下列基本數(shù)據(jù)類型:,(基本數(shù)據(jù)類型是大部分CPU能直接支持的數(shù)據(jù)類型,也稱為內(nèi)部類型,是不可分解的),復(fù)合數(shù)據(jù)類型,通過類型構(gòu)造符把1個(gè)或多個(gè)更簡(jiǎn)單的類型復(fù)合而成的數(shù)據(jù)類型 常見的復(fù)合數(shù)據(jù)類型有: 數(shù)組(含:字符數(shù)組字符串) 結(jié)構(gòu)(記錄) 指針 集合 枚舉 聯(lián)合(變體記錄) 程序員定義的其它數(shù)據(jù)類型(定制類型) 數(shù)據(jù)類型的概念在各種程序設(shè)計(jì)語言中幾乎都有,目的是實(shí)現(xiàn)信息的隱蔽,將程序員不必了解的細(xì)節(jié)都封裝在數(shù)據(jù)類型中 例如使用浮點(diǎn)數(shù)類型時(shí),可不必了解浮點(diǎn)數(shù)在CPU中如何表示,如何完成運(yùn)算,只需了解其數(shù)學(xué)特性即可,算術(shù)運(yùn)算符:+ - * / % + - 關(guān)系運(yùn)算符: = != 邏輯運(yùn)算符:! & | 位運(yùn)算符 : | & 賦值運(yùn)算符:= 及其擴(kuò)展 條件運(yùn)算符:?: 逗號(hào)運(yùn)算符:, 指針運(yùn)算符:* & 求字節(jié)數(shù) :sizeof 強(qiáng)制類型轉(zhuǎn)換:(類型) 分量運(yùn)算符:. - 下標(biāo)運(yùn)算符: 其它 :( ) -,運(yùn)算成分:運(yùn)算符和表達(dá)式,程序語言中的控制成分,控制成分用來提供一種基本框架,在此基本框架的支持下,將數(shù)據(jù)和對(duì)數(shù)據(jù)的運(yùn)算組合成程序 三種控制結(jié)構(gòu):,例:C語言的9種控制語句,If ( P ) A ; else B 實(shí)現(xiàn)條件選擇結(jié)構(gòu) for ( P1;P2;P3 ) A 實(shí)現(xiàn)重復(fù)結(jié)構(gòu) while ( P ) A 實(shí)現(xiàn)重復(fù)結(jié)構(gòu) do A while ( P ) 實(shí)現(xiàn)重復(fù)結(jié)構(gòu) switch 實(shí)現(xiàn)條件選擇結(jié)構(gòu) goto 無條件選擇結(jié)構(gòu) return 無條件選擇結(jié)構(gòu) continue break,程序設(shè)計(jì)語言處理系統(tǒng),程序設(shè)計(jì)語言的翻譯程序,把甲語言編寫的程序翻譯為等價(jià)的乙語言編寫的程序。其中甲語言程序稱為源程序,乙語言程序稱為目標(biāo)程序,常用的有下列幾種:,編譯程序與解釋程序的區(qū)別,解釋:解釋器直接解釋并且執(zhí)行源語言程序,不產(chǎn)生目標(biāo)程序(相當(dāng)于“口譯”) 編譯:把源程序編譯為機(jī)器語言目標(biāo)程序后,再由計(jì)算機(jī)運(yùn)行(相當(dāng)于“筆譯”),BASIC、Visual Basic、VBScript、Java、JavaScript等都是解釋執(zhí)行的語言,C、C+等都是需要編譯的語言,編譯程序的處理過程,算法和數(shù)據(jù)結(jié)構(gòu),1 算法 2 數(shù)據(jù)結(jié)構(gòu),計(jì)算機(jī)求解問題的步驟,(1) 確定并理解問題; (2) 尋找解決問題的方法與步驟,并將其表示成算法(Algorithm) ; (3) 使用某種程序設(shè)計(jì)語言描述該算法(編程), 并進(jìn)行調(diào)試; (4) 運(yùn)行程序,獲得問題的解答; (5) 進(jìn)行評(píng)估,改進(jìn)算法和程序,1. 什么是算法?,算法是解決問題的方法與步驟,例:有三個(gè)硬幣,其中一個(gè)是偽造的,另兩個(gè)是真的,偽幣與真幣重量略有不同?,F(xiàn)在提供一座天平,如何找出偽幣呢? 分析: 方法明確而有序 按提供的條件進(jìn)行操作 任何人均可仿照進(jìn)行(共享智能),關(guān)于算法的三方面問題,如何確定算法(算法設(shè)計(jì))? 如何表示算法(算法表示)? 如何使算法更有效(算法分析)?,2. 算法的表示,算法的表示方法,文字說明 流程圖表示 用N-S盒圖表示算法 用PAD圖描述算法 偽代碼(一種介于自然語言和程序設(shè)計(jì)語言之間的文字和符號(hào)表達(dá)工具),自然語言描述,“比較與的重量,若,則是偽造的;否則再比較與的重量,若,則是偽造的;否則是偽造的?!?缺點(diǎn): 容易產(chǎn)生歧義,很難 “精確”地進(jìn)行表達(dá) 敘述冗長(zhǎng),很難清楚地表達(dá)算法的邏輯流程,算法的流程圖表示,流程圖由結(jié)點(diǎn)和有向邊構(gòu)成,它描述了算法所執(zhí)行操作的順序及執(zhí)行操作的條件 流程圖符號(hào) :,比文字描述簡(jiǎn)明,但當(dāng)算法比較復(fù)雜時(shí),理解困難,容易產(chǎn)生錯(cuò)誤,求最大公約數(shù)的偽代碼表示,算法3:輾轉(zhuǎn)相除法求最大公約數(shù) BEGIN input m,n; /*輸入正整數(shù)m和n*/ do rm mod n; m n; n r; while r0; print m; /*輸出最大公約數(shù)*/ END,3. 算法的分析,算法分析的基本內(nèi)容,正確性:給定有效輸入后,經(jīng)過有限時(shí)間的計(jì)算,產(chǎn)生正確的輸出結(jié)果 簡(jiǎn)單性 算法是否容易理解,是否容易驗(yàn)證其正確性,程序是否容易調(diào)試 簡(jiǎn)單的算法效率不一定高,要在保證一定效率的前提下力求算法簡(jiǎn)單 時(shí)間復(fù)雜性(Time Complexity) : 當(dāng)問題的規(guī)模n充分大時(shí),運(yùn)行該算法所需要的時(shí)間的數(shù)量級(jí)表示 空間復(fù)雜性(Space Complexity) : 除原始數(shù)據(jù)之外,額外占用的存儲(chǔ)空間的大小,算法是計(jì)算機(jī)軟件的靈魂,計(jì)算機(jī)的通用性是因?yàn)樗苓\(yùn)行各種各樣的程序,而程序之所以能解決問題,是因?yàn)樗w現(xiàn)了正確的算法 算法所解決的是一類問題而不是一個(gè)特定的問題,例如 排序(sort) 可以是表格內(nèi)容的排序,也可以是文件夾中文件的排序,可以按數(shù)字或文字排序,也可以按日期排序,等等 查找(search), 可以在文檔中查找某個(gè)單詞或在硬盤中查找某個(gè)文件,也可在Web上查找某個(gè)網(wǎng)頁,等等 開發(fā)計(jì)算機(jī)應(yīng)用的核心是:根據(jù)實(shí)際問題給出解題的算法,然后再將該算法在計(jì)算機(jī)上實(shí)現(xiàn)(即開發(fā)成為軟件),計(jì)算機(jī)算法的4個(gè)特點(diǎn),目的:完成某個(gè)特定的信息處理任務(wù) 必須滿足的性質(zhì): 確定性:算法中每一步操作的含義必須清楚明確,無二義性 能行性: 算法中有待實(shí)現(xiàn)的操作都是計(jì)算機(jī)可執(zhí)行的,即必須在計(jì)算機(jī)的能力范圍之內(nèi),且在有限時(shí)間內(nèi)能夠完成 有窮性: 算法在執(zhí)行了有限步操作后必須結(jié)束 算法結(jié)束后至少產(chǎn)生一個(gè)輸出(包括參量或狀態(tài)的變化),數(shù)據(jù)結(jié)構(gòu),算法(程序)的組成,算法(程序) 由2個(gè)部分組成: 進(jìn)行的操作 所涉及的操作對(duì)象(數(shù)據(jù)),什么是數(shù)據(jù)結(jié)構(gòu)?,數(shù)據(jù)結(jié)構(gòu) 研究如何在計(jì)算機(jī)中表示被處理的對(duì)象及對(duì)象之間的關(guān)系,即如何組織數(shù)據(jù)。例如: 選擇排序中,未排序整數(shù)和已排序整數(shù)如何表示? 排序算法中,排序的對(duì)象若不是整數(shù)而是姓名如何表示?是文件夾中的文件名又如何表示?是表格中的“行”又如何表示? Word文檔中插入的表格和圖片如何表示? Windows操作系統(tǒng)中菜單如何表示?對(duì)話框如何表示?窗口如何表示? 計(jì)算機(jī)下棋時(shí),棋盤和棋局如何表示? 精心設(shè)計(jì)的數(shù)據(jù)結(jié)構(gòu)可使算法獲得更高的時(shí)間效率或空間效率,數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,1 數(shù)據(jù)的抽象(邏輯)結(jié)構(gòu),即數(shù)據(jù)結(jié)構(gòu)中包括哪些元素,相互之間有什么關(guān)系等。例如:,2 數(shù)據(jù)的物理(存儲(chǔ))結(jié)構(gòu),即數(shù)據(jù)的抽象結(jié)構(gòu)如何在實(shí)際的存儲(chǔ)器中予以實(shí)現(xiàn),數(shù)據(jù)元素如何表示,相互關(guān)系如何表示等,3 定義在數(shù)據(jù)結(jié)構(gòu)上的一組運(yùn)算(操作)及其實(shí)現(xiàn)方法,2. 線性數(shù)據(jù)結(jié)構(gòu),舉例:線性表(Liner-List),定義:若干個(gè)相同類型的數(shù)據(jù)元素組成的一個(gè)有限序列,其中每個(gè)數(shù)據(jù)元素可由多個(gè)數(shù)據(jù)項(xiàng)組成。表中有且僅有一個(gè)開始元素和一個(gè)結(jié)束元素,且所有元素都最多只有一個(gè)直接前趨和一個(gè)直接后繼 例:考生成績(jī)登記表(table),數(shù)據(jù)元素已經(jīng)排了序的線性表稱為有序線性表,簡(jiǎn)稱有序表,每個(gè)數(shù)據(jù)元素包含3個(gè)數(shù)據(jù)項(xiàng):準(zhǔn)考證號(hào)、姓名、總分,線性表的運(yùn)算(操作),增加1個(gè)新的數(shù)據(jù)元素 刪除1個(gè)指定數(shù)據(jù)元素 查找指定的數(shù)據(jù)元素 最高分考生 最低分考生 將表中的數(shù)據(jù)元素排序 對(duì)表中的數(shù)據(jù)進(jìn)行計(jì)算 計(jì)算平均分 ,數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)存儲(chǔ)結(jié)構(gòu),順序存儲(chǔ)結(jié)構(gòu): 借助數(shù)據(jù)元素在存儲(chǔ)器中的相對(duì)位置來表示數(shù)據(jù)元素之間的邏輯關(guān)系 鏈接表存儲(chǔ)結(jié)構(gòu): 利用地址指針來表示元素之間的邏輯關(guān)系,例:線性表的實(shí)現(xiàn)方法之1,使用數(shù)組實(shí)現(xiàn),在內(nèi)存中順序存放元素:,如果要在表中加一個(gè)姓名:馬 明,結(jié)果為:,分析: 尋找指定的數(shù)據(jù)元素很容易 插入元素或刪除元素很不方便,內(nèi)存地址,線性表的實(shí)現(xiàn)方法之2,使用鏈接表(linked list)實(shí)現(xiàn): 數(shù)據(jù)元素在內(nèi)存中可不按順序存放,它們之間的順序用“指針”來表示 指針實(shí)際上就是后繼數(shù)據(jù)元素的地址,演示,2種實(shí)現(xiàn)方法的對(duì)比: 數(shù)組實(shí)現(xiàn)的空間開銷少;存取指定元素的速度比較塊 鏈表實(shí)現(xiàn)時(shí)插入/刪除指定元素的速度快,表的長(zhǎng)度不受限制,3. 非線性數(shù)據(jù)結(jié)構(gòu),樹(Tree),“樹”是一種與線性表不同的數(shù)據(jù)結(jié)構(gòu),在樹中各數(shù)據(jù)元素之間的邏輯關(guān)系具有層次性,樹的數(shù)組實(shí)現(xiàn),說明: 每個(gè)數(shù)組元素有2個(gè)數(shù)據(jù)項(xiàng):一項(xiàng)是樹的節(jié)點(diǎn)的數(shù)據(jù)元素,另一項(xiàng)是該節(jié)點(diǎn)的父節(jié)點(diǎn)所在的數(shù)組元素下標(biāo),樹的鏈表實(shí)現(xiàn),樹的應(yīng)用舉例: 人-機(jī)對(duì)弈時(shí)棋局變化的數(shù)據(jù)結(jié)構(gòu),X,X,實(shí)驗(yàn)操作,1、Word各細(xì)化知識(shí)點(diǎn) (1)頁面設(shè)置:紙型(A4,B5,16開),頁邊距(上下,左右),每頁多少行,每行多少字 例:將頁面設(shè)置為:A4紙,上、下頁邊距為4厘米,左、右頁邊距為3.5厘米,每頁38行,每行35個(gè)字符。 (2)加標(biāo)題:輸入文字,設(shè)置格式(字體(宋體,隸書,楷體_GB2312,黑體,華文彩云),字號(hào)(小四,二號(hào),一號(hào)),字型,字符縮放(100%,150%,200%),字體顏色(紅,綠,藍(lán)) 例:參考樣張,給文章加標(biāo)題“狗體內(nèi)突變基因有望治療人眼失明”,并將標(biāo)題設(shè)置為黑體、二號(hào)字,字符縮放為100,居中顯示。 (3)段落:段前段后間距,行距,首行縮進(jìn),懸掛縮進(jìn),首字下沉(下沉文字距正文0.3厘米),對(duì)齊方式(左對(duì)齊,右對(duì)齊,居中對(duì)齊),項(xiàng)目符號(hào)和編號(hào) 例:將正文中小標(biāo)題文字“眼睛疾病”、和“基因變異”設(shè)置為藍(lán)色、“七彩霓虹”動(dòng)態(tài)效果,并加上實(shí)心圓圈的項(xiàng)目符號(hào)。 例:設(shè)置正文第一段首字下沉2行,距正文1厘米,字體為楷體、紅色,其余段落均設(shè)置為首行縮進(jìn)2個(gè)字符(不包括有項(xiàng)目符號(hào)的段落),實(shí)驗(yàn)操作,1、Word各細(xì)化知識(shí)點(diǎn) (4)頁眉頁腳:奇偶頁不同,自動(dòng)圖文集(第X頁 共Y頁),頁眉頁腳文字格式 例:設(shè)置奇數(shù)頁頁眉為“突變基因”、偶數(shù)頁頁眉為“眼睛疾病”,所有頁的頁腳均為自動(dòng)圖文集“第X頁 共Y頁”,居中顯示; (5)查找替換:設(shè)置文字內(nèi)容,格式,效果 例:將正文中所有“狗”替換為“Dog”,并設(shè)置字體為楷體,小四號(hào)字,褐色。 (6)段落邊框:樣式(方框、陰影),線型(實(shí)線,雙實(shí)線,單波浪線),顏色(紅,綠,藍(lán)),寬度(0.75磅,1.5磅,3磅) 例:給正文第二段加上1.5磅帶陰影的綠色邊框,填充淺黃色底紋。 (7)文字邊框:樣式(方框、陰影),線型(實(shí)線,雙實(shí)線,單波浪線),顏色(紅,綠,藍(lán)),寬度(0.75磅,1.5磅,3磅) (8)頁面邊框:樣式(方框、陰影),線型(實(shí)線,雙實(shí)線,單波浪線),顏色(紅,綠,藍(lán)),寬度(0.75磅,1.5磅,3磅),藝術(shù)型(第一行樣式) 例:設(shè)置頁面邊框?yàn)楹>G色單波浪線,寬度為1.5磅。,實(shí)驗(yàn)操作,1、Word各細(xì)化知識(shí)點(diǎn) (4)頁眉頁腳:奇偶頁不同,自動(dòng)圖文集(第X頁 共Y頁),頁眉頁腳文字格式 例:設(shè)置奇數(shù)頁頁眉為“突變基因”、偶數(shù)頁頁眉為“眼睛疾病”,所有頁的頁腳均為自動(dòng)圖文集“第X頁 共Y頁”,居中顯示; (5)查找替換:設(shè)置文字內(nèi)容,格式,效果 例:將正文中所有“狗”替換為“Dog”,并設(shè)置字體為楷體,小四號(hào)字,褐色。 (6)段落邊框:樣式(方框、陰影),線型(實(shí)線,雙實(shí)線,單波浪線),顏色(紅,綠,藍(lán)),寬度(0.75磅,1.5磅,3磅) 例:給正文第二段加上1.5磅帶陰影的綠色邊框,填充淺黃色底紋。 (7)文字邊框:樣式(方框、陰影),線型(實(shí)線,雙實(shí)線,單波浪線),顏色(紅,綠,藍(lán)),寬度(0.75磅,1.5磅,3磅) (8)頁面邊框:樣式(方框、陰影),線型(實(shí)線,雙實(shí)線,單波浪線),顏色(紅,綠,藍(lán)),寬度(0.75磅,1.5磅,3磅),藝術(shù)型(第一行樣式) 例:設(shè)置頁面邊框?yàn)楹>G色單波浪線,寬度為1.5磅。,實(shí)驗(yàn)操作,1、Word各細(xì)化知識(shí)點(diǎn) (9)底紋:填充顏色(灰色-25%,淺黃,淡藍(lán)色),圖案的式樣(5%,15%,25%)、顏色(淺黃,黃色,淡藍(lán)色),應(yīng)用范圍(文字,段落) (10)段落分欄(兩欄,三欄),加分隔線 例:將正文最后一段,分為等寬兩欄,欄間加分隔線。 (11)藝術(shù)字:插入位置,藝術(shù)字樣式(第二行第二列,第三行第四列,第五行第四列),形狀(前遠(yuǎn)后近,兩端近),環(huán)繞方式(緊密型,四周型),藝術(shù)字格式(字體(宋體,隸書,楷體,黑體,華文彩云),字號(hào)(40號(hào),36號(hào),32號(hào)) 例:參考樣張,在正文倒數(shù)第二段插入藝術(shù)字“基因突變研究”,采用第三行第一列式樣,設(shè)置其字體為:黑體、36號(hào)字,環(huán)繞方式為緊密型,居中對(duì)齊。,實(shí)驗(yàn)操作,1、Word各細(xì)化知識(shí)點(diǎn) (12)自選圖形:插入位置,自選圖形樣式(前凸帶形,橢圓形標(biāo)注,云形標(biāo)注),插入文字內(nèi)容,自選圖形格式(填充顏色(灰色-25%,淺黃,淡藍(lán)色),線條顏色(紅,綠,藍(lán)),虛實(shí)(實(shí)線,圓點(diǎn),短劃線),線型(0.75磅,1.5磅,3磅),環(huán)繞方式(緊密型,四周型),文字格式(字體(宋體,隸書,楷體,黑體,華文彩云),字號(hào)(小四,二號(hào),一號(hào)),字體顏色(紅,綠,藍(lán)),字型), 例:在文章的第四段位置插入自選圖形“前凸帶形”,輸入文字“眼睛疾病”,將其字體設(shè)置為楷體、小四號(hào)字、藍(lán)色、加粗,并適當(dāng)調(diào)整圖形大小。 例:設(shè)置自選圖形的邊框?yàn)槎虅澗€1磅藍(lán)色,填充色為淺藍(lán),環(huán)繞方式為四周型。,實(shí)驗(yàn)操作,1、Word各細(xì)化知識(shí)點(diǎn) (13)圖形:插入位置,環(huán)繞方式(緊密型,四周型),圖片大小設(shè)置 例:參考樣張,在正文的倒數(shù)第一段與第二段之間插入圖片“dog.jpg”,并設(shè)置圖片大小為高度5厘米,寬度8厘米,環(huán)繞方式為上下型。 (14)文本框:插入位置,文本內(nèi)容,文本框樣式(橫排、豎排),環(huán)繞方式(緊密型,四周型),文本框格式(填充顏色(灰色-25%,淺黃,淡藍(lán)色),線條顏色(紅,綠,藍(lán)),虛實(shí)(實(shí)線,圓點(diǎn),短劃線),線型(0.75磅,1.5磅,3磅),文本框的大小,文字格式(字體(宋體,隸書,楷體,黑體,華文彩云),字號(hào)(小四,二號(hào),一號(hào)),字體顏色(紅,綠,藍(lán)),字型), 對(duì)齊方式(左對(duì)齊,右對(duì)齊,居中對(duì)齊) 例:參考樣張,在文章第六段適當(dāng)?shù)奈恢貌迦胴Q排文本框,文本內(nèi)容為“奇特基因變異”,設(shè)置其字體格式為黑體、五號(hào)字、紅色。 例:設(shè)置文本框格
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年工業(yè)互聯(lián)網(wǎng)平臺(tái)入侵檢測(cè)系統(tǒng)在物聯(lián)網(wǎng)設(shè)備安全防護(hù)中的安全事件預(yù)警與響應(yīng)
- 商業(yè)模式的創(chuàng)新在教育項(xiàng)目管理中的應(yīng)用
- 醫(yī)療設(shè)備監(jiān)控的數(shù)字化孿生系統(tǒng)研究
- 2025年直播電商主播情感營(yíng)銷策略與用戶粘性研究
- 河南省三門峽市名校2025年數(shù)學(xué)七下期末聯(lián)考試題含解析
- 行政法的基本原則與適用條件試題及答案
- 嬰幼兒配方食品營(yíng)養(yǎng)配方優(yōu)化與嬰幼兒營(yíng)養(yǎng)攝入標(biāo)準(zhǔn)研究報(bào)告
- 康復(fù)醫(yī)療器械市場(chǎng)需求與產(chǎn)品創(chuàng)新2025年關(guān)注新興市場(chǎng)與發(fā)展趨勢(shì)報(bào)告
- 黑龍江省哈爾濱市道外區(qū)2025屆七下數(shù)學(xué)期末聯(lián)考模擬試題含解析
- 2025年金融數(shù)據(jù)治理與資產(chǎn)化在信用評(píng)價(jià)體系中的應(yīng)用報(bào)告
- 2022年巫山縣教師進(jìn)城考試筆試題庫及答案解析
- DB3201-T 1115-2022 《森林防火道路建設(shè)基本要求》-(高清版)
- 初中數(shù)學(xué) 北師大版 七年級(jí)下冊(cè) 變量之間的關(guān)系 用圖象表示的變量間關(guān)系 課件
- 科技項(xiàng)目立項(xiàng)申報(bào)表
- 六年級(jí)下冊(cè)美術(shù)教案-第14課 有趣的光影 丨贛美版
- 人教版小升初數(shù)學(xué)總復(fù)習(xí)知識(shí)點(diǎn)歸納
- 電氣工程竣工驗(yàn)收表格模板
- 藥用動(dòng)物學(xué)習(xí)題
- 食管癌放射治療設(shè)計(jì)課件
- 光伏行業(yè)英文詞匯.doc
- 土地增值稅清算鑒證報(bào)告(稅務(wù)師事務(wù)所專用)
評(píng)論
0/150
提交評(píng)論