第2章計(jì)算機(jī)系統(tǒng)組成_第1頁
第2章計(jì)算機(jī)系統(tǒng)組成_第2頁
第2章計(jì)算機(jī)系統(tǒng)組成_第3頁
第2章計(jì)算機(jī)系統(tǒng)組成_第4頁
第2章計(jì)算機(jī)系統(tǒng)組成_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第2章計(jì)算機(jī)系統(tǒng)組成大學(xué)計(jì)算機(jī)基礎(chǔ)教學(xué)目標(biāo)教學(xué)目標(biāo)通過學(xué)習(xí),讀者可以了解計(jì)算機(jī)系統(tǒng)的整體架構(gòu),個(gè)人計(jì)算機(jī)的硬件組成,以及CPU、內(nèi)存、外存、主板等硬件的作用,對(duì)存儲(chǔ)器原理和總線結(jié)構(gòu)有一定的認(rèn)識(shí),并且掌握軟件的分類、程序設(shè)計(jì)方法和軟件工程等方面的知識(shí)。教學(xué)重點(diǎn)和難點(diǎn)l 計(jì)算機(jī)系統(tǒng)組成l 主板配置l 存儲(chǔ)器原理l 輸入/輸出設(shè)備l 軟件分類l 程序設(shè)計(jì)方法2.12.1計(jì)算機(jī)硬件系統(tǒng)2.22.2計(jì)算機(jī)軟件系統(tǒng)2.32.3計(jì)算機(jī)性能指標(biāo)和基本配置 完整的計(jì)算機(jī)系統(tǒng)需要硬件(Hardware)和軟件(Software)兩部分。硬件系統(tǒng)是軟件系統(tǒng)運(yùn)行的基礎(chǔ),軟件系統(tǒng)則是人與計(jì)算機(jī)系統(tǒng)進(jìn)行信息交流的媒介。計(jì)

2、算機(jī)系統(tǒng)計(jì)算機(jī)系統(tǒng)硬件硬件軟件軟件兩者缺一不可2.1 計(jì)算機(jī)硬件系統(tǒng)計(jì)算機(jī)硬件系統(tǒng)主機(jī)箱音箱鼠標(biāo)鍵盤顯示器臺(tái)式計(jì)算機(jī)外觀2.1 計(jì)算機(jī)硬件系統(tǒng)計(jì)算機(jī)硬件系統(tǒng)臺(tái)式計(jì)算機(jī)主機(jī)箱內(nèi)部結(jié)構(gòu)各種計(jì)算機(jī)的外觀各種計(jì)算機(jī)的外觀 桌面一體機(jī)智能手機(jī)筆記本式計(jì)算機(jī)平板計(jì)算機(jī)無論計(jì)算機(jī)的外觀如何變化,其內(nèi)部的硬件結(jié)構(gòu)都大同小異,都屬于馮諾依曼體系結(jié)構(gòu)的計(jì)算機(jī),均擁有輸入設(shè)備、控制器、運(yùn)算器、存儲(chǔ)器、輸出設(shè)備五大核心部件。五大核心部件五大核心部件 輸出設(shè)備輸出設(shè)備 輸入設(shè)備輸入設(shè)備 運(yùn)算器運(yùn)算器 控制器控制器 存儲(chǔ)器存儲(chǔ)器程序和數(shù)據(jù)程序和數(shù)據(jù)控制流控制流CS數(shù)據(jù)流數(shù)據(jù)流DS計(jì)算結(jié)果計(jì)算結(jié)果五大核心五大核心部件部件功

3、能功能1、 輸入設(shè)備輸入設(shè)備 Input devices:從計(jì)算機(jī)外部輸入信息從計(jì)算機(jī)外部輸入信息2 、存儲(chǔ)器、存儲(chǔ)器 Memory Unit:存放數(shù)據(jù)、指令等存放數(shù)據(jù)、指令等4 、控制器、控制器 Control Unit (CU): 分析指令,控制指令的執(zhí)行,協(xié)調(diào)其它部件工作分析指令,控制指令的執(zhí)行,協(xié)調(diào)其它部件工作3 、運(yùn)算器、運(yùn)算器 Arithmetic and Logic Unit (ALU): 執(zhí)行算術(shù)、邏輯運(yùn)算執(zhí)行算術(shù)、邏輯運(yùn)算5 、輸出設(shè)備、輸出設(shè)備 Output devices :將加工后的信息輸出將加工后的信息輸出運(yùn)算器和控制器是信息處理的中心部件,所以它們合稱為“中央處理單

