




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1.5本章計算思維的典型案案1:計算作為人類文明的開端從最遠古的手指計數到中國古代的章盤計算到近代西方的納皮爾章籌及帕斯卡機械式計算機,至當前的電子計算機的高速計算,管是計算方法還是計算工具有變革性的創新,計算也作為一種忠維方式存在,并成為人類科學忠維的重要一員。以章盤到計算機的發展過程是計算忠維內容斷展的過程。現今,我們面臨著一個問題:計算機能能再快些?我們還能能依靠單一的電子器件加快我們的“大腦?以歷史來看,機械到電子但是材的進步,也是忠維方式的進步。計算機發展,歸根結底是計算忠維的傳承和發揚光大計算機的歷史就像一個孩子的成長史,它已經經歷少時期的瘋長,進入青時期。它還會有下一輪的飛速成長,但是要靠人類的智慧作為營養哺育它。在久的將來,我們會將計算機變成一個眾多學科交叉結合而成的靈。而到那時,我們相信那個靈傳承和發揚的仍然是計算息維。案2:抽象就是忽一個主題中與當前問題(或目標)無關的那些方面,以充分地注意與當前問題(或目標)有關的方面。通過抽象,人們可以從眾多的事物中抽取出共同的、木質性的特征,舍棄其非木質的特征。抽象是一種以個體把握一般、以現象把握木質的認知過程和忠維方法。在木章中介紹圖靈機模型,它是一個抽象的計算模型。圖靈把他的計算模型抽象成一種非常簡的裝置:一條無限長的紙帶、一個讀寫頭、一套控制讀寫頭工作的規則、一個狀態寄存器。有圖靈機這一抽象模型,我們可以得到很多木質的規,通過抽象我們能夠抽取事物的木質特性、忽煩瑣的細節,在抽象的模型上進科學研究,有助于發現事物的內在規。雖然圖靈機是現代計算機的數學模型,但它等同于實際的計算機,如何設計實際可用的計算機系統,也需要抽象的忠維。在第3章中介紹的馮?諾依曼體系結構就是^對現代計算機體系結構的一種抽象認識。本章小結與思考木章通過對計算技術的發展起到關鍵作用的人物和事件的介紹回顧計算機的發展簡史。以計算機的起源開始,介紹計算機系統的發展歷程及未來可能的發展趨勢。介紹科學技術的發展特別是電子器件的發展在計算機發展中的重要作用。解計算機的“存儲程序方式和采用二進制忠想。計算機是20世紀最偉大的發明之一。計算技術以簡單到復雜,經歷漫長的發展過程,但最近20余卻取得飛速的進展。這面蘊含其自身的規性,值得深刻領悟。計算機及計算機網絡的應用己使人類社會的各個領域發生翻天覆地的變化,計算和計算機的應用己經無處在。信息作為繼物質和能源之后的第三類資源,它的價值日受到人們的重視。在計算機滲透到社會各各業的今天,每一名大學生應該接受信息技術教育,應該具有“獲取信息、分析信息、加工信息的基礎知識和實際能。計算忠維是運用計算機科學的基礎概去求解問題、設計系統和解人類的為,它包括涵蓋計算機科學之廣的一系思維潔動。計算思維的木質是抽象和自動化。計算忠維代表著一種普遍的認識和一類普適的技能,因此每個人應熱心于計算思維的學習和應用。計算機作為一種工具,既然為人類所廣泛使用,它必將對人類的思維產生影響。計算機賴以運的思想和方法也將以后臺進入前臺,走進人類的生潔,成為人類工作和生潔有助手。如同所有其他學科一樣,計算學科也有自己的認識和處世界事物的方法學。未來,計算思維必將隨著計算學科的發展而斷豐富和完善。學習完本章后,請思考并討論以下提出的幾個問題:.你認為——個學生應具有么樣的信息素養,才能在未來的職業生涯中具有較強的競爭?這些競爭體現在哪些方面?結合你所學的專業談談計算思維對本學科研究領域的影響和應用。新一代計算機的發展趨勢是么?談談你對未來計算機發展及應用的看法。2.4本章計算思維的典型案案1:現實世界可以表示為0和1T用0和1可進邏輯與算術運算T0和1可以用電子技術實現T用二極管、三極管等實現基本門電T組合邏輯電實現T芯片(復雜組合邏輯電)。具體來說,0和1的思維蘊含著:信息表示。數值信息和非數值信息均可用0和1表示,均能夠被計算;符號化數字化。物世界/語義信息^符號化T0和1(進位制與編碼)^數字計算(算術運算,邏輯運算)T硬件與軟件實現。如任何事物只要能表示成信息,也就能夠表示成0和1,也就能夠被計算,也就能夠被計算機所處。案2:遞歸是計算思維的方法之一。當我們通過鍵盤將字母^輸入到計算機,在計算機內部它將以二進制代碼形式存儲,但以顯示器或打印機輸出的依然是字母“A,由此體現一種遞歸的方式。究竟么是遞歸呢?其實,遞歸就是大魚吃小魚,就是一條蛇咬住自己的尾巴。遞歸是布一樣東西自己包含自己。如,當兩面鏡子相互之間近似平時,鏡中嵌套的圖像是以無限遞歸的形式出現的。遞歸在數學與計算機科學中,是指在函數的定義中使用函數自身的方法。遞歸一詞還較常用于描述用相似方法重復事物的過程。案3:當數據被儲存在硬盤或傳送到網絡上時,它們一般是會發生改變的.過,有時候一些故障也會導致數據值突然改變,比如電子干擾。而避免這類事件的發生至關重要。用類似奇偶校驗的方法,可以保護計算機中幾乎所有的數據。數據硬盤、CD、DVD、閃存、網絡下載、電子郵件和網頁在數據中添加你看到的校驗碼。一旦系統中個別比持發生錯誤,計算機就會在你知情的情況下自動恢復原始數據。這充分體現計算思維是按照預防、保護及通過冗余、容錯、糾錯的方式,并以最壞情況進系統恢復的一種思維方法。奇偶校驗是-種校驗代碼傳輸正確性的方法。根據被傳輸的-組二進制代碼的數位中“1的個數是奇數或牌數來進校驗。采用奇數的稱為奇校驗,反之,稱為偶校驗。采用何種校驗是事先規定好的。通常專門設置一個奇偶校驗位,用它使這組代碼中“1的個數為奇數或牌數。用奇校驗,則當接收端收到這組代碼時,校驗“1的個數是否為奇數,從而確定傳輸代碼的正確性。在本章中,介紹ASCII碼為7位編碼,占1個字節,空出來的最高位通常為0。但在需要傳輸數據時可以用作奇偶校驗的校驗位。如偶校驗時,7位ASCII碼中“1的個數為牌數,則校驗位置為'0;7位ASCII碼中“1的個數為奇數,則校驗位置為“1。這樣就可以保證傳送數據滿足偶校驗的要求。在接收方收到數據時,將按照奇校驗的要求檢測數據中“1的個數,如果是牌數,表示傳送正確,否則表示傳送錯誤。奇偶校驗位是最簡單的錯誤檢測碼。案4:對中國漢字的信息處就是一種典型的計算思維應用,蘊含構造原。計算機是西方人發明的,他們用近40的時間發展一整套技術來實現對西文的處。而漢字是一種象形文字,字種繁多,字形復雜,漢字的信息處與通用的西方簡單的字母數字類信息處有很大差異,一成為棘手問題。然而,近幾十夾,漢字信息處研究得到飛躍式的發展。這其中,讓計算機能表示并處漢字要解決的首要的問題就是要對漢字進編碼,即確定每個漢字同一組通用代碼集合"對應關系。這樣,在輸入設備通過輸入法接收漢字信息后,如按對應關系將其轉換為可由一般計算機處的通用字符代碼,然后再用傳統計算機的信息處技術對這些代碼信息的組合進處,如信息的比較、分類合并、檢、存儲、傳輸和交換等。處后的代碼組合,單通過漢字輸出設備,按照同樣"對應關系轉換為漢字字形庫的相應字形序號,輸出設備將處后的漢字信息直觀地顯示或打印出來。本章小結與思考本章主要介紹計算機基本信息表示方法,所謂基本信息,是指數值信息和字符信息。其中二進制的概是十分重要的,因為二進制是計算機信息表示的基礎,在計算機內部的底層,任何類型的信息用二進制編碼,還因為在計算領域,很多術語直接與二進制相聯系,懂得二進制,就能很好解這些術語。同一個數可以用同的進制表示,同進制表示之間存在等價關系,用這個等價關系可以在同的進制之間進轉換。針對數值的二進制表示,還介紹如何采用原碼、反碼和補碼的方法解決帶符號數值的處,以及帶小數點的實數表示方法。掌握這些知識對于解計算機的運算過程非常重要。計算機之所以具有邏輯處能,是因為計算機中采用實現各種邏輯功能的電,這些邏輯電是由能夠實現與、或、非等邏輯運算的基本電組成的。而邏輯代數是進邏輯電設計的數學基礎。通過組合基本的邏輯電,可以設計出非常復雜的組合邏輯電,用于構建計算機系統。解計算機信息數據的編碼對于計算機信息處具有很大的幫助。由于計算機是以二進制方式組織、存放信息的,這就意味著所有需要計算機存儲并處的信息包括要轉換成二進制的形式來表示。因此,信息編碼就是指對輸入到計算機中的各種數值和非數值型數據用二進制數進編碼的方式。對于同機器、同類型的數據其編碼方式是同的,編碼的方法也很多。本章主要介紹常用編碼的國家標?準或國際標?準,如ASCII碼、漢字編碼等,包括計算機使用這些編碼在計算機內部和外部設備之間以及計算機之間是如何進信息交換的。學習完本章后,請思考并討論以下提出的幾個問題:1.假設有兩支友鄰軍隊夜間在一條河的兩岸并軍。為保持動一致,他們必須進通信。雙方預先確定53條通信密語。兩支軍隊沒有帶通信設備,但帶至少8支手電筒。請為他們設計一種通信方案。?舉說明身邊的某一編碼,說說其編碼方式、規則與取值范圍,寫出自己的看法與認識。?對下ASCII碼進譯碼。01001110011010010110100001100001011011110010000101001010011010010110000101111001011011110111010100100001?對于下面一組同編碼的數,請按照以小到大的順序排。(+01110)原(01101)補(10110)反(10000)反(10110)原(10010)補3.7本章計算思維的典型案案1:在^算機科學中,抽象是一種被廣泛使用的計算忠維方法。在本章中介紹的馮?諾依曼體系結構就是"對現代計算機體系結構的一種抽象認識。在馮?諾依曼體系結構中,計算機由內存、處單元、控制單元、輸入設備和輸出設備等五部分組成。這一體系結構屏蔽實現上的諸多細節,明確現代計算應該具備的重要組成部分及各部分之間的關系,是計算機系統的抽象模型,為現代計算機的研制奠定基礎。案2:并是一種重要的計算思維方法。并計算一般是指許多指得以同時進的計算模式。我們在計算機系統的設計中看到很多運用并技術提高系統效的子,如,本章介紹的“多核處器技術,是以空間的角,通過硬件的冗余,讓同的處器并發執同的任務。該種技術體現運用并方法解決問題的息。在日常生潔中也乏并思維的子。在高速公收費站服務中也可以經常見到并。在車多的高峰時段,收費站可以通過增加一些通通道提高服務的并,從而提高服務能,減少車輛通的等待時間;而在車較少的時候,會通過關閉一些通道低服務的并,在保證通速的同時減少高速公收費站自身的運營成本。案3:緩存也是一種重要的計算思維方法。緩存是將大來可能會被用到的數據存放在高效存儲區域中,使得將來用到這些數據時能夠非常快地得到。在計算機系統中有一個重要的原,即程序的局部性原。程序的局部性原有兩方面的含義:時間局部性和空間局部性。時間局部性是指,如果一個信息項正在被訪問,那么近期它很可能還會被再次訪問;空間局部性是指,在最近的將來將用到的信息很可能與現在正在使用的信息在空間地址上是臨近的。因此,在時間和空間上,程序總是趨向于使用最近使用過的數據和指,其訪問為是隨機的,而是相對集中的。CPU訪問存儲器,無論言取指還是存取數據,所訪問的存儲單元趨于聚集在一個較小的連續區域中。根據這一原,計算機系統中采取層次性的存儲體系,包括高速緩存、內存儲器、外存儲器等。高速緩存的訪問速最快、容最小、成本最高,外存儲器的訪問速最慢、容最大、成本最低。計算機系統充分用局部性原,提高系統在緩存中命中數據的可能性,從而以較多的低速大容存儲器、配合較少的高速緩存,得到速和高速存儲器差別大的大容存儲器,在存儲容、速和成本上獲得較好的平衡。在我們的工作和生潔中也存在有緩存思維的子。如,學生上學在書包中通常只放上當天上課需要的書本,而需要把所有書本帶上;我們的辦公桌上總是放上最常用或剛剛看到過的書,而長時間用的書轉移到書架上,這些是通過緩存和預取提高效的子。案4:以鍵盤輸入與屏幕顯示為可以感受“信息處的思維,如:位置T電信號T編碼T存取/ASCII—解碼T字形―顯示。解和掌握這一思維之后,可以很容地推廣至其他語言文字的處,如漢字等。進一步,這一子蘊含著一種普適的思維——信息處思維,如:物對象通過采集設備采集相關信息(物一信息映射),然后按一定的編碼規則使用編碼器進編碼及存儲,單按編碼規則使用解碼器進解碼,識別所需信息并進顯示。大章小結與思考大章介紹計算機中硬件的基本常識。首先以總體上介紹其構成和各部分的作用,以及構成的依據馮諾依曼體系結構。此后,以我們最熟悉的微型計算機為入占,介紹CPU的工作過程、主板的特性。接著,介紹存儲系統,存儲系統的設計原則和工作原。然后,介紹連接計算機硬件系統各分系統的通——總線,以及連接主機和外部設備之間的部件——接口。另外,還介紹常用的外部存儲設備,如硬盤、光盤,以及常用的輸入啊出設備。最后,介紹簡要地介紹計算機指系統。通過大章學習,應建起計算機系統的全貌,并對各組成部分的構成和工作原有一定的認識和解。應能以總體上解一個程序經過外部輸入、CPU處,最后輸出結果的整個程所涉及的硬件及其工作原。學習完大章后,請思考并討論以下提出的幾個問題:1?解釋硬盤分區的類別及特點,如果有一個新硬盤你將如何分區。2?在當地的電腦銷售商處收集一些同品牌、同配置電腦的宣傳單,對收集到的資按高、中、低檔次分別配置一臺電腦,出相關的配置參數。3?談談通過哪些方法可以提高計算機的速。4?簡述內存與外存的關系。4.9水章計章思維的典型案案1:以機到虛擬機是一個用計算思維解決自身問題的典型案。一臺機通過加裝軟件(操作系統),并由軟件提供與用戶的接口,直到用戶通過接口使用這臺計算機,是將一臺復雜的、幾乎能使用的系統變成使用簡單、功能強大的系統。整個過程擁有極其豐富的計算思維潔動。同樣,以分時操作系統為。分時操作系統是指在一臺主機上連接多個帶有顯示器和鍵盤的終端,同時允許多個用戶通過主機的終端,以交互方式使用計算機,共享主機中的資源。分時操作系統是一個多用戶交互式操作系統。分時操作系統將CPU的時間劃分成干個片段,稱為時間片。操作系統以時間片為單位,輪為每個終端用戶服務。每個用戶輪使用一個時間片而使每個用戶并感到有別的用戶存在。宏觀上看是多個人同時使用一個CPU,微觀上是多個人在同時刻輪使用CPU。這種時間片輪轉思想就是一個白的、最簡單、最公平的思想,它既解決計算機自身的問題,又能解決實際的問題。案2:操作系統的產生和使用,其本身就充分體現運用計算思維抽象和分解的方法。計算機硬件經馮?諾依曼闡述后,劃分為五大模塊或稱計算機的五大組成部分。而操作系統誕生及其所提供的四大功能,如進程管、內存管、文件管、設備管則是對硬件的五大模塊所涉及的龐大而復雜的工作進有效的控制和管。操作系統架起硬件與用戶之間溝通的橋。案3:操作系統對進程的管采用多道程序并處的方式。宏觀上多個程序同時執,微觀上各程序輪占用CPU,交替執,如,這就大大提高系統的資源用。這是將計算思維中使用并方法解決問題的思運用到操作系統設計的一個典型實。案4:內存管,是指軟件運時對計算機內存資源的分配和使用的技術。其最主要的目的是如何高效,快速的分配,并且在適當的時候釋放和回收內存資源。虛擬內存是內存管技術的一個極其實用的創新,當進程建時,需要在物內存件之間搬移數據,數據儲存于磁盤內的虛擬內存空間,也需要為該進程去配置主內存空間,只有當該進程被被調用的時候才會被加載到主內存。可以想像一個很大的程序,當他執時被操作系統調用,其運需要的內存數據被存到磁盤內的虛擬內存,只有需要用到的部分才被加載到主內存內部運。內存管的設計所用到的預置和緩存技術也是一種重要的計算思維方法。案5:文件管是操作系統中一項重要的功能。其重要性在于,在現代計算機系統中,用戶的程序和數據,操作系統自身的程序和數據,甚至各種輸出輸入設備,是以文件形式出現在操作系統的管者和用戶面前。文件管是x對文件存儲器的存儲空間進組織、分配和回收,負責文件的存儲、檢、共享和保護。以用戶角來看,文件管主要是實現“按名取言,用戶只要知道所需文件的文件名,就可存取文件中的信息,而無需知道這些文件究竟存放在么地方。文件管的設計運用存儲、檢、共享、保護等多種計算思維的方法,從而實現對信息的有效管和快速存取。案5:操作系客對設備的管就是如何有效合地使用這些設備。設備管的功能之一是緩沖管,如為達到緩解CPU和I/O設備速匹配的矛盾,達到提高CPU和I/O設備用,提高系統吞吐的目的,許多操作系統通過設置緩沖區的辦法來實現。在緩沖管方面所用到的緩存技術是計算思維的一種重要的方法。設備驅動程序是設備管的重要組成部分。是一種可以使計算機和設備通信的特殊程,操作系統只有通過這個接口,才能控制硬件設備的工作,片,可以說相當于硬件的接口假如某設備的驅動程序未能正確安裝,能正常工作。,操作系統只有通過這個接口,才能控制硬件設備的工作,而計算機中的設備種類繁多,千差萬別。所以編寫設備驅動程序就要充分采取抽象、化簡、統一的計算忠維方法,盡可能實現驅動程序的通用性及程序與設備的無關性。大章小結與思考(待定)大章從操作系統是計算機系統管者的角,依次介紹進程管、存儲管、文件管、設備管和用戶接口等內容。在這些內容的介紹中,重點、介紹各項管功能所針對的對象、采用何種管策,如管誰、怎么管的問題,進一步探討這些管功能是如何支持程序運的問題。操作系統是計算機系統的管控中心,它管計算機系統的所有資源,用戶通過操作系統才能間接對對計算機進操作。程序是實現特定操作的指集合。執的程序被稱為進程。進程是"潔著的程序,有其三命周期和潔動規。進程管涉及進程創建、調、資源分配、運等-系操作。文件是計算機中信息管的基本單位。計算機中所有信息(包括操作系統本身〉是以文的形式存在的。x對計算機的操作實際上是對文件的操作。為實現對文件的管,系統內部設置文件目錄、文件分配表等組織結構。用戶通過文件目錄樹結構x對文件進操作。文件因數巨大所以被組織存放在硬盤中。文件名是文件存放在計算機中的唯一標識符,文件名包括文件主名、文件擴展名和文件徑。文件操作包括創建、修改、復制、刪除、重命名、共享、隱蔽等。現代計算機系統中包含的外部設備越來越多,處標準配置的設備〈鼠標、鍵盤、顯示器)外,還包括許多非標配設備(移動硬盤、U盤、打印機、掃描儀等)。設備管的任務除保證這些外部設備本身處于正常的工作狀態外,還要保證I/O控制器、通道、設備與CPU之間的信息通信和數據傳輸、各種設備的排隊管、各種設備的I/O操作等。存儲管的主要任務是存儲分配、地址重定位、存儲保護和存儲擴充等。所有程序和數據一般是存放在外存中,執時才調入內存,這就關系到存儲器的分配和管:程序本身的數據和代碼是按邏輯地址存放的,運時是在物地址空間,這就涉及地址空間的變換(地址重位);為解決實際應用中在較小'的實存空間中運大程序的問題,存儲管中引入虛擬存儲技術,即將部分外存空間開辟出來作為內存空間的補充,采用軟、硬件技術結合的方式,實在的虛擬存儲空間和較'的實存儲空間的轉換。用戶接口是用戶操作計算機的界面。用戶接口包括命方式、系統調用方式和圖形窗式等操作界面。通過大章的學習,應以總體上對操作系統有一個整體認識。在學習中,要清楚計算機系統軟硬件是如何配合起來支持程序運的,要分清楚哪些支持由硬件提供,哪些由軟件提供,它們是如何協調一致構成一個整體的。學習完大章后,請息考并討論以下提出的幾個問題:.為么要使用操作系統平臺?而是讓用戶直接面X對機??計算機系統為么要組織成層次結構?它的實質是么??同樣是設計和開發程序,操作系統的設計和開發者的工作與應用程序員有么同?為么?.你對操作系統和用戶程序之間的關系有何看法?闡述你的視角。?有人說設備管軟件(設備驅動程序)因為經常由第三方提供,因此應該作為操作系統的一部分,你對此有何看法?驅動程序的作用是么?為么必須為外設安裝驅動程序?
么是設備無關性?為么要在設備管中引人設備無關性5.6本學計算思維的典型案案1:計算忠維反映的是用計算機技術解決實際問題的忠維方法,如果對用計算機技術如何解決實際問題的認知出現誤解那是可能達到目的的。很多初學者以為計算機乎其,似乎么能干,所以就想當然起來。如,某同學剛學幾天C語言程序設計,想試試自己的能,找一道求方程3x2^5x-15=0的根的題目。用C語言寫出下述的程序段:floatx;/*定義變*/3*x*x+5*x-15=0;/*給出方程,讓計算機求解*/printf("%f,x);/*輸出結果*/結果上機一試,才發現錯誤一大堆,根木可能得到想要的解。該同學實在想明白的是:計算機是很嗎?怎么這么簡單一個方程能求解?恐怕大多數人剛開始和;該同學一樣,有這樣的疑問。事實上,計算機確實能求解上述方程,至少目前基木如此(第四代問題描述語言外)。確地說,計算機只會幫我們“計算,至于如何計算那就是我們的事情。就木而言,如果我們自己知道如何求解此方程,那也就別指望計算機幫我們求解它。換話說,我們得告訴計算機如何一步一步地去求解此方程,然后計算機按照我們的計算要求幫我們一步一步地去計算。只有很好地解這樣的“計算息維,我們才能寫出下面的程序段:/*定義變*/floatx1,x2,d;d=5*5-4*3*(-15);/*求根公式*//*求根公式*//*輸出結果*/(-5+sqrt(d))/(2*3);(-5-sqrt(d))/(2*3);,x1,x2);由計算機并是你想象的那么''智能。和人腦相比,它只x1=x2=printf("%f,%f/*定義變*//*求根公式*//*求根公式*//*輸出結果*/(-5+sqrt(d))/(2*3);(-5-sqrt(d))/(2*3);,x1,x2);由計算機并是你想象的那么''智能。和人腦相比,它只除此以外計算機幾乎沒有么多的優越性。如果你要完(或者會)分解成計算機能接受的基木操作,那就沒洼用通過這個子,大家應該明除此以外計算機幾乎沒有么多的優越性。如果你要完(或者會)分解成計算機能接受的基木操作,那就沒洼用案2:在計算機科學中,將大規模的復雜問題分解成干個較小規模的、簡單的問題加以解決,是一種常用的計算忠維。運用問題分解這種忠維方法進問題求解,首先需對問題木身做出明確描述,并對問題解洼做出全局性決策,把問題分解成相對獨的子問題,單以同樣的方式對每個子問題進一步確化,直到獲得對問題的明確的解答。在木章中,結構化程序設計采取計算思維中的典型方法——分解。按照“分而治之的策,將頂層問題的求解目標逐層分解成子目標每個子目標用相應的程序模塊進實現,這樣構成求解整個問題的程序。結構化程序設計方法的一個重要原則就札"自頂向下、逐步求,它是指程序設計時,先描述頂層問題的求解目標,然后步步深入,設計一些比較粗的子目標作為過渡,單逐層細分,直到整個問題可用程序設計語言明確地描述出來為止。程序的模塊化設計,則是針對任何一個大系統可以按子結構之間的疏密程分解成較小的模塊,每個模塊完成一定問題的求解。整個程序是由層次的、逐級細化的諸模塊組成。一個復雜的問題可以看成由干稍簡單的問題構成。對于可以用計算機求解的問題,所需的計算時間與其規模有關,問題規模越小,解題所需的計算時間也越少,也越容求解。因此,可以將一個難以直接解決的大問題,分割成一些規模較小的相同問題,以各個擊破、分而治之。牌塊化與自頂可下、逐步求緊密聯系。日常工作中的層次化管也是一種對分解方法的運用。以企業運為,一個大型企業也是一個非常復雜的系統,采取“字塔型的管層或是一種常用的策,將企業逐層分解,越上層的機構越少,越向下功能分解越細、機構數目越多。各級機構管好自己的下屬機構,完成上級機構制定的目標?,最終整個企業實現自己的整體目標。案3:計算思維是用海數據來加快計算,在時間和空間之間、在處能和存儲容之間進折中的思維方法。計算機問題求解是以計算機為工具,用計算思維解決問題的實踐潔動。計算機解題的核心是算法設計,設計算法是計算機問題求解中非常重要的步粟。查找(Searching)也稱檢,計算機最重要的功能之一就是在浩瀚的數據中找到用戶所要的信息。但是計算機的速還并沒有快到能瞬間完成這一過程的程,而且等待計算機直找的數據集往往是異常龐大的,因此我們需要快捷有效的搜方式。世界上最龐大的搜問題是在網絡世界中搜信息,網絡搜引擎能實現同時為大在線用戶在數以百萬計的網頁中進高速查詢,這無疑是一個人驚訝的事實,而它們能做到這點無非是因為使用正確的算法。查找的結果有兩種:一種是查找到滿足條件的結點,稱為查找成功;否則稱為查找失敗。查找的方法很多,下面介紹兩種針對線性表的查找算法。順序查找順序查找是最簡單的查找算法計算機運速很快,你或許認為當計算機進搜時,應該以儲存數據的開頭開始找,直到找到指定數據時結束查找,這種方式稱線性搜,然而,這種算法對計算機來說是非常慢的。折半查找如果所有待查的數據元素按關鍵字遞增(或遞減)有序,則可以采用折半查找也稱為二分查找,它是一種效較高的線性表直找算法。折半查找的基本思想是:先取表的中間位置的結,點關鍵字與所給定的關鍵字進比較,如果相等,則查找成功。如果給定值比該結點的關鍵字大,則所找結點、在表的后半部分;否則所找結,點在表的前半部分,然后再把選定的部分表的中間結點的關鍵字與給定關鍵字進比較。如此反復進,直到查找成功或者查找失敗為止。使用折半查找要比順序查找效高很多,只用檢查隊的中間項就可鎖定搜關鍵詞位于哪一半隊,這樣一來,每查找-或相當于將待查找的目標數減少-半。以查找超市商品為(假設商品是按編號以小到大排序),如果采用折半查找方式在10000件貨品中查找,僅須用到14次搜。值得注意的是折半查找效雖然較高,但必須先將待查數據進排序。這是折半直方法的前提條件或代價。下面子顯示查找成功和查找失敗的過程,給定線性表的各結點的關鍵字為{05,13,17,42,46,55,60,94}。查找關鍵字為k=55的結點,查找過程如下:[0513174246556094]第1次t05131742[46556094]第2次,查找成功
查找關鍵字為k=12的結點,查找過程如下:[051317424655t6094][051317]4246556094t[05]13174246556094t[05]案134:174246556094第1次第2次第3次第4次,查找失敗排序(Sort)是數據處中的一種重要運算,它的功能是將一組數據元素(或記錄)以任意序排成一個按關鍵字排序的序。這是一種常用的計算思維方法。幾乎所有計算機中的序是被排過序的,電子郵件表按照日期排序,最新的郵件被放置在最頂端;播放器中的歌曲按照名字或歌手名排在-起,以你快速查找到最喜歡的那首歌,文件名則往往是按照字母順序排的。那么計算機是如何進排序的呢?計算機科學家設計很多排序的算法,這介紹兩種簡單有效的排序算法。①直接插入排序直接插入排序是最簡單的排序方法適用于記錄個數較少的場合。其算法的基本思想是:逐個處待排序中的記錄,將其與前面已經排好序的子序中的記錄按關鍵字比較,確定要插入的位置,并將記錄插入到子序中。具體做法如下:?開始時,把第一個記錄看成是已經排好序的子序,這時子序中只有一個記錄;?以第二個記錄起到最后一個記錄,依次將每個記錄與前面子序的記錄按關鍵字比較,確定記錄插入的位置;?將記錄插入到子序中,子序記錄個數加1,直至子序長與待排序長相等時結束。如:已如一組記錄的關鍵字值初始排為:49,38,65,97,76。圖5.14給出直接插入排序的過程示意圖。②有泡排序有泡排序是一種簡單直觀的排序算法。該算法重復地掃描要排序的數,依次比較兩個元素,如果它們的順序錯誤就把它們交換過來。掃描數的工作是重復地進直到沒有再需要的交換,也就是說該數已經排序完成。在這個算法的工作過程中,較小的元素會通過交換慢慢“浮到數的前端,較大的元素會慢慢“浮到數的末端,這就是該算法得名的原因。可以具體地描述該算法,如下:?將第n個記錄的關鍵字與將第n-1個記錄的關鍵字進比較,為逆序則將兩個記錄進位置的交換,否則保持原來順序;?將第n-1個記錄的關鍵字與將第n-2個記錄的關鍵字進比較;?重復上述排序過程,直到全部關鍵字均比較-遍;?上面三步的比較交換過程稱為第-趟排序其結果是使關鍵字最小的記錄被交換到第1個記錄的位置,完成一趟排序;?第二趟排序從第n個記錄到第2個記錄進同樣的操作,結果是使關鍵字或小的記錄被交換到第2個記錄的位置;依次類推,第i趟排序是以第n個記錄到第i個記錄依次比較交換。設有n個關鍵字,需要經過n-1趟比較和交換,使得n個記錄的關鍵字以小到大排好序。判斷有泡排序結束的一個條件是“在一趟排序中沒有進過交換記錄的操作。
如:已如一組記錄的關鍵字值初始排為:13,49,38,27,65。圖5.15給出有泡排片的過程示意圖。人們在日常生潔中將物品有規的擺放,如水果由小到大擺放,圖書按書名或學科順序排片等。將物品按照某種規順序排擺放稱為排片。排片的根本目的是能夠根據實際需要方快捷地拿取物品。計算機經常被用來把數據清單排成有序的順序,無論是按字母、數字或日期。如果使用錯誤的方法,即使是在高速的計算機上運,它可能需要很長的時間進排片。[初始]j.(49)38_J659776i=2:(3849)65+9776i=3:(3849165)9776i=4:(384965」97)76_Ji=5:(3849657697)圖5.14直接插入排序的過程r131313r131313[初始]j.(49)38_J659776i=2:(3849)65+9776i=3:(3849165)9776i=4:(384965」97)76_Ji=5:(3849657697)圖5.14直接插入排序的過程r131313r1313131313494927272727272727382749494938383838273838383849494949656565656565656565圖5.15冒泡排序的過程大章首先簡要介紹軟件和程序這兩個截然同的概。接著介紹機器語言、匯編語言和高級語言三大程序設計語言的分類及特點,描述程序編碼、編譯和運的基本過程。附加介紹幾種常用高級語言的特性、開發環境及選用范圍,其目的是讓初學者在宏觀層面對常用的高級語言有一個大致的解。另外,以“程序本質上是描述特定數據的處過程的觀點出發,簡要介紹高級程序設計語言的構成、算法、數據結構等基本概,并結合具體的子介紹常用的程序設計方法一一結構化程序設計方法的基本息想。計算機問題求解是以計算機為工具、用計算息維解決問題的實踐潔動,-般包括分析問題、設計算法、實現算法等步驟,是最典型計算忠維方法。在通過大章的學習,希望讀者對計算息維和計算機問題求解有一個初步的解,對于算法和程序的基本概、算法設計的基本方法以及程序設計的原則和息想有所解。學習完大章后,請息考并討論以下提出的幾個問題:結合你所學的專業談談你適合學習哪種程序設計語言。談談你是如何解算法是程序的靈魂,是計算機的靈魂,是計算息維的靈魂。6.7本章計算思維的典型案抽象和分解是計算思維的兩個重要特征。設計一個數據庫,本身就體現計算思維抽象和分解的過程。在本章中需要在計算機上建數據庫,需要根據系統的需求,將客觀世界的信息轉化成計算機系統中的二進制信息。由于客觀世界的復雜性,直接完成這種轉換是非常復雜和困難的。因此,在數據庫設計中,將建模分成三個層次:概數據模型、邏輯數據模型和物數據模型。設計者依次在這三個層次上進建模,分別完成一定的信息轉換,最終完成客觀世界信息到計算機系統中二進制信息的轉換這就是一種將復雜問題進分解而得到答案的子。以上抽象思維的結果需要在計算機上實現,這體現自動化這個本質,也是將論成果應用于技術實踐的過程。自動化隱含著需要某類計算機(可以是機器或人,或兩者的組合)去解釋抽象。案2:排序是信息處中經常進的一種操作,其目的是將一組元素以“無序的序調整為“有序的序。雖然排序算法是一個看似簡單的問題,但它卻是計算機科學的發展歷史中一個重要的研究問題,計算機科學家設計一系的排序算法。由于排序操作是一項經常被使用的基本功能,所以高效的排序算法對于提高信息處的效具有非常基礎性的意義。和排序相關的另一個信息處方法是引,是指對具有共性的一名對象進編目,以提供根據數據某一屬性快速訪問數據的能。在數據庫中,使用引可快速訪問數據庫表中的特定信息。為提高數據訪問效,可以建一個對數據庫表中一或多的值進排序的一種結構(如引)。以本章中的學生選課數據庫為,如,要查看學生表中的數據,一般看到的是按學號由小到大排。但有時可能需要查看按學生齡、姓名或籍貫排的學生記錄。這時可以允許將數據表的數據按多種順序排顯示出來。另外,如果要在“學生關系表中按籍貫查找特定學生,如果沒有引,就必須依次搜表中的所有,效非常低。而用引技術,可以為“學生關系表的“籍貫字段建引,這樣如果需要在該表中按籍貫查找特定學生,如,需要查找籍貫為“湖南的某學生,通過引,可以很快地找到該學生。在我們的工作和生潔中也存在有計算思維引特征的子。如,在出版和圖書館業,用引進文獻的管。每本圖書的目錄就是該書的一個引。又如經常使用的新華字典,前面很大一部分篇幅就是提供各種引,包括拼音、部首和筆畫等多種引方式,為讀者提供方、快捷的檢功能。案3:運用多種算法,從海數據中挖掘或抽取出知識,在時間和空間之間、在處能和存儲容之間進折中的思維方法是典型的計算思維方法。以數據挖掘在售業中的應用為,售公司跟蹤客戶的購買情況,發現某個客戶購買大的真絲襯衣,這時數據挖掘系統就在此客戶和真絲襯衣之間創建關系。銷售部們就會看到此信息,直接發送真絲襯衣的當前情,以及所有關于真絲襯衫的資發給該客戶。這樣售商店通過數據挖掘系統就發現以前未如的關于客戶的新信息,并且擴大經營范引。本章小結與思考本章介紹數據庫技術中的基本概。所涉及的知識,點主要包括么是數據庫、數據庫管系統、數據庫系統,以及數據庫的三大模型:層次模型、網狀模型、關系模型。還介紹
目前所的關系數據庫及相關概,并且以學生選課系統為,闡述數據庫的設計、創建過程。最后,簡要介紹數據庫在管信息系統中的應用及常用的數據庫管軟件。在學?過程中,可以通過一些子,如圖書管、庫房商品的管、學校教室的管、成績管等等加強對數據庫應用的解,雖然這些數據來自同的領域處的要求也盡相同,但在操作方法卻是相同或相近的因為這是基于一個相同的數據模型,這就是關系模型。通過對本章內容的學習,希望讀者能建起x對數據的存儲、維護和查詢等問題的興趣,或許這些興趣能夠用在自己感興趣的其他數據上,成為你將來追求專業解決之道的推動。學習完本章后,請思考并討論以下提出的幾個問題:?通過查閱相關資,撰寫-篇與數據管技術發展歷程相關的研究報告。2?談談管信息系統可以應用到你所學專業的哪些方面。7.7本章計算思維的典型案案1:數據壓縮技術,就是用最少的數碼來表示信號的技術。數據壓縮的發展就是創新思維的發展。人類斷通過創新性研究和總結出同的數據壓縮章法,并在計算機多媒體數據壓縮過程中得以應用,是運用計算機科學的基礎概進問題求解的一個典型的計算思維潔動。對我們來脫,計算機能越高效地表達信息越好。沒人希望通過網絡傳送數據時總是耗費過久的時間,也沒人希望計算機總沒有足夠的空間來儲存數據。減小數據占用空間的方法稱為壓縮。在儲存信息之前壓縮數據,需要使用的時候再將其解壓縮,信息能在網絡中快地傳送,而硬盤中也能儲存多數據。從網絡上下載音樂、圖片或視頻的時候壓縮尤其顯得重要。為滿足上述要求,我們需要做兩件事情:壓縮數據以縮小它的體積;然后解壓縮以人們正常閱讀信息。通常這兩道工序由計算機在后臺自動完成。許多人絞盡腦汁想設法創新和改進各種壓縮章法與編碼。經常換個角夾思考問題,沒準兒你我就能發明一種新的章法,就能在壓縮技術發展史上揚名呢。案2:在多媒體技術中,運動捕捉與三維動畫設計就是一個典型的運用建模與仿真的計算思維方法。如,采用運動捕捉技術對演員動作進捕捉,演員動作受限制,動作暢,自然。這些動作是非常具有特點的、維軟件制作的卡通人物模型上非常敏銳的。一旦動作被捕捉,坐標就被映射到任意通過三。如果制作人員想改變以下所捕捉的動作,可以用標準的動畫工具如反應運動學、皮膚變形等對這個動作做進一步的編輯。制作人員也可以對動作增加這些動作是非常具有特點的、維軟件制作的卡通人物模型上如,用三維掃描技術對一個八十歲的白發人進掃描,形成一個數字化人物模型,然后將籃球明星喬的動作捕捉下來,用這些動作或表情數據直接驅動動人模型的運動,觀眾將看到八十人空中扣籃的場面。想像一下如果我們用演員的表演來驅動動物的模型,專講動物王國的故事又將是一個怎樣的場面。案3:虛擬現實技術是用計算機技術生成的一個逼真的具有視、聽、觸及嗅覺的感覺世界,在這個虛擬世界中,人們可直接觀察周圍世界及物體的內在變化,與其中的物體之間進自然的交互,并能實時產生與真實世界相同的感覺,使人與計算機融為一體。這同樣也可以看成是一個建模和仿真的問題。如,帶上特制的頭盔,騎一輛自車,以頭盔顯示器中遠遠看到天安門城樓,你騎車越過水橋,穿過午門…車速太快一下子破墻而入,沖進鑾殿,當你推下頭盔,發覺自己仍然騎在自車上,一步也沒動本章小結與思考木章從多媒體技術的基礎內容出發,首先介紹多媒體技術的基木概和基礎知識,多媒體計算機系統的組成。然后介紹多媒體技術中對聲音、圖像的數字化處過程和方法,并簡要介紹視頻和動畫的基木概。最后以多媒體數據壓縮的必要性和可能性出發,介紹多媒體數據壓縮的基木概。多媒體技術涉及的領域眾多,各種相關技術的研究和發展迅速,因此許多概還在擴充、深入和新。通過木章的學習,希望讀者對多媒體技術的相關內容有一個初步的解,對多媒體技術的基木概、多媒體信息的獲取、表示、存儲、處的基木原及主要技術有所解。學習完木章后,請息考并討論以下提出的幾個問題:?以網絡下載一幅JPG彩色圖片并保存,然后使用Windows的“畫圖工具,將該圖片分別保存為24位位圖和256色位圖。試比較三者的圖像質及文件大小。?請用手機錄制一段WAV格式的音頻,然后選擇一種音頻格式轉換軟件,將該WAV音頻文件按同的壓縮分別轉換成WMA、MP3格式。比較轉換前后視頻文件大小及播放效果。8.8本章計章思維的典型案案1:抽象是計算機問題求解中最基木的方法之一。在抽象過程中,人們剔除細節,只關注與解問題和解決問題相關的概,忽一些對于問題求解重要的細節,把注意集中到事物的木質和核心特性上,從而發現事物的木質的、重要的規。在木章中介紹的網絡協議就是計算機科學與技術中運用抽象忠維解決復雜問題的典型。網絡協議的ISO/OSI七層體系結構模型的建,是將復雜的網絡通信任務分解成七個層次,每個層次是用下一層的接口,完成木層的數據處,并為上一層次提供加高層服務接口越靠近底層的協議也越接近物實現細節,越靠近頂層的協議越接近人們的認識和解,每一層是在下一層的基礎上做高層的抽象,屏蔽細節,提供高級的、木質的服務。借助七層體系結構模型,網絡系統最終完成用戶信息到物線信息的正確、可靠的轉換,實現計算機之間的通信。案2:隨著互聯網的迅猛發展、Web信息的增加,用戶要在信息海洋查找自己所需的信息,就象大海撈針-樣,搜引擎技術恰好解決這-難題。搜引擎是指互聯網上專門提供檢服務的一類網站,這些站點、的服務器通過網絡搜軟件或網絡登錄等方式,將Internet上大網站的頁面信息收集到木地,經過加工處建信息數據庫和引數據庫,從而-對用戶提出的各種檢做出響應,提供用戶所需的信息。弘作為計算思維的主要特征之一,在計算機信息檢方面應用十分廣泛,它也是Web搜引擎的核心技術之一。搜引擎要對所收集到的信息進整、分類、引以產生引庫,其工作原和圖書的弘本質上是一樣的。目前各搜引擎只是具體的算法有所同而已。核心的技術可以公開,但核心的搜算法則是一級機密。案3:盡管計算機的運算速很快,可它們解決問題的速還是存在上限。多核計算機通過并計算加快計算機處數據的速,而在網絡環境中,進一步加快運速的方法是讓同的計算機同時處問題的同部分。即將多臺計算機通過網絡連接在一起,形成分布式網絡系統,另外,還有大規模并超級計算機(數千臺計算機緊密聯系在一起),可用于將-個大的任務劃分成同部分并分配給同的計算機去解決。在本章中所提到的分布式網絡“云計算則體現計算思維中并處的特征。的概則是計算思維高抽象化的體現。案4:網絡負責從一臺計算機傳送消息到另一臺計算機,直到它到達目的地。你可以把網絡想象成一個高速公系統,信息在繁忙的上奔馳著,計算機們在岔口處認真地接收著每條信息,然后將它們轉發到正確的目的地。和真正的道同,這些上的每個岔口處每秒鐘有數以千計的信息們到達。將信息發送給正確目的地被稱為“由。事實上,常常有一個名叫由器的設備作為網絡的一部分,用以傳送所有信息到正確的計算機。如果我們按照這些由的步驟來發送信息,那么我們將得在每兩個計算機間建一個直接連接用于交信息,這好將需要用到無窮根網線。有網絡必有通信,有通信必有協議。從網絡中獲取多的信息和向網絡發布自己的消息,是網絡互連的最主要的動。把自己的網絡同其他的網絡互連有多種方式,其中使用最多的是由器互連。由器互連與網絡的協議有關,由器工作在網絡OSI模型中的第三層,如網絡層。由動作包括兩項基本內容:尋徑和轉發。尋徑即判定到達目的地的最佳徑,由由選擇算法來實現。轉發即沿尋徑好的最佳徑傳送信息分組。計算思維采用抽象和分解來迎戰浩大復雜的任務或者設計巨大復雜的系統。計算思維建在計算過程的能和限制之上,由人由機器執。網絡OSI模型是一個抽象的論模型,由器所使用的協議則是亥模型的分解。由器所采用的算法則是計算思維在機器上的實踐過程,協議和算法為由器設計奠定基礎。本章小結與忠考本章主要介紹計算機網絡的基本概,包括網絡發展的歷程、網絡的定義與功能、網絡的各種分類方法及特性、網絡撲結構、網絡體系結構與協議、常見傳輸介質、設備及其作用。結合日常使用計算機網絡的情況重點、介紹Internet基本概及應用,包括IP地址、域名系統、Internet的各種上網方式及常用的服務等。通過學習計算機網絡的基礎知識,解如何構建小型局域網的使用環境;如何構建網絡服務器成為網絡應用的重要組成部分之一,以一個網絡資源的消費者轉變成為生產者;如何使用各種方式獲取網絡信息資源是十分必要的。對于在高等院校就讀的學生,還需要關注學校可以提供的得天獨厚的信息資源。由于近來互網絡技術的斷發展,催生一系新的應用并走向多元化,人們
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 債轉股投資合同協議格式3篇
- 快遞取件授權書格式3篇
- 無機鹽在金屬表面處理的應用考核試卷
- 農藥對非靶標生物的影響考核試卷
- 籃球運動器材選購指南考核試卷
- 印刷技術在藝術品復制中的精細度考核試卷
- 電池制造自動化與智能化考核試卷
- 2025海鮮冷庫租賃合同范本
- 2025合同法與侵權法簡易速記口訣
- 2025商業房產租賃合同和轉租合同模板
- 《單軸面筋脫水機設計報告(論文)》
- 內分泌系統 腎上腺 (人體解剖生理學課件)
- GPS靜態數據觀測記錄表
- 山西省城鎮教師支援農村教育工作登記表
- 軟件項目周報模板
- 著名中醫婦科 夏桂成教授補腎調周法
- VSM(價值流圖中文)課件
- 考古發掘中文物的采集與保存課件
- 人工氣道的護理劉亞課件
- 專業技術人員
- 拌和場安全檢查表
評論
0/150
提交評論