版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、什么是計(jì)算機(jī)科學(xué)?o計(jì)算機(jī)科學(xué)并非研究計(jì)算機(jī)!n正如天文學(xué)不是研究天文望遠(yuǎn)鏡oCS要回答的基本問題:什么是可計(jì)算的?o對(duì)此問題的回答有三種方式:n實(shí)際設(shè)計(jì)一個(gè)解決問題的算法n理論分析問題的可解性 (有些問題是無解的,或者不是能行可解的)n通過實(shí)驗(yàn)來研究問題.1課程主要內(nèi)容o解決可計(jì)算問題需要教會(huì)計(jì)算機(jī)如何解決問題o我們?nèi)绾谓虝?huì)計(jì)算機(jī)解決問題n了解計(jì)算機(jī)有哪些基本功能n熟悉一門與計(jì)算機(jī)進(jìn)行交流的語言n掌握設(shè)計(jì)思路與方法對(duì)本課程的定位o學(xué)習(xí)計(jì)算機(jī)科學(xué)解決問題的思想方法, 應(yīng)用于各個(gè)專業(yè)領(lǐng)域o不僅僅是一門程序設(shè)計(jì)語言課程! n本課程需要編程,以加深對(duì)計(jì)算思維的理解n壞消息:學(xué)習(xí)編程語言需要掌握非常繁
2、瑣的細(xì)節(jié)n好消息:Python語言非常簡單,易學(xué)易用3計(jì)算機(jī)與程序計(jì)算機(jī)與程序o計(jì)算機(jī)組成o程序設(shè)計(jì)語言o初識(shí)Python計(jì)算機(jī)的組成o硬件:計(jì)算機(jī)的軀殼o軟件:計(jì)算機(jī)的靈魂計(jì)算機(jī),也被稱之為計(jì)算機(jī),也被稱之為“電腦電腦”,是一種能夠按照事先,是一種能夠按照事先存儲(chǔ)的程序自動(dòng)、高效地對(duì)數(shù)據(jù)進(jìn)行輸入、處理、存存儲(chǔ)的程序自動(dòng)、高效地對(duì)數(shù)據(jù)進(jìn)行輸入、處理、存儲(chǔ)和輸出的系統(tǒng)儲(chǔ)和輸出的系統(tǒng)計(jì)算機(jī)硬件計(jì)算機(jī)硬件存儲(chǔ)器存儲(chǔ)器輸入設(shè)備輸入設(shè)備輸出設(shè)備輸出設(shè)備控制器控制器運(yùn)算器運(yùn)算器CPU存儲(chǔ)器存儲(chǔ)器o保存正在運(yùn)行的程序代碼和數(shù)據(jù)o內(nèi)存的最小單元是bit,一個(gè)bit存儲(chǔ)一個(gè)二進(jìn)制位。一般8個(gè)bit組成一個(gè)byt
3、e,若干個(gè)byte組成一個(gè)wordo在一般的機(jī)器中,內(nèi)存按字節(jié)編址,內(nèi)存大小也是按字節(jié)計(jì)量o關(guān)機(jī)后,內(nèi)存的數(shù)據(jù)全部丟失o廣義的存儲(chǔ)器包括主存和次級(jí)存儲(chǔ)器CPUCPU (Central Processing Unit) 有兩個(gè)部件組成:oALU Arithmetic-Logic Unit(運(yùn)算器)oControl unit (控制器)控制器控制器o控制器控制計(jì)算機(jī)的其余部分如何完成程序的指令n指揮內(nèi)存和其它部件之間的信息的傳送(包括信息和指令)n指揮CPU和輸入輸出設(shè)備之間的控制信息的傳送控制器中的信息存儲(chǔ)控制器中的信息存儲(chǔ)o控制器中有兩個(gè)寄存器:n指令寄存器( IR ):保存當(dāng)前正在執(zhí)行的指令
4、n程序計(jì)數(shù)器 ( PC ):保存下一條要執(zhí)行的指令地址控制器的工作控制器的工作o取下一條指令:按PC指定的地址到內(nèi)存中取出下一條指令,存入IR。o解碼指令:將指令解碼成一系列的控制信號(hào)o執(zhí)行指令:將控制信號(hào)發(fā)送給相關(guān)部件,執(zhí)行相應(yīng)的運(yùn)算運(yùn)算器的組成運(yùn)算器的組成o邏輯電路:執(zhí)行控制器發(fā)出的控制信號(hào)o一組存放正在運(yùn)算的數(shù)據(jù)的寄存器輸入輸出設(shè)備o輸入設(shè)備將人能理解的符號(hào)轉(zhuǎn)換成計(jì)算機(jī)能處理的符號(hào)。常用的輸入設(shè)備有:鍵盤、鼠標(biāo)、光筆等o輸出設(shè)備將計(jì)算機(jī)的輸出轉(zhuǎn)換成人能理解的輸出。常用的輸出設(shè)備有:顯示器、打印機(jī)、音響設(shè)備等計(jì)算機(jī)的組成o硬件:計(jì)算機(jī)的軀殼o軟件:計(jì)算機(jī)的靈魂計(jì)算機(jī),也被稱之為計(jì)算機(jī),也被
5、稱之為“電腦電腦”,是一種能夠按照事先,是一種能夠按照事先存儲(chǔ)的程序自動(dòng)、高效地對(duì)數(shù)據(jù)進(jìn)行輸入、處理、存存儲(chǔ)的程序自動(dòng)、高效地對(duì)數(shù)據(jù)進(jìn)行輸入、處理、存儲(chǔ)和輸出的系統(tǒng)儲(chǔ)和輸出的系統(tǒng)計(jì)算機(jī)軟件o軟件決定了計(jì)算機(jī)能做什么.沒有軟件,計(jì)算機(jī)只是一堆廢鐵.o軟件可以分為系統(tǒng)軟件和應(yīng)用軟件。o系統(tǒng)軟件居于計(jì)算機(jī)系統(tǒng)中最靠硬件的部分,它將計(jì)算機(jī)的用戶與硬件隔離。系統(tǒng)軟件與具體的應(yīng)用無關(guān),但其他的軟件要通過系統(tǒng)軟件才能發(fā)揮作用。常用的系統(tǒng)軟件有操作系統(tǒng)、編譯器、網(wǎng)絡(luò)軟件等。o應(yīng)用軟件是為了支持某一應(yīng)用而開發(fā)的軟件。如字處理軟件、財(cái)務(wù)軟件等。計(jì)算機(jī)與程序計(jì)算機(jī)與程序o計(jì)算機(jī)組成o程序設(shè)計(jì)語言o初識(shí)Python程
6、序設(shè)計(jì)語言o人與計(jì)算機(jī)進(jìn)行交流的一種語言o為什么不用自然語言與計(jì)算機(jī)交互?n精確的語法和語義n無二義性o有不同層次的程序設(shè)計(jì)語言Lu Chaojun, SJTU 17不同層次的程序設(shè)計(jì)語言不同層次的程序設(shè)計(jì)語言o機(jī)器語言o匯編語言o高級(jí)語言機(jī)器語言機(jī)器語言o是機(jī)器的母語。每種計(jì)算機(jī)都有自己的機(jī)器語言。與計(jì)算機(jī)硬件設(shè)計(jì)有關(guān)。o每個(gè)語句用一組二進(jìn)制數(shù)表示o用機(jī)器語言寫程序是非常困難的,讀機(jī)器語言寫的程序也是非常困難的o機(jī)器語言提供的功能非常簡單例如: 0000010000000001.是Intel8086能理解的一條指令.匯編語言匯編語言o用縮寫和助記符代替機(jī)器語言的0和1的比特串o和機(jī)器語言一樣
7、,不同類的機(jī)器有不同的匯編語言o匯編程序:將匯編語言寫的程序翻譯成機(jī)器語言的程序o解決了機(jī)器語言的可讀性問題,但沒有解決功能簡單的問題以及可移植型問題 前頁例子: ADD AL,1.需要匯編器處理后機(jī)器才懂.高級(jí)語言高級(jí)語言o類似于英語的語言,適合于人理解o功能比機(jī)器語言強(qiáng),解決問題更加容易o(hù)編譯器:將過程化語言寫的程序(源代碼)翻譯成機(jī)器語言的程序(目標(biāo)代碼)o解釋器:逐句解釋源程序并執(zhí)行,不保存目標(biāo)代碼。 如: x = y + 1. 需要編譯器或解釋器翻譯后機(jī)器才懂.編譯執(zhí)行main() int i, s;i=1;s=0;C compiler0110001011101001Source p
8、rogramObject program將程序全部翻譯成機(jī)器語言的程序,然后再執(zhí)行。解釋執(zhí)行解釋執(zhí)行源程序源程序 解釋系統(tǒng)解釋系統(tǒng)(逐句解釋、執(zhí)行)(逐句解釋、執(zhí)行)原始數(shù)據(jù)原始數(shù)據(jù)結(jié)果結(jié)果高級(jí)語言的特點(diǎn)高級(jí)語言的特點(diǎn)o具備了一定的機(jī)器獨(dú)立性,使用戶可以專注于解決問題的方法。但某些方面還是受到機(jī)器的限制o為了解決移植性問題,ANSI制訂了一系列的標(biāo)準(zhǔn)高級(jí)語言o本課程采用Python語言o高級(jí)程序設(shè)計(jì)語言有很多種,據(jù)說2008年網(wǎng)上被引用最多的10個(gè)語言是(按字母順序): C,C+,C#,Java,JavaScript,Perl, PHP,Python,Ruby,SQL25計(jì)算機(jī)與程序計(jì)算機(jī)與程
9、序o計(jì)算機(jī)組成o程序設(shè)計(jì)語言o初識(shí)PythonPythonoPython采用編譯/解釋混合方式:先編譯成字節(jié)碼,再解釋執(zhí)行,字節(jié)碼通常和機(jī)器無關(guān),解釋時(shí)再譯成機(jī)器碼。(JVM)oPython 系統(tǒng)軟件 ftp:/ 賬號(hào):tzzhang 密碼: publico安裝啟動(dòng)Python 課程推薦安裝Python 2.7,新的Python 3.x有與2.x不兼容的地方.27初識(shí)Pythono:提示符,提示你可以輸入命令o語句:一條命令,如print “hello”o串:“hello world”o數(shù):3、10o表達(dá)式:3 + 5o賦值:x = 528函數(shù)o函數(shù):將完成某一功能的語句組合起來o函數(shù)定義o函
10、數(shù)調(diào)用: def area( ): x = 5 y = 6 print x * y area( )30帶參數(shù)的函數(shù)o函數(shù)定義 o函數(shù)的調(diào)用 def area(x, y): print x * y area(3, 4)12area(2, 4)8模塊o如果一段程序需要反復(fù)執(zhí)行,可以把它以文件形式保存在外存儲(chǔ)器中。o保存在外存儲(chǔ)器中的程序稱為一個(gè)模塊,也稱為腳本文件或源文件。oPYTHON的源文件的后綴名為pyo程序模擬物理現(xiàn)象:chaos程序# File: chaos.py# A simple program illustrating chaotic behavior.def main(): pr
11、int This program illustrates a chaotic function x = input(Enter a number between 0 and 1: ) for i in range(10): x = 3.9 * x * (1 - x) print x input(Enter 0 to quit )main()omain函數(shù):標(biāo)志程序的開始,也可以省略o注釋o變量與賦值o程序的執(zhí)行:一個(gè)個(gè)語句順序執(zhí)行,但也可以重復(fù)執(zhí)行某個(gè)語句for循環(huán)o將一段語句重復(fù)執(zhí)行多次o語法for in : n是一個(gè)值的序列,如1,3,5,7,9或range(10)(即0,1,9).n可以是任何語句序列,用左縮進(jìn)標(biāo)識(shí).34程序的控制流o程序的諸語句通常是順序執(zhí)行的,但循環(huán)語句改變了控制流,表示一種控制結(jié)構(gòu).o控制流可以用流程圖直觀表達(dá)35取取的下一個(gè)值的下一個(gè)值無無有有模塊的執(zhí)行o在IDLE中執(zhí)行程序n打開文件:在file菜單下選open或直接用右鍵點(diǎn)擊文件,并選擇用IDLE打開n執(zhí)行:在run菜單下選run module或直接按f5ocmd界面中執(zhí)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療械加工廠合同
- 商業(yè)綜合體泥水施工合同
- 機(jī)電安裝工程師聘用合同樣本
- 購買家具合同協(xié)議書范本(2篇)
- 外包合同安全責(zé)任條款
- 工商租賃協(xié)議書范本
- 集體房屋租賃協(xié)議書
- 防侵權(quán)合同范例
- 土豆合同范例
- 首爾房租中介轉(zhuǎn)租合同范例
- 2024年《風(fēng)力發(fā)電原理》基礎(chǔ)技能及理論知識(shí)考試題庫與答案
- 軟件開發(fā)項(xiàng)目監(jiān)理細(xì)則
- (必會(huì))軍隊(duì)文職(藥學(xué))近年考試真題題庫(含答案解析)
- 醫(yī)院后勤副院長年終工作總結(jié)
- 2024年醫(yī)院物價(jià)管理制度范例(四篇)
- 登高車高空作業(yè)施工方案
- 2024年新人教版四年級(jí)數(shù)學(xué)上冊(cè)《第9單元第4課時(shí) 統(tǒng)計(jì)與數(shù)學(xué)廣角 總復(fù)習(xí)》教學(xué)課件
- GB/T 15822.3-2024無損檢測磁粉檢測第3部分:設(shè)備
- 金庸人物課件
- 智能電能表應(yīng)用配套安裝投標(biāo)方案(技術(shù)方案)
- 2024年平面設(shè)計(jì)師技能及理論知識(shí)考試題庫(附含答案)
評(píng)論
0/150
提交評(píng)論