4、元”(CPU:Central Processing Unit)。存儲(chǔ)器、運(yùn)算器和控制器在信息處理操作中起主要作用,是計(jì)算機(jī)硬件的主體部分,通常被稱為“主機(jī)”。而輸入(Input)設(shè)備和輸出(Output)設(shè)備統(tǒng)稱為“外部設(shè)備”,簡(jiǎn)稱為外設(shè)或I/O設(shè)備。 個(gè)人計(jì)算機(jī)的硬件組成個(gè)人計(jì)算機(jī)的硬件組成個(gè)人計(jì)算機(jī)的硬件組成個(gè)人計(jì)算機(jī)的硬件組成硬件 主機(jī) 外圍設(shè)備 中央處理器 (CPU) 內(nèi)存儲(chǔ)器 運(yùn)算器 只讀存儲(chǔ)器(ROM) 外存儲(chǔ)器(硬盤、閃存盤、光盤和磁帶機(jī)等) 其他(網(wǎng)卡、調(diào)制解調(diào)器、聲卡、顯卡、視頻卡等) 輸出設(shè)備(顯示器、打印機(jī)、投影儀、繪圖儀、揚(yáng)聲器或音響等) 輸入設(shè)備(鍵盤、鼠標(biāo)、傳聲器、

5、掃描儀、觸摸屏和光筆等) 控制器 隨機(jī)存儲(chǔ)器(RAM) 高速緩沖存儲(chǔ)器(Cache) 0102020203位二進(jìn)制代碼串中的每一個(gè)“0”或“1”稱為“位”或者“比特”(bit),是計(jì)算機(jī)信息表示的最小單位。存儲(chǔ)器(Memory)是計(jì)算機(jī)系統(tǒng)中的記憶設(shè)備。輸入的原始數(shù)據(jù)、計(jì)算機(jī)程序、中間運(yùn)行結(jié)果和最終運(yùn)行結(jié)果都保存在存儲(chǔ)器中。它根據(jù)控制器指定的位置存入和取出信息。存儲(chǔ)器所能容納的數(shù)據(jù)總量稱為存儲(chǔ)容量。字節(jié)8位稱為1字節(jié)(B),記為1 B,為計(jì)算存儲(chǔ)器容量的基本單位。2.1.2 信息存儲(chǔ)原理信息存儲(chǔ)原理存儲(chǔ)單位換算存儲(chǔ)單位換算單 位換 算 結(jié) 果1 B(字節(jié))=8 bit1 KB(千字節(jié))=102

6、4 B=210 B1 MB(兆字節(jié))=1024 KB=10241024 B=220 B1 GB(吉字節(jié))=1024 MB=10241024 KB=102410241024 B=230 B1 TB(太字節(jié))=1024 GB=10241024 MB=102410241024 KB=240 B存儲(chǔ)地址存儲(chǔ)地址存儲(chǔ)器中每個(gè)存儲(chǔ)單元都指定一個(gè)編號(hào),根據(jù)編號(hào)計(jì)算機(jī)就能快速地存取指定存儲(chǔ)單元中的數(shù)據(jù),這個(gè)“編號(hào)”稱為存儲(chǔ)單元的“地址”。此單元存放A此單元存放B此單元存放C此單元存放D此單元存放E通過數(shù)據(jù)總線,可以取出存儲(chǔ)單元中的數(shù)據(jù)通過地址總線,可以定位任意一個(gè)存儲(chǔ)單元存儲(chǔ)器由若干連續(xù)的存儲(chǔ)單元組成,每個(gè)存

7、儲(chǔ)單元都有唯一標(biāo)識(shí)的標(biāo)記地址,可以存儲(chǔ)一個(gè)字節(jié)的數(shù)據(jù)存儲(chǔ)器分類存儲(chǔ)器分類存儲(chǔ)器內(nèi)存RAM(隨機(jī)存儲(chǔ)器)DRAM(內(nèi)存條)SDRAMDDR SDRAMDDR2 SDRAMDDR3 SDRAMSRAMCacheROM(只讀存儲(chǔ)器)外存硬盤光盤U盤各種移動(dòng)設(shè)備內(nèi)嵌式BIOS ROM芯片RAM內(nèi)存條硬盤ROM只讀不寫,不會(huì)因斷電而丟失數(shù)據(jù)。如BIOS就是固化在主板上ROM芯片中的一組程序RAM可讀可寫,斷電后數(shù)據(jù)消失。按照RAM 是否需要周期性充電,可分為動(dòng)態(tài)內(nèi)存(DRAM)和靜態(tài)內(nèi)存(SRAM)兩種。DRAM主要用于大容量?jī)?nèi)存儲(chǔ)器,也就是內(nèi)存條,每條容量一般在512 MB2 GB之間,價(jià)格較低,集成

