計算機軟件技術基礎



《計算機軟件技術基礎》由會員分享,可在線閱讀,更多相關《計算機軟件技術基礎(33頁珍藏版)》請在裝配圖網上搜索。
1、第一章第一章 概概 述述第第 2 頁頁1.1 1.1 計算機系統計算機系統1.2 1.2 軟件技術概述軟件技術概述1.3 1.3 程序設計語言程序設計語言1.4 1.4 數據結構與算法數據結構與算法1.5 1.5 操作系統操作系統1.6 1.6 數據庫技術數據庫技術1.7 1.7 軟件工程軟件工程1.8 1.8 軟件開發方法軟件開發方法第第 3 頁頁什么是計算機?什么是計算機?是接收、處理和提供數據的裝置,是接收、處理和提供數據的裝置,它由它由硬件硬件和和軟件軟件兩大部分組成。兩大部分組成。計算機就是我們平時常用的計算機就是我們平時常用的PCPC機嗎?機嗎?PCPC機只是計算機的一種,計算機家
2、族中還機只是計算機的一種,計算機家族中還有很多其他的成員。有很多其他的成員。第第 4 頁頁第第 5 頁頁t世界上最快的計算機世界上最快的計算機IBMIBM的的Blue Gene/L Blue Gene/L,擁有超過擁有超過100100萬個處理萬個處理器,每個處理器每秒器,每個處理器每秒可運算可運算1010億次。運算億次。運算能力相當于擊敗國際能力相當于擊敗國際象棋世界級棋手的超象棋世界級棋手的超級電腦級電腦“深藍深藍”的的10001000倍。占地達兩個倍。占地達兩個籃球場之大,重達籃球場之大,重達106106噸。噸。第第 6 頁頁t什么是硬件?什么是硬件?硬件是組成計算機系統的所有電子的、機硬
3、件是組成計算機系統的所有電子的、機械的、磁性的、光學的裝置和部件。械的、磁性的、光學的裝置和部件。t配置一臺計算機需要購買哪些東西?配置一臺計算機需要購買哪些東西?t存儲程序式計算機的工作原理存儲程序式計算機的工作原理t5 5大部件:大部件:第第 7 頁頁t發展歷史發展歷史t電子管電子管晶體管晶體管集成電路集成電路t發展規律及特點發展規律及特點t速度慢速度慢速度快速度快t體積大容量小體積大容量小體積小容量大體積小容量大t外設少、簡單外設少、簡單外設繁多、復雜外設繁多、復雜t外設速度發展慢于外設速度發展慢于CPUCPU速度的發展速度的發展t摩爾定律(假設價格保持不變,處理器芯片上摩爾定律(假設價
4、格保持不變,處理器芯片上的晶體管數每的晶體管數每1818個月翻一番)個月翻一番)第第 8 頁頁誕生于誕生于19421942年年1880018800個晶體管個晶體管7000070000個電阻器個電阻器1800018000個電容器個電容器重量重量3030噸噸耗電耗電140140千瓦千瓦/h/h50005000次加法次加法/s/s第第 9 頁頁42,000,00042,000,000個晶體管個晶體管時鐘頻率時鐘頻率1.5GHz1.5GHz運算速度為運算速度為1700 MIPS1700 MIPS(MIPS MIPS 代表代表百萬指令百萬指令集每秒集每秒 )第第 10 頁頁t軟件程序,開發軟件寫程序?軟
5、件程序,開發軟件寫程序?t錯誤!錯誤!t程序只是軟件的一個組成部分t寫程序只是軟件開發的過程中的一個步驟t(可運行的)思想和內容的數字化(可運行的)思想和內容的數字化t思想:算法、規律、辦法(程序)思想:算法、規律、辦法(程序)t內容:圖形、圖像、數據、聲音、文字等(數內容:圖形、圖像、數據、聲音、文字等(數據)據)第第 11 頁頁t所有的硬件都是相似的,軟件則各有各的不同。所有的硬件都是相似的,軟件則各有各的不同。t但是軟件的開發過程存在很多規律和共性,找到但是軟件的開發過程存在很多規律和共性,找到并利用這些規律來幫助和指導軟件的開發,這正并利用這些規律來幫助和指導軟件的開發,這正是各類軟件
6、技術研究的內容。是各類軟件技術研究的內容。操作系統操作系統 、語言、語言編譯器、數據庫管編譯器、數據庫管理系統理系統財務軟件、文字處財務軟件、文字處理軟件、用戶自己理軟件、用戶自己開發的系統等開發的系統等硬硬 件件系統軟件系統軟件應用軟件應用軟件用用 戶戶第第 12 頁頁t軟硬件獨立原理和互動原理軟硬件獨立原理和互動原理t獨立原理:軟件理論上能實現的功能本質上與獨立原理:軟件理論上能實現的功能本質上與硬件是獨立的(不管硬件是何種形式)硬件是獨立的(不管硬件是何種形式)t互動原理:軟件實際能實現的功能受制于硬件,互動原理:軟件實際能實現的功能受制于硬件,硬件發展一個臺階,軟件就能前進一大步硬件發
7、展一個臺階,軟件就能前進一大步t軟硬件等效定律軟硬件等效定律t簡單的硬件簡單的硬件+復雜的軟件復雜的軟件t簡單的軟件簡單的軟件+復雜的硬件復雜的硬件t最終都可以完成同一個任務,不同的只是時間!最終都可以完成同一個任務,不同的只是時間!第第 13 頁頁t硬件是計算機系統的物質基礎;軟件是提高計算硬件是計算機系統的物質基礎;軟件是提高計算機系統效率和方便用戶使用計算機的程序;它們機系統效率和方便用戶使用計算機的程序;它們二者相互依賴、相互促進、共同發展。二者相互依賴、相互促進、共同發展。t好的軟件能充分發揮硬件的性能,提升計算機的好的軟件能充分發揮硬件的性能,提升計算機的價值。價值。t沒有軟件的硬
8、件是僵尸,沒有硬件的軟件是幽靈。沒有軟件的硬件是僵尸,沒有硬件的軟件是幽靈。各類軟件技術的最終目的就是設計出好的軟件,以便最大限度地合理利用和發揮硬件的能力,使計算機系統更好地為用戶服務。第第 14 頁頁 軟件本質上是一種思想,利用計算機來解決某個問軟件本質上是一種思想,利用計算機來解決某個問題的思想!軟件的實現就是將這個思想數字化的過程!題的思想!軟件的實現就是將這個思想數字化的過程!1.理解問題,建立數學模型理解問題,建立數學模型2.設計解題方案設計解題方案3.程序編碼和調試程序編碼和調試4.程序測試和維護程序測試和維護第第 15 頁頁 程序設計語言程序設計語言 編譯技術編譯技術 軟件及實
9、現技術軟件及實現技術 操作系統及實用程序操作系統及實用程序 計算機計算機 數據庫技術數據庫技術 軟件技術軟件技術 軟件工具軟件工具 軟件工程軟件工程 軟件開發方法與技術軟件開發方法與技術 程序設計方法程序設計方法 數據結構和算法數據結構和算法第第 16 頁頁是使計算機完成某種任務的一個有序的命令(指令語句)和數據的集合。程序設計語言發展的三個階段:程序設計語言發展的三個階段:第第 17 頁頁 是機器指令的集合,其代碼由是機器指令的集合,其代碼由0 0、1 1組成的二進制串表示,不需翻譯可直接為組成的二進制串表示,不需翻譯可直接為機器所接受。機器所接受。為符號化的機器語言。它為符號化的機器語言。
10、它用助記用助記符和標識符代替機器指令的操作碼和地址碼。符和標識符代替機器指令的操作碼和地址碼。是一種與具體的計算機指令系統是一種與具體的計算機指令系統無關,獨立于計算機類型,而且表達方式接無關,獨立于計算機類型,而且表達方式接近于自然語言或數學語言,容易被人們掌握近于自然語言或數學語言,容易被人們掌握和書寫的語言。如和書寫的語言。如C C,PascalPascal,javajava。第第 18 頁頁t機器語言機器語言00111110 00001001 00111111B 00111110 00001001 00111111B 或或 3E 09 3FH3E 09 3FHt匯編語言匯編語言MOV
11、AX,X/INC AX/MOV X,AXMOV AX,X/INC AX/MOV X,AXtC C語言語言tx=x+1x=x+1或或tx+x+或或t+x+x第第 19 頁頁t比機器或匯編語言更易于學習比機器或匯編語言更易于學習t程序更易于調試(程序更為短??;記號本身程序更易于調試(程序更為短??;記號本身更自然,因此更多注意力可放在程序邏輯而更自然,因此更多注意力可放在程序邏輯而非語法細節上)非語法細節上)t程序更易于理解程序更易于理解t較好的平臺無關性較好的平臺無關性t上述原因導致解決問題的時間和代價減少上述原因導致解決問題的時間和代價減少第第 20 頁頁t翻譯程序翻譯程序 是把甲種語言程序翻譯
12、為等價的乙種語言程序的程序。其中,甲種語言稱為源語言。乙種語言稱為目標語言。t匯編程序匯編程序 若源語言是匯編語言,目標語言是機器語言,則該翻譯程序被稱為匯編程序。t編譯程序編譯程序 若源語言是高級語言,目標語言是匯編語言或機器語言,則該翻譯程序被稱為。t解釋程序解釋程序 是翻譯程序的另一種形式,它對源程序的語句邊解釋邊執行,不產生目標程序。第第 21 頁頁t程序中往往要處理大量的數據,這些數據采程序中往往要處理大量的數據,這些數據采用什么樣的方式來組織、存放才能最大限度用什么樣的方式來組織、存放才能最大限度地方便應用處理,提高程序效率呢?地方便應用處理,提高程序效率呢?t數據結構研究數據的組
13、織形式,包括數據的數據結構研究數據的組織形式,包括數據的邏輯結構,物理結構以及在該數據結構上所邏輯結構,物理結構以及在該數據結構上所施加的運算。施加的運算。t一類數據結構指的是一類數學模型。一類數據結構指的是一類數學模型。t數據結構是軟件技術基礎的基礎。數據結構是軟件技術基礎的基礎。第第 22 頁頁t算法是對解題方法的精確描述。描述的方式算法是對解題方法的精確描述。描述的方式可以是各種各樣的。如自然語言,流程圖,可以是各種各樣的。如自然語言,流程圖,偽代碼等。偽代碼等。t算法必須具有有窮性,確定性,能行性,輸算法必須具有有窮性,確定性,能行性,輸入和輸出。入和輸出。t一個問題可以有多種解題方法
14、,那么就有多一個問題可以有多種解題方法,那么就有多個對應的算法。算法的優劣由算法的時間復個對應的算法。算法的優劣由算法的時間復雜度和空間復雜度來衡量。雜度和空間復雜度來衡量。第第 23 頁頁t沒有安裝任何軟件的計算機稱為裸機。沒有安裝任何軟件的計算機稱為裸機。t操作系統是直接運行于裸機之上的系統軟件,操作系統是直接運行于裸機之上的系統軟件,它負責對計算機系統的各種軟硬件資源進行它負責對計算機系統的各種軟硬件資源進行管理和分配,為用戶提供友好的計算機使用管理和分配,為用戶提供友好的計算機使用界面和平臺。界面和平臺。t在裸機上配置操作系統之后就構成了操作系在裸機上配置操作系統之后就構成了操作系統虛
15、擬機。統虛擬機。t所有其它的程序都在擴充后的機器上運行。所有其它的程序都在擴充后的機器上運行。第第 24 頁頁應用程序應用程序用戶程序用戶程序操作系統虛擬機操作系統虛擬機操作系統操作系統裸裸 機機第第 25 頁頁t數據庫是一種強大的數據處理技術。數據庫是一種強大的數據處理技術。t它把應用中所有的數據有結構地集中在一起,它把應用中所有的數據有結構地集中在一起,并提供對這些數據的存儲管理、多用戶共享、并提供對這些數據的存儲管理、多用戶共享、操縱、安全保護、完整性控制等強大功能。操縱、安全保護、完整性控制等強大功能。t一個國家的信息化程度是衡量該國國力的重一個國家的信息化程度是衡量該國國力的重要標準
16、,而信息化是以數據庫技術為基礎的。要標準,而信息化是以數據庫技術為基礎的。t現代的銀行、金融、證券、保險等各行業的現代的銀行、金融、證券、保險等各行業的高效運營都依賴于數據庫技術。高效運營都依賴于數據庫技術。第第 26 頁頁t產生背景產生背景t硬件的發展使得計算機的應用領域迅速擴大,硬件的發展使得計算機的應用領域迅速擴大,同時程序的規模和復雜度也急劇增長。同時程序的規模和復雜度也急劇增長。t早期手工作坊式的軟件開發方式因無法適應這早期手工作坊式的軟件開發方式因無法適應這種變化而形成了種變化而形成了“軟件危機軟件危機”。主要表現在:。主要表現在:t開發成本和進度估計不準確,生產效率低。開發成本和
17、進度估計不準確,生產效率低。t用戶對軟件系統不滿意的現象經常發生。用戶對軟件系統不滿意的現象經常發生。t軟件產品的質量不可靠。軟件產品的質量不可靠。t軟件常常是不可維護的。軟件常常是不可維護的。t軟件成本在計算機系統總成本中的比例上升。軟件成本在計算機系統總成本中的比例上升。第第 27 頁頁t軟件工程是指導計算機軟件開發和維護的工程學軟件工程是指導計算機軟件開發和維護的工程學科,采用工科,采用工程的概念、原理、技術和方法來開發程的概念、原理、技術和方法來開發與維護軟件。與維護軟件。t貫穿于這一學科的基本線索是軟件生命期學說,貫穿于這一學科的基本線索是軟件生命期學說,它告訴它告訴軟件研制者和維護
18、者軟件研制者和維護者“什么時候做什么以什么時候做什么以及怎么做及怎么做”。t軟件生命期就象人的壽命一樣,從出生算到死亡,軟件生命期就象人的壽命一樣,從出生算到死亡,從產生開發要求算到軟件報廢為止。包括:軟件從產生開發要求算到軟件報廢為止。包括:軟件計劃、需求分析、軟件開發和軟件維護四個時期。計劃、需求分析、軟件開發和軟件維護四個時期。第第 28 頁頁t軟件計劃軟件計劃t用戶想解決什么問題?(軟件定義)用戶想解決什么問題?(軟件定義)t這個問題能否解決?(可行性分析)這個問題能否解決?(可行性分析)t需求分析需求分析t目標系統應該做成什么樣子?目標系統應該做成什么樣子?t軟件開發軟件開發t怎樣實
19、現目標系統?(軟件設計)怎樣實現目標系統?(軟件設計)t系統的具體實現。(軟件編碼)系統的具體實現。(軟件編碼)t實現系統與是否符合目標?(軟件測試)實現系統與是否符合目標?(軟件測試)t軟件維護軟件維護t如何保持系統正常運行?如何保持系統正常運行?第第 29 頁頁軟件計劃軟件計劃需求分析需求分析軟件設計軟件設計軟件編碼軟件編碼軟件測試軟件測試軟件維護軟件維護變化的需求變化的需求第第 30 頁頁t結構化方法結構化方法t自頂向下,逐步細化自頂向下,逐步細化t模塊化模塊化t結構化程序設計結構化程序設計第第 31 頁頁t由于人類思維能力的限制,如果一次面臨的因素由于人類思維能力的限制,如果一次面臨的
20、因素太多,就無法作出精確的思維。太多,就無法作出精確的思維。t例如:舉辦一個生日例如:舉辦一個生日partypartyt布置場地布置場地t準備食物準備食物t準備節目準備節目t邀請客人邀請客人t自頂向下,逐步細化就是將復雜的問題分解成若干個子問題,直到所有子問題都簡單到能用程序設計語言來表達的方法。第第 32 頁頁t把一個程序按功能分解成若干彼此具有一定獨立性同時也具有一定聯系的組成部分,這些組成部分稱為模塊。每個程序由一個或多個模塊組成。t優點:優點:t降低復雜度:若降低復雜度:若P=P1+P2,則,則C(P)C(P1)+C(P2)t軟件結構清晰軟件結構清晰t容易測試和調試容易測試和調試t提高軟件的可修改性提高軟件的可修改性t方便開發任務的分配方便開發任務的分配第第 33 頁頁t強調使用程序的三種基本控制結構(強調使用程序的三種基本控制結構(順序、順序、選擇和循環選擇和循環),有限制地使用),有限制地使用goto語句。語句。
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新DOC
- 2022年08月內蒙古呼倫貝爾市水利局所屬事業單位引進人才14人名師押題(I)模擬卷300題含答案(3套)
- 2022年01月2022年云南楚雄市中醫醫院招考聘用編外合同制人員23人強化練習卷VIII【3套】帶答案詳解析
- 2022年07月吉林省琿春市事業單位公開招聘178名工作人員(含專項公開招聘高校畢業生)500模擬卷[貳]3套含答案
- 2022年11月寧波市海曙區章水鎮人民政府下屬事業單位公開招考1名事業編制工作人員253名師押題(I)模擬卷300題含答案(3套)
- 2022年01月2022山東聊城市市屬事業單位綜合類崗位“水城優才”優秀青年人才引進39人強化練習卷VIII【3套】帶答案詳解析
- 2022年07月山西省壺關縣公開招考111名大學畢業生到村(社區)工作2模擬卷[貳]3套含答案
- 2022年11月廣西東蘭縣2023年自主公開招聘123名教師403名師押題(I)模擬卷300題含答案(3套)
- 2022年監理施工資料模版
- 2022年營銷大賽獲獎作品
- 2022年新建屠宰場可行性報告
- 2022年無錫軟件運維服務技術方案V12
- 中金豐頤靈活配置混合型證券投資
- 視覺游戲詳解
- 2022年沈陽市夜景照明工程集中控制系統
- 上投摩根管理有限公司
最新PPT
最新RAR
- 火電廠設計全套資料設計cad圖紙電氣cad圖紙
- 抗燃油系統電氣操作箱
- 手持氣吸式采棉機構的設計【7張CAD圖紙+畢業論文+開題報告+任務書+答辯稿+SolidWorks三維圖】
- 三孔連桿CAD零件圖
- 乳化瀝青稀漿混合料粘聚力實驗儀CAD裝配圖
- A0-紅薯磨漿機研磨裝置CAD部裝圖
- 壓力補償灌水器結構CAD總裝配圖
- A0-自動式生姜收獲機CAD總裝配圖
- LD1.0-001-A 履帶腿式移動機器人CAD總裝圖
- 鋁型材拉彎成型機液壓原理圖
- 自走式玉米收獲機液壓原理圖
- 蝸輪減速器箱體鉆3-M10孔的鉆床夾具CAD裝配圖
- 玩具電動車的結構SolidWorks三維圖
- 欠驅動蘋果采摘末端執行器CAD總裝配圖
- CMJ001-A0手持氣吸式采棉機CAD總裝圖