8、度較高,升級(jí)靈活,存取速度相對(duì)較慢。SRAM在存取速度和穩(wěn)定性上均優(yōu)于DRAM,但是集成度較低,價(jià)格較高,主要用于Cache。Cache主要作用是緩解高速CPU與低速RAM的速度沖突問題。CPU讀取數(shù)據(jù)的先后順序?yàn)榫彺嫫鞲咚倬彺鎯?nèi)存儲(chǔ)器。內(nèi)存儲(chǔ)器特性內(nèi)存儲(chǔ)器特性2.1.4 外存儲(chǔ)器外存儲(chǔ)器硬盤硬盤硬盤全稱為硬盤驅(qū)動(dòng)器,由一個(gè)或者重疊的一組鋁制或玻璃制的盤片組成。這些盤片外覆蓋了鐵磁性材料。絕大多數(shù)硬盤都是固定硬盤,被永久性地密封在硬盤驅(qū)動(dòng)器中。讀/寫磁頭磁頭臂盤片主軸產(chǎn)品標(biāo)簽圖2-9 西部數(shù)據(jù)2 TB硬盤外觀 圖2-10 硬盤內(nèi)部結(jié)構(gòu)2.1.4 外存儲(chǔ)器外存儲(chǔ)器硬盤硬盤硬盤在使用前要先分區(qū),然

9、后對(duì)每個(gè)分區(qū)進(jìn)行格式化之后才能使用。硬盤的每個(gè)盤面都被劃分為數(shù)目相等的磁道,并從外緣的“0”開始編號(hào)。多個(gè)盤面上具有相同編號(hào)的磁道形成一個(gè)圓柱,稱為磁盤的柱面。磁盤的柱面數(shù)與一個(gè)盤面上的磁道數(shù)是相等的。每個(gè)磁道被等分為若干個(gè)弧段,這些弧段便是磁盤的扇區(qū),每個(gè)扇區(qū)可以存放512 B的信息。在老式硬盤每個(gè)磁道的扇區(qū)數(shù)相等,外道的記錄密度要遠(yuǎn)低于內(nèi)道,浪費(fèi)磁盤空間。后來采用等密度結(jié)構(gòu)生產(chǎn)硬盤。外圈磁道的扇區(qū)比內(nèi)圈磁道多,尋址方式也改為線性尋址,即以扇區(qū)為單位進(jìn)行尋址。固態(tài)硬盤固態(tài)硬盤近年,市場(chǎng)上出現(xiàn)了一種運(yùn)行速度較快的新型硬盤固態(tài)硬盤(Solid State Disk),是用固態(tài)電子存儲(chǔ)芯片陣列制成

10、的硬盤,由控制單元和存儲(chǔ)單元組成,存儲(chǔ)介質(zhì)分為FLASH芯片和DRAM芯片兩種。固態(tài)硬盤的接口規(guī)范和定義、功能及使用方法上與普通硬盤完全相同,在產(chǎn)品外形和尺寸上也完全與普通硬盤一致。其芯片的工作溫度范圍很大(-4085),成本較高。目前正在逐漸普及到筆記本式計(jì)算機(jī)和高端PC市場(chǎng)。光驅(qū)和光盤光驅(qū)和光盤光驅(qū)是計(jì)算機(jī)中比較常見的一個(gè)配件,可分為CD-ROM、DVD-ROM、Combo、DVD-RW等。光盤是一種在塑料片上加入一層金屬薄膜,并利用激光來識(shí)別數(shù)據(jù)的存儲(chǔ)設(shè)備。其軌道設(shè)計(jì)不同于一般磁盤的同心圓方式,它是以螺旋紋的方式設(shè)計(jì)的,稱為光道。沿著光道從內(nèi)到外壓制有一連串的凹坑,通過激光的反射來讀出其

11、中存儲(chǔ)的信息,如圖2-14所示。通常CD可容納650700 MB 的數(shù)據(jù),DVD能存儲(chǔ)4.730.0 GB的數(shù)據(jù)。光驅(qū)的主要性能參數(shù)光驅(qū)的主要性能參數(shù)參數(shù)說 明倍速指CD光驅(qū)的讀取速度,以150 KB/s數(shù)據(jù)傳輸率的單倍速為基準(zhǔn),如24倍速CD光驅(qū)的數(shù)據(jù)傳輸率為3 600 KB/s,而DVD光驅(qū)的單倍速則是指1 350KB/s,如8倍速DVD光驅(qū)的數(shù)據(jù)傳輸率為10 800 KB/s,但由于數(shù)據(jù)讀取方式的限制,高倍速光驅(qū)并不能總是運(yùn)行在其標(biāo)稱的速度下,只是在讀取某一位置時(shí)達(dá)到的最大數(shù)據(jù)傳輸率容錯(cuò)性容錯(cuò)性指光驅(qū)的讀盤能力。該指標(biāo)通常與光驅(qū)的速度有關(guān)系,通常速度較慢的光驅(qū)的容錯(cuò)性要優(yōu)于高速產(chǎn)品。對(duì)于

12、40倍速以上的光驅(qū),最好選擇具有人工智能糾錯(cuò)功能的光驅(qū)高速緩存緩存配置高不僅可以提高光驅(qū)的傳輸性能和傳輸效率,而且對(duì)于光驅(qū)的糾錯(cuò)能力也有非常大的幫助。常見的光驅(qū)緩存大小介于256 KB1 MB之間可移動(dòng)存儲(chǔ)設(shè)備可移動(dòng)存儲(chǔ)設(shè)備許多移動(dòng)存儲(chǔ)設(shè)備在計(jì)算機(jī)上都顯示為“可移動(dòng)磁盤”,大多通過USB 接口傳輸數(shù)據(jù),在Windows系統(tǒng)中可即插即用,而且具有高兼容性與跨平臺(tái)的特性。 閃存盤 閃存卡 移動(dòng)硬盤 MP4 CPU簡(jiǎn)介包括控制器與運(yùn)算器兩大模塊。主要的工作就是提取指令,將指令譯碼和執(zhí)行。 CPU有兩個(gè)重要的性能指標(biāo),即字長(zhǎng)和主頻。字長(zhǎng)是計(jì)算機(jī)在單位時(shí)間內(nèi)能一次處理的二進(jìn)制數(shù)的位數(shù)。字長(zhǎng)越長(zhǎng),計(jì)算精度

13、越高,運(yùn)算速度也越快。字長(zhǎng)一般有16位、32位或64位幾種。主頻就是CPU內(nèi)核工作時(shí)的時(shí)鐘頻率,反映了計(jì)算機(jī)的工作速度。主頻越高,計(jì)算機(jī)工作速度越快。CPU主頻=外頻倍頻系數(shù)多核CPU是指在一枚CPU中集成兩個(gè)或多個(gè)完整的計(jì)算引擎(內(nèi)核),可以在處理器內(nèi)部共享緩存,須搭配支持多CPU的操作系統(tǒng)和應(yīng)用程序才能發(fā)揮其性能。中央處理器中央處理器CPUIntel Core 2四核Q94002.1.6 主板主板主板(Mainboard)是計(jì)算機(jī)中最大的一塊集成電路板,安裝在機(jī)箱內(nèi),是計(jì)算機(jī)最基本的也是最重要的部件之一。主板一般為矩形電路板,上面安裝了組成計(jì)算機(jī)的主要電路系統(tǒng),有BIOS芯片、I/O控制芯

14、片、鍵盤和面板控制開關(guān)接口、指示燈插接件、擴(kuò)充插槽、主板及插卡的直流電源供電接插件等元器件。總線結(jié)構(gòu)總線是計(jì)算機(jī)各種功能部件之間傳送信息的公共通信干線,它提供了一種多用途的、公用的通信通道,只要總線相同,主板插件就可以通用。擴(kuò)展插槽接口與主板連接的擴(kuò)展插槽接口主要包括ISA、EISA、VESA、PCI、AGP、PCI Express等幾種。USB接口已成為計(jì)算機(jī)和大量智能設(shè)備必配的接口之一,支持設(shè)備的即插即用和熱插拔功能。USB 1.0傳輸速度1.5 Mbit/s,USB 2.0速度480 Mbit/s,USB 3.0速度可達(dá)5.0 Gbit/s。硬盤接口硬盤接口是硬盤與主機(jī)系統(tǒng)間的連接部件,

15、作用是在硬盤緩存和主機(jī)內(nèi)存之間傳輸數(shù)據(jù)。不同的硬盤接口決定著硬盤與計(jì)算機(jī)之間的連接速度2.1.7 總線和接口總線和接口其他常用接口其他常用接口USB接口IEEE 1394串行接口音頻接口PS/2接口VGA接口DVI接口 2.1.8 輸入設(shè)備輸入設(shè)備 輸入設(shè)備(Input Device)是將數(shù)據(jù)和信息輸入計(jì)算機(jī)主機(jī)的設(shè)備,鍵盤、鼠標(biāo)是最主要的輸入設(shè)備,此外還有掃描儀、數(shù)碼照相機(jī)、數(shù)碼攝像機(jī)、傳聲器、攝像頭、操縱桿、觸摸屏、條形碼閱讀器等。 鍵盤和鼠標(biāo) 掃描儀數(shù)碼照相機(jī) 數(shù)碼攝像機(jī) 攝像頭2.1.9 輸出設(shè)備輸出設(shè)備 輸出設(shè)備(Output Device)顧名思義就是將計(jì)算機(jī)中的數(shù)據(jù)輸出的設(shè)備。常

16、見的輸出設(shè)備有顯示器、打印機(jī)、磁記錄設(shè)備、繪圖儀和音箱等。顯示器根據(jù)制造材料的不同可分為陰極射線管(CRT)顯示器、液晶顯示器(LCD)、發(fā)光二極管(LED)顯示器、等離子顯示器(PDP)等類型。技 術(shù) 指 標(biāo)屏幕尺寸響應(yīng)時(shí)間分辨率刷新頻率色彩位數(shù)目前市面上常用的打印機(jī),主要有針式、噴墨和激光3種2.2 計(jì)算機(jī)軟件系統(tǒng)計(jì)算機(jī)軟件系統(tǒng)軟件與硬件是相輔相成的,沒有軟件,就沒有人機(jī)交互界面,用戶根本無法使用計(jì)算機(jī)。而要讓計(jì)算機(jī)使用更加方便,就需要開發(fā)具有各種功能用途的軟件來豐富計(jì)算機(jī)的功能。軟件是計(jì)算機(jī)系統(tǒng)中重要的、必不可少的組成部分。2.2.1 軟件分類軟件分類 軟 件 系 統(tǒng) 軟 件 應(yīng) 用 軟

17、 件 操 作 系 統(tǒng) 、 語 言 處 理 程 序 支 撐 軟 件 、 系 統(tǒng) 服 務(wù) 程 序 M icrosoft O ffice、 A utoC A D Photoshop、 Flash 其 他 應(yīng) 用 軟 件 2.2.2 指令和指令系統(tǒng)指令和指令系統(tǒng) 指令就是指示計(jì)算機(jī)執(zhí)行某種操作的命令,如加、減、乘、除和邏輯運(yùn)算等。一條指令就是機(jī)器語言的一個(gè)語句,它是一組有意義的二進(jìn)制代碼。由操作碼和操作數(shù)地址碼兩部分構(gòu)成。指令系統(tǒng)是指計(jì)算機(jī)所能執(zhí)行的全部指令的集合。不同計(jì)算機(jī)的指令系統(tǒng)包含的指令種類和數(shù)目也不同,一般均包含算術(shù)運(yùn)算型、邏輯運(yùn)算型、數(shù)據(jù)傳送型、判定和控制型、移位操作型、位(位串)操作型、

18、輸入和輸出型等指令。名 稱功 能 說 明操作碼規(guī)定計(jì)算機(jī)進(jìn)行何種操作,如加、減、乘、除、數(shù)據(jù)傳送等操作數(shù)地址碼指出參與操作的數(shù)據(jù)放在哪里以及操作的結(jié)果保存到哪里表2-10 指令的構(gòu)成2.2.3 程序與計(jì)算機(jī)語言程序與計(jì)算機(jī)語言 程序 程序是指揮計(jì)算機(jī)實(shí)現(xiàn)某一特定功能的一組命令序列,是指令的有序集合,是由程序計(jì)數(shù)器控制的一系列語句和指令程序設(shè)計(jì) 程序設(shè)計(jì)是指設(shè)計(jì)、編制、調(diào)試程序的方法和過程,其內(nèi)容涉及有關(guān)的程序基本概念、編程工具、方法以及方法學(xué)等,是目標(biāo)明確的智力活動(dòng)。計(jì)算機(jī)語言 計(jì)算機(jī)語言指用于人與計(jì)算機(jī)之間通信的語言,是人與計(jì)算機(jī)之間傳遞信息的媒介。計(jì)算機(jī)語言主要分為機(jī)器語言、匯編語言和高級(jí)

19、語言3種。使用匯編語言和高級(jí)語言編寫的程序稱為源程序,而使用機(jī)器語言編寫的程序則稱為目標(biāo)程序。語言處理程序語言處理程序 計(jì)算機(jī)并不能直接接收和執(zhí)行用匯編語言或高級(jí)語言編寫的源程序。源程序在輸入計(jì)算機(jī)時(shí),必須經(jīng)由語言處理程序“翻譯”成機(jī)器語言形式的目標(biāo)程序,才能被計(jì)算機(jī)識(shí)別和執(zhí)行。匯 編 語 言 源 程 序 匯 編 程 序 進(jìn) 行 匯 編 機(jī) 器 語 言 目 標(biāo) 程 序 ( a) 匯 編 程 序 高 級(jí) 語 言 源 程 序 編 譯 程 序 進(jìn) 行 編 譯 機(jī) 器 語 言 目 標(biāo) 程 序 ( b) 編 譯 程 序 高 級(jí) 語 言 源 程 序 解 釋 程 序 解 釋 執(zhí) 行 ( c) 解 釋 程 序

20、 運(yùn) 行 結(jié) 果 計(jì)算機(jī)語言計(jì)算機(jī)語言 機(jī)器語言機(jī)器語言是二進(jìn)制編碼形式的機(jī)器指令及其使用規(guī)則的集合。它是目前計(jì)算機(jī)硬件唯一可以直接識(shí)別和執(zhí)行的語言。如某種計(jì)算機(jī)的指令為10110110 00000000,它表示讓計(jì)算機(jī)進(jìn)行一次加法操作;而指令10110101 00000000則表示進(jìn)行一次減法操作。它們的前8位表示操作碼,而后8位表示地址碼。匯編語言匯編語言是一種符號(hào)語言。例如:LDA x 表示取數(shù)x。每一種處理器都會(huì)有自己專屬的匯編語言語法規(guī)則和編譯器。即使是同一種類型的處理器,也可能擁有不同的匯編語言編譯器。低級(jí)語言包括機(jī)器語言和匯編語言,這兩種語言都是面向機(jī)器的語言高級(jí)語言高級(jí)語言接近

21、人們?nèi)粘J煜さ淖匀徽Z言和數(shù)學(xué)語言,可讀性強(qiáng),編程方便。目前絕大部分的程序員編寫程序時(shí)多使用高級(jí)語言。高級(jí)語言有許多種,使用比較普遍的有C、C+、Pascal、C#、Visual Basic、Delphi、Java、Python、Lisp和Prolog等。程序設(shè)計(jì)語言程序設(shè)計(jì)語言 計(jì)算例子計(jì)算例子s=x+y-z,用,用C語言實(shí)現(xiàn),語言實(shí)現(xiàn),可寫可寫成成:main() /*程序開始*/ int x,y,z; int s; printf(please input x:); /*提示輸入x*/ scanf(%d,x); /*從鍵盤輸入x值*/ printf(please input y:); scan

22、f(%d,y); printf(please input z:); scanf(%d,z); s=x+y-z; /*計(jì)算x+y-z 的結(jié)果值存入s*/ printf(x+y-z=%d,s); /*輸出s*/2.2.4 程序設(shè)計(jì)方法程序設(shè)計(jì)方法 程序設(shè)計(jì)的過程就是分析要解決的實(shí)際問題,得出解決問題的具體方法和步驟,并且用某種計(jì)算機(jī)語言編寫成可執(zhí)行程序的過程。在這個(gè)過程中需要構(gòu)建合適的數(shù)據(jù)結(jié)構(gòu)并設(shè)計(jì)有效的算法,因此有:數(shù)據(jù)結(jié)構(gòu)算法程序設(shè)計(jì)2.2.4 程序設(shè)計(jì)程序設(shè)計(jì)方法兩大類方法兩大類 面向過程在解決問題時(shí)采用功能分解方法,即將一個(gè)系統(tǒng)看作一些功能塊的組合,這些功能塊可以被進(jìn)一步分解,直到參與設(shè)計(jì)

23、和編程的人員可以理解的步驟和過程為止。面向過程的程序設(shè)計(jì)方法只允許全部程序均由順序、分支和循環(huán)3類基本結(jié)構(gòu)構(gòu)成。常用的面向過程程序設(shè)計(jì)的高級(jí)語言主要有C語言、Basic語言、Pascal語言、Fortran語言、COBOL語言、Ada語言等。面向?qū)ο笸ㄟ^面向?qū)ο蟮姆绞剑瑢F(xiàn)實(shí)世界的事物抽象成對(duì)象,現(xiàn)實(shí)世界中的關(guān)系抽象成類、繼承,幫助人們實(shí)現(xiàn)對(duì)現(xiàn)實(shí)世界的抽象與數(shù)字建模。更有利于采用人能理解的方式對(duì)復(fù)雜系統(tǒng)進(jìn)行分析、設(shè)計(jì)與編程。系統(tǒng)可以像搭積木一樣被快速開發(fā)出來。常用面向?qū)ο蟪绦蛟O(shè)計(jì)的高級(jí)語言主要有Java、C+、C# 、Visual Basic、Delphi等。兩種程序設(shè)計(jì)方法對(duì)比兩種程序設(shè)計(jì)方

24、法對(duì)比 面向過程 程序的可重用性差 通訊機(jī)制幾乎空白 數(shù)據(jù)處理范圍較小 程序的數(shù)據(jù)與操作相分離面向?qū)ο?程序不易理解 初學(xué)者入門有困難 程序的依賴性分析有難度兩種方法對(duì)比兩種方法對(duì)比-開發(fā)五子棋游戲開發(fā)五子棋游戲 面向過程 開始游戲 黑子先走 繪制畫面 判斷輸贏 輪到白子 繪制畫面 判斷輸贏 返回步驟2 輸出最后結(jié)果將上述9個(gè)步驟分別用函數(shù)來實(shí)現(xiàn),問題就解決了。面向?qū)ο蠛诎纂p方,這兩方的行為是一模一樣的棋盤系統(tǒng),負(fù)責(zé)繪制畫面規(guī)則系統(tǒng),負(fù)責(zé)判定諸如犯規(guī)、輸贏等第一類對(duì)象(玩家對(duì)象)負(fù)責(zé)接受用戶輸入,并告知第二類對(duì)象(棋盤對(duì)象)棋子布局的變化棋盤對(duì)象接收到棋子的變化就要負(fù)責(zé)在屏幕上面顯示出這種變化

25、利用第三類對(duì)象(規(guī)則系統(tǒng))來對(duì)棋局進(jìn)行判定。面向?qū)ο蟮南嚓P(guān)理論面向?qū)ο蟮南嚓P(guān)理論 類對(duì)象方法繼承封裝多態(tài)抽象2.2.5 Python語言語言 Python是一種面向?qū)ο?、直譯式的解釋性編程語言,語法簡(jiǎn)潔而清晰,具有豐富且強(qiáng)大的類庫。Python將源代碼轉(zhuǎn)換成名為字節(jié)碼的中間形式,然后再將字節(jié)碼翻譯為計(jì)算機(jī)的機(jī)器語言并運(yùn)行。在此過程中不用擔(dān)心編譯程序和加載依賴庫,這使Python更易使用。同時(shí)也使Python具備更好的可移植性。Python能夠很輕松地把用其他語言制作的各種模塊(尤其是C/C+)聯(lián)結(jié)在一起。常見的一種應(yīng)用情形是,使用Python快速生成程序的原型(有時(shí)甚至是程序的最終界面),然后

26、對(duì)其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,速度要求非常高,就可以用C+重寫。第一個(gè)第一個(gè)Python程序程序 采用兩種方式實(shí)現(xiàn)Hello World的輸出。 選擇“開始”“所有程序”Python 3.3 IDLE(Python GUI),打開Python Shell窗口。 單步直譯運(yùn)行方式:在提示符號(hào)“”后輸入print(“hello,world!”)后按鍵,輸出效果如圖2-32所示。 文件運(yùn)行方式:在Python Shell窗口中選擇File New Window菜單項(xiàng),打開編輯窗口,輸入print(“hello,world!”) ,如圖2-33所示。選擇Fi

27、le Save菜單項(xiàng),保存為hello.py文件。選擇Run Run Module菜單項(xiàng),運(yùn)行文件,看到的效果與單步直譯運(yùn)行方式相同。 圖2-32 單步直譯運(yùn)行輸出效果圖2-33 Python編輯窗口Python語法概述語法概述 (1)縮進(jìn)在Python語言里,縮進(jìn)被用于表示語句塊的開始和退出,而非花括號(hào)或者某種關(guān)鍵字。增加縮進(jìn)表示語句塊的開始,而減少縮進(jìn)則表示語句塊的退出。縮進(jìn)成為了語法的一部分。例如從鍵盤接收年齡數(shù)字,判斷該年齡能做的事情:age=int(input(age:) #將輸入的數(shù)據(jù)轉(zhuǎn)換為int整數(shù)類型if age 、=、!=、=表示大于、小于、等于、不等于、小于等于、大于等于。

28、l Python使用and、or、not表示邏輯運(yùn)算。is、is not用于比較兩個(gè)變量是否是同一個(gè)對(duì)象。in、not in用于判斷一個(gè)對(duì)象是否屬于另外一個(gè)對(duì)象。l Python區(qū)分列表(list)和元組(tuple)兩種類型。l 使用lambda表示匿名函數(shù)。匿名函數(shù)體只能是表達(dá)式。l 使用y if cond else x表示條件表達(dá)式。l 支持“列表推導(dǎo)式”l 使用(單引號(hào))和(雙引號(hào))來表示字符串。l 支持列表切割Python語法概述語法概述 (4)函數(shù)Python的函數(shù)支持遞歸、默認(rèn)參數(shù)值、可變參數(shù),但不支持函數(shù)重載。為了增強(qiáng)代碼的可讀性,可以在函數(shù)后書寫“文檔字符串”(Documen

29、tation Strings),用于解釋函數(shù)的作用、參數(shù)的類型與意義、返回值類型與取值范圍等??梢允褂脙?nèi)置函數(shù)help()打印出函數(shù)的使用幫助。比如:(5)對(duì)象Python是完全面向?qū)ο蟮恼Z言。在Python中,一切都是對(duì)象,一個(gè)整數(shù)是一個(gè)對(duì)象,一個(gè)字符串也是一個(gè)對(duì)象,更為奇妙的是,類型也是一個(gè)對(duì)象,整數(shù)類型是一個(gè)對(duì)象,字符串類型也是一個(gè)對(duì)象,并且完全支持繼承、重載、派生、多繼承,這有益于增強(qiáng)源代碼的復(fù)用性。同時(shí),Python也支持泛型設(shè)計(jì)。2.2.6 軟件工程簡(jiǎn)介軟件工程簡(jiǎn)介 從軟件開發(fā)的角度看,程序設(shè)計(jì)僅是軟件開發(fā)工作中的一部分工作。要進(jìn)一步理解軟件開發(fā)過程,還需學(xué)習(xí)有關(guān)的軟件工程知識(shí)。軟

30、件工程主要研究和應(yīng)用如何以系統(tǒng)性的、規(guī)范化的、可定量的過程化方法去開發(fā)和維護(hù)軟件,以及如何把經(jīng)過時(shí)間考驗(yàn)證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來。軟件工程的目標(biāo)是在給定成本、進(jìn)度的前提下,開發(fā)出具有適用性、有效性、可修改性、可靠性、可理解性、可維護(hù)性、可重用性、可移植性、可追蹤性、可互操作性和滿足用戶需求的軟件產(chǎn)品。追求這些目標(biāo)有助于提高軟件產(chǎn)品的質(zhì)量和開發(fā)效率,減少維護(hù)的困難。軟件開發(fā)軟件開發(fā)3個(gè)階段個(gè)階段 定義階段:可行性研究、初步項(xiàng)目計(jì)劃、需求分析。開發(fā)階段:概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試。運(yùn)行和維護(hù)階段:運(yùn)行、維護(hù)、廢棄。軟件工程的基本原理軟件工程的基本原理 l用分階段的生命周期計(jì)劃嚴(yán)格管理l堅(jiān)持進(jìn)行階段評(píng)審l實(shí)行嚴(yán)格的產(chǎn)品控制l采用現(xiàn)代程序設(shè)計(jì)技術(shù)l結(jié)果應(yīng)能清楚地審查l承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性l開發(fā)小組的人員應(yīng)該少而精軟件開發(fā)方法軟件開發(fā)方法 l結(jié)構(gòu)化開發(fā)方法l面向數(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論