




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1章緒論了解計算機在各領域中的應用掌握計算機的定義了解計算工具的發展歷史了解計算機硬件的發展歷史及趨勢了解計算機軟件的發展歷史理解計算機軟件的執行過程掌握計算機的分類和特點了解計算機科學與技術學科的研究范疇了解計算機中的基本問題學習目標目前一頁\總數四十九頁\編于十一點主要內容計算機在各領域中的應用1第1章緒論計算的歷史2計算機科學與技術學科簡介3目前二頁\總數四十九頁\編于十一點主要內容計算機在各領域中的應用1第1章緒論計算的歷史2計算機科學與技術學科簡介3目前三頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在交通運輸業的應用坐席預定系統、交通控制系統、全球衛星定位系統(GPS)和智能監控系統等就是計算機在交通運輸業的典型應用。目前四頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在交通運輸業的應用坐席預定系統、交通控制系統、全球衛星定位系統(GPS)和智能監控系統等就是計算機在交通運輸業的典型應用。目前五頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在教育業的應用計算機在教育領域中的典型應用有校園網、遠程教育、計算機輔助教育(Computer-AidedInstruction,CAI)等。目前六頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在商業中的應用計算機在零售業的應用,改變了人們的購物環境和方式。隨著互聯網行業的發展而發展起來的電子商務,更是從根本上改變了企業的供銷模式和人們的消費模式。目前七頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在銀行和證券業的應用計算機和網絡從根本上改變了銀行和金融機構的業務處理模式。計算機在證券市場中的應用為投資者進行證券交易提供了必不可少的環境。圖1.9計算機在證券業中的應用圖1.10計算機在銀行業中的應用
目前八頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在醫學中的應用醫學專家系統可以將著名醫學專家或醫生的知識和經驗存儲到知識庫中,并建立從病情表述和檢測指標到診斷結論以及治療方案的推理機構。這樣,根據患者的病情和各種檢測數據,就可以診斷出所患的疾病以及作出治療方案。對于邊遠地區,醫學專家系統可以為患者提供當地醫院無法提供的醫療服務。一些現代化的醫療檢測儀器如超聲波儀、心電圖儀、腦電圖儀、核磁共振儀、X光攝像機等醫療檢測設備中也嵌入了計算機,可以采用數字成像技術,使得圖像更加清晰。圖1.11計算機在醫學中的應用
目前九頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在科學研究中的應用計算機用在科學研究領域,可進行科技文獻的存儲與查詢、復雜的科學計算、系統仿真與模擬、復雜現象的跟蹤與分析以及知識發現等。圖1.12計算機在科學研究中的應用
目前十頁\總數四十九頁\編于十一點1.1計算機在各領域的應用計算機在文化藝術業的應用藝術家如果能夠以計算機為工具進行音樂、舞蹈、美術、攝影、電影與電視等技術創作,則能夠創作出更具特色、效果更佳的作品。很多游戲設計人員借助于計算機設計出引人入勝的計算機游戲軟件。使用計算機控制的電子合成器可以模擬一種或多種樂器的聲音。藝術家可以使用專門的軟件作為工具來創作繪畫、雕塑等技術作品;在影片制作過程中利用計算機可以獲得過去無法獲得的效果。
目前十一頁\總數四十九頁\編于十一點主要內容計算機在各領域中的應用1第1章緒論計算的歷史2計算機科學與技術學科簡介3目前十二頁\總數四十九頁\編于十一點1.2計算的歷史什么是計算機能夠按照事先存儲好的指令序列,接收用戶輸入的數字、文本、圖像、聲音等數據,并對其進行存儲、處理和結果輸出的系統。
圖1.14計算機處理流程目前十三頁\總數四十九頁\編于十一點1.2計算機的歷史輸入到計算機系統的數據既可以是用戶通過鍵盤輸入的,也可以來自于其他的設備,如數碼相機或數字攝像機或其他的計算機。輸入設備如鍵盤或鼠標,可收集輸入數據并將其轉換成計算機能夠識別的信號,以供計算機存儲和處理。輸出指的是計算機的處理結果。常見的計算機輸出形式有報表、文檔、音樂、圖形和圖像。用戶可通過計算機的顯示屏查看輸出結果,也可將其通過打印機在紙上進行打印或者是刻錄到光盤。目前十四頁\總數四十九頁\編于十一點1.2計算機的歷史計算工具的發展歷史目前十五頁\總數四十九頁\編于十一點1.2計算機的歷史計算工具的發展歷史到了19世紀初,英國數學家查爾斯·巴比奇(CharlesBabbage,1792-1871)取得了突破性進展,計算機不但能快速地完成加、減、乘、除運算,還能夠自動完成復雜的運算,從手動機械躍入自動機械的新時代。同時巴比奇還提出了分析機的新設計思想。分析機(如圖1.22所示)的重要貢獻就在于它包括了現代計算機所具有的5個基本組成部分。(1)輸入裝置:用穿孔卡片輸入數據。(2)存儲裝置:既能存儲運算數據,又能存儲運算結果。(3)資料處理裝置:完成加、減、乘、除運算。還能根據運算結果的符號改變運算的進程。也就是能實現現代的條件轉移指令。(4)控制裝置:使用指令進行控制,用程序自動改變操作次序。(5)輸出裝置:用穿孔卡片或打印方法輸出。目前十六頁\總數四十九頁\編于十一點1.2計算機的歷史
巴比奇巴比奇分析機目前十七頁\總數四十九頁\編于十一點1.2計算機的歷史英國著名詩人拜倫的女兒Ada(AdaAugustaLovelace,1815-1852)在劍橋大學幫助巴比奇研究分析機時,她意識到巴比奇對新分析機的設計思想完全可行,也非常支持巴比奇的工作。Ada建議用二進制存儲取代原設計的十進制存儲。她指出分析機可以像雅各織布機一樣進行編程,并發現了程序設計和編程的基本要素,還為某些計算開發了一些指令。由于她在程序設計上的開創性工作,被譽為世界上第一位程序員。目前十八頁\總數四十九頁\編于十一點1.2計算機的歷史第一次采用電器元件來制造計算機的是德國工程師朱斯(K.Zuse)。1941年,他的Z-3計算機開始運轉,這是世界上真正的第一臺通用程序控制計算機(如圖1.23所示)。Z-3不僅全部采用繼電器,同時采用了浮點記數法、二進制運算、帶數字存儲地址的指令形式等。1936年美國哈佛大學應用數學教授霍華德·艾肯(HowardAiken,1900-1973)受了巴比奇和愛達的筆記后,受到啟發并在IBM公司的大力支持下,研制成功了被稱為Mark-I的計算機(如圖1.24所示)。Mark-I是個龐然大物,長15.5米,高2.4米,由75萬個零部件組成。它用大量的繼電器作為開關元件,用十進制計數齒輪組作為存儲器,用穿孔紙帶進行程序控制。目前十九頁\總數四十九頁\編于十一點1.2計算機的歷史第二次世界大戰期間,美國賓夕法尼亞大學莫爾學院電工系同阿伯丁彈道研究實驗室共同負責為陸軍每天提供六張火力表,這一任務非常困難和緊迫。正是在該背景下,促成了第一臺電子計算機ENIAC(ElectronicNumericalIntegratorandComputer,簡稱ENIAC)的產生。ENIAC起初是專門用于彈道計算,后來經過多次改進而成為能進行各種科學計算的通用計算機。ENIAC占地面積達170平方米,差不多相當于10間普通房間的大小;使用了大約18000只電子管,1500個繼電器,70000只電阻,18000只電容。ENIAC的最大特點就是采用了電子線路來執行算術運算、邏輯運算和儲存信息。由于廣泛采用了電子線路,ENIAC同以往計算機相比最突出的優點就是高速度。目前二十頁\總數四十九頁\編于十一點1.2計算機的歷史目前二十一頁\總數四十九頁\編于十一點1.2計算機的歷史計算機硬件的發展歷史第一代計算機以真空管作為主要元器件,體積龐大,價格昂貴,采用二進制代替十進制,程序雖然可以存儲,但存儲設備還比較落后,輸入輸出裝置主要用穿孔卡、速度很慢。只有專家們方可使用。第二代計算機以晶體管代替電子管,減小計算機體積的同時,也降低了費用,使得中小企業也能負擔得起。普遍采用磁心存儲器作為主存,并且采用磁帶和磁盤作為輔存,使存儲容量增大,可靠性提高,為操作系統的發展奠定了硬件基礎。與此同時,變址寄存器、浮點數據表示、間接尋址、中斷、I/O處理機等現代計算機體系結構的特性相繼出現。同時程序設計語言也有了很大發展,先是用匯編代替了機器語言,接著又出現了高級語言FORTRAN、COBOL。第三代計算機用集成電路取代晶體管,更加減少了計算機的成本和大小。用半導體存儲器淘汰了磁心存儲器,普遍采用了微程序設計技術,系統軟件與應用軟件都有很大發展,出現了第一代小型計算機(minicomputer),如DEC的PDP-8。目前二十二頁\總數四十九頁\編于十一點1.2計算機的歷史計算機硬件的發展歷史第四代計算機用微處理器(microprocessor)或超大規模集成電路VLSI(VelyLargeScaleIntegration)取代了普通集成電路。存儲容量進一步擴大,輸入采用了OCR(字符識別)與條形碼,輸出采用了激光打印機,以及引進光盤和新的程序設計語言Pascal、Ada。微型計算機也蓬勃發展起來,使得計算技術由集中化向分散化轉變。與此同時,數據通信、計算機網絡、分布式處理有了很大的發展。Internet、廣域網(WAN)、城域網(CAN)和局域網(LAN)的發展將世界各地緊密地聯系在一起。當前的計算機依然屬于第四代計算機。第五代計算機很多國家的學術團體都對未來計算機的發展有所研究和期望。第五代計算機系統將會擁有智能特性,帶有知識表示與推理能力,可以模擬人的設計、分析、決策、計劃以及其他智能活動并具有人機自然通信能力,可作為各種信息化企業的智能助手。目前二十三頁\總數四十九頁\編于十一點1.2計算機的歷史計算機硬件的發展歷史
計算機的發展趨勢為巨型化、微型化、多媒體化、網絡化和智能化。(1)巨型化巨型化是指運算高速、大存儲容量和強功能的超大型計算機。這不僅是尖端科學(如氣象、宇航、核反應等)及新興學科(生物工程、基因工程)的需要,也為了使得計算機具有人腦學習、推理的復雜功能。(2)微型化大規模和超大規模集成電路的發展,使得微型機可以滲透到家用電器、導彈彈頭等中、小型機無法進入的領域。(3)多媒體化以數字技術為核心的圖像、聲音等與計算機、通信融為一體的信息環境。通過這種環境,無論在什么地方,只需要簡單的設備,就能自由自在地以接近自然的交互方式收發所需要的各種媒體信息。(4)網絡化不受地理區域的限制,將分布在不同地點的不同機型的計算機和專門的外部設備由通信線路互聯組成一個規模大、功能強的網絡系統,以達到資源和信息共享的目的。(5)智能化讓計算機能夠模擬人的感覺、行為和思維過程,使計算機具有一定的邏輯推理、學習和證明等能力,形成智能型計算機。目前二十四頁\總數四十九頁\編于十一點1.2計算機的歷史計算機軟件的發展歷史第一代軟件(1951-1959) 第一代軟件由機器語言編寫。機器語言是內置在計算機電路中的指令。即使求“3+5”的結果這一簡單計算就需要三條完全由0、1組成的指令。對程序設計人員而言,需要面對一系列的0、1數字組合,他們不得不記住每個0、1串代表的含義。由于編寫機器語言程序非常乏味,就有程序設計員開發出了一種使用助記碼表示的人工程序設計語言,這些語言被稱為“匯編”語言。雖然匯編語言的出現簡化了程序設計的工作。但每個程序在計算機上執行時采用的最終形式依然是機器語言。所以,為了讓匯編語言編寫的程序能夠運行,還需要翻譯程序或匯編器,將每條用助記碼編寫的程序指令翻譯成等價的機器語言。其流程如圖所示。匯編源程序匯編程序翻譯器機器語言程序輸入輸出目前二十五頁\總數四十九頁\編于十一點1.2計算機的歷史計算機軟件的發展歷史第二代軟件(1959-1965)第二代軟件時期開發的是高級語言,目前仍在使用有FORTRAN、COBOL和Lisp。高級語言的出現使得可以在多臺計算機上運行同一個程序。因為每中高級語言都有配套的翻譯程序,它可將高級語言編寫的語句翻譯成等價的機器語言指令。最早時,高級語言的語句通常被翻譯成匯編語言,然后這些匯編后的語句再被翻譯成機器指令。其流程如圖所示。匯編源程序匯編程序翻譯器機器語言程序輸入輸出高級語言程序輸入高級語言翻譯器輸出目前二十六頁\總數四十九頁\編于十一點1.2計算機的歷史計算機軟件的發展歷史第三代軟件(1965-1971)
隨著計算機處理速度的不斷提高,人機矛盾日益凸顯。當人們準備下一批處理數據時,計算機無所事事。為了讓計算機的所有資源都在計算機的控制中,需要編寫一種程序來決定何時運行什么程序,這種程序被稱作操作系統。
應用程序包系統軟件高級語言匯編語言機器語言目前二十七頁\總數四十九頁\編于十一點1.2計算機的歷史計算機軟件的發展歷史第四代軟件(1971-1989)20世紀70年代出現了結構化程序設計方法,這是一種有邏輯、有規則的程序設計方法。該階段出現了Pascal、Modula-2、BASIC和C等結構化程序設計語言。結構化程序設計語言C++還允許用戶使用低級語句,成為了業界的選擇。與此同時,更好、更強大的操作系統也被開發出來了。AT&T公司開發了UNIX系統;為IBMPC機開發的PC-DOS和為了兼容開發的MS-DOS系統都成了個人計算機的標準系統。Macintosh機的操作系統在引入了鼠標和點擊式的圖形界面,徹底改變了人機交互的方式。很多高品質的、價格合理的應用程序軟件包如電子表格軟件、文字處理軟件和數據庫管理系統等,也都被系統程序員開發了出來。目前二十八頁\總數四十九頁\編于十一點1.2計算機的歷史計算機軟件的發展歷史第五代軟件(1990至今)這一時期,操作系統不斷改進,Microsoft公司的Windows操作系統在個人計算機市場占有顯著優勢。也是微軟公司的Office套件也逐漸取代了以往的辦公自動化軟件。面向對象的程序設計方法成為大型程序設計項目的首選。結構化設計基于任務的層次劃分,而面向對象的設計則基于數據對象的層次劃分。Sun公司為面向對象的編程方法設計的Java語言成為了C++語言的競爭對手。目前二十九頁\總數四十九頁\編于十一點1.2計算機的歷史計算機的分類從不同的角度,可以將計算機分成不同的種類。但目前被廣泛采用的方法是美國電氣和電子工程師協會(IEEEInstituteofElectricalandElectronicsEngineers)于1989年11月提出的標準,即把計算機劃分為巨型機、小巨型機、大型機、小型機、工作站和個人計算機6類。(1)巨型機(SuperComputer)在所有計算機類型中功能最強,價格最貴,浮點運算速度最快,常用于戰略武器設計、空間技術、石油勘探的概念領域。往往成為衡量一個國家經濟實力和科技水平的重要標志。(2)小巨型機(MiniSuperComputer)功能略低于巨型機,運算速度每秒10億次,價格只有巨型機的十分之一,可滿足一些較高應用需求的用戶。(3)大型主機(Mainframe)也稱大型電腦,整機運算速度高達每秒30億次,具有很強的處理和管理能力。是規模較大的銀行、高校和科研院所常用的一種機型。(4)小型機(MiniComputer)結構簡單,可靠性高,成本較低,不需要經長期培訓即可維護和使用,比較適用于中小客戶。(5)工作站(Workstation)介于小型機和個人計算機之間的一種高檔微機,主要用于特殊的專業領域,如圖像處理、計算機輔助設計等。(6)個人計算機(PersonalComputer,簡稱PC)日常生活中最常見的一種機型。因其軟件豐富、處理能力強、價格便宜等優勢深受普通用戶的青睞。目前,PC機除了臺式的,還有膝上型、筆記本型、掌上型、手表型等。目前三十頁\總數四十九頁\編于十一點1.2計算機的歷史計算機的特點運算速度快
目前計算機的運算速度(也稱處理速度)用MIPS(每秒百萬條指令)來衡量。計算機如此高的運算速度是其他任何計算工具無法比擬的,它使得以往需要幾年甚至幾十年才能完成的復雜運算任務,現在只需要幾天、幾小時、甚至更短的時間就可完成計算精度高 計算機內的數采用二進制編碼,數的精度由該數所對應的二進制碼的位數決定,所以通過增加數的二進制位數來提高精度,位數越多精度就越高。具有記憶能力
計算機具有內存和外部存儲器,內存用來存儲正在運行中的程序和有關數據,外存儲器用來存儲需要長期保存的數據。這就像人的“大腦”一樣,能夠記憶數據。具有邏輯判斷能力計算機在運行過程中,能夠根據上一步的結果判斷下一步該執行的指令。這就使得計算機不僅能夠完成數值計算工作,還可以完成非數值數據的處理工作,如信息檢索、圖像識別等。目前三十一頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介計算機科學與技術學科的研究范疇計算機與技術的研究范疇包括了計算機理論、硬件、軟件、網絡及應用等,按照研究的內容,可以劃分為基礎理論、專業基礎和應用三個層面。在這些研究領域中,有的方面前人已經研究得比較透徹,取得了很多成果,需要我們在后續課程中去學習、掌握和繼承;有的方面還不夠成熟和完備,需要我們進一步去研究、完善和發展。目前三十二頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介計算機理論的研究內容離散數學:是計算機科學的理論基礎,主要研究數理邏輯、集合論和圖論等。算法分析理論:主要研究算法設計與分析中的數學方法與理論,如概率論、數理統計等,用于分析算法的時間復雜度和空間復雜度。形式語言與自動機理論:研究程序設計語言以及自然語言的形式化定義、分類、結構等有關理論以及識別各類語言的形式化模型及其相互關系。程序設計語言理論:運用數學和計算機科學的理論研究程序設計語言的基本規律,包括形式語言文法理論、形式語義學(如代數語義、操縱語義等)和計算語言學等。程序設計方法學:研究如何從號結構的程序定義出發,通過對構成程序的基本結構的分析,給出能保證高質量程序的各種程序設計規范化方法,并研究程序正確性證明理論、形式化驗證技術等。目前三十三頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介計算機硬件的研究內容元器件與存儲介質:研究構成計算機硬件的各類電子的、磁性的、超導的、光學的元器件和存儲介質。微電子技術:研究各類集成電路、大規模集成電路、超大規模集成電路芯片的結構和制造技術等。計算機組成原理:研究通用計算機的硬件組成結構以及運算器、控制器、存儲器、輸入和輸出設備等各部件得構成和工作原理。微型計算機技術:研究使用廣泛的微型計算機的組成原理、結構、芯片、接口及其應用技術。計算機體系結構:研究計算機軟硬件的總體結構、各種新型體系結構(如并行計算機系統、陳列計算機、集群計算機、網絡計算機)以及提高計算機性能的各種新技術。目前三十四頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介計算機軟件的研究內容程序設計語言的設計:設計新穎的程序設計語言,包括定義程序設計語言的詞法規則、語法規則和語義規則。數據結構與算法:對數據的邏輯和物理結構定義相應的運算,設計出實現這些運算的算法,并確保經過這些運算后所得到的新結構仍然是原來的結構類型。常用的數據結構包括:線性表、棧、隊列、串、樹和圖等。相關的算法有查找、內部排序和外部排序等。程序設計語言翻譯系統:研究程序設計語言翻譯系統的基本理論、原理和實現技術,如詞法規則和語法規則的形式化定義、程序設計語言翻譯系統的體系結構及其各模塊(如詞法分析、語法分析、中間代碼生成、優化和目標代碼生成)的實現技術。操作系統:研究如何自動地對計算機系統的軟件和硬件資源進行有效的管理,最大限度地方便用戶的使用。目前三十五頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介數據庫系統:研究數據模型以及數據庫系統的實現技術。其中包括:數據模型、數據庫語言、數據庫的存儲結構、查詢處理、查詢優化、事務管理、數據庫應用以及數據倉庫等。算法設計與分析:研究計算機相關領域中常用算法的設計方法,分析算法的時間和空間復雜度以評價算法的優劣。有排序算法、串匹配算法、并行算法和模糊算法等。軟件工程學:指導計算機軟件開發和維護的工程學科,研究如何采用工程的概念、原理、技術和方法來開發和維護軟件。可視化技術:可視化技術研究如何用圖形和圖像來直觀地表征數據,即用計算機來生成、處理、顯示能在屏幕上逼真運動的三維形體,并能與人進行交互式對話。目前三十六頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介計算機網絡的研究內容網絡結構:研究局域網、遠程網、Internet、Intranet等各種網絡的拓撲結構和構成方法及接入方式。數據通信與網絡協議:研究實現連接在網絡上的計算機之間進行數據通信(如衛星、微波、寬帶、光纖、有線、無線)的介質、原理、技術以及通信雙方必須共同遵守的各種規約。網絡服務:研究如何為計算機網絡的用戶提供方便的遠程登錄、文件傳輸、電子郵件、信息瀏覽、文檔查詢、網絡新聞以及全球范圍內的超媒體信息瀏覽等服務。網絡安全:研究計算機網絡中的設備安全、軟件安全、信息安全以及病毒防治等技術,以提高計算機網絡的安全性和可靠性。目前三十七頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介計算機應用的研究內容軟件開發工具:研究軟件開發工具的有關技術(如程序調試技術、代碼優化技術、軟件重用技術、軟件自動生成技術等)以及研制各種新型的程序設計語言及其翻譯系統、文字和報表處理工具、數據庫開發工具、多媒體開發工具等。完善已有的應用系統:根據最新的技術平臺和實際需求對已有的應用系統進行升級和改造,使其功能更加強大,更加易于使用。開拓新的應用領域:研究如何打破計算機的傳統應用領域,擴大計算機在國民經濟和社會生活中的應用。人-機工程:研究人與計算機的交互和協同技術,為人們使用計算機提供更加友好的環境和界面。目前三十八頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介計算機科學與技術學科中的基本問題漢諾塔問題證比求易法—并行計算找零問題哲學家進餐問題目前三十九頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介漢諾塔問題相傳,印度教的天神梵天在創造地球時建了一座神廟,廟里豎有3根寶石柱子,柱子由一個銅座支撐。梵天將64個直徑大小不一的金盤子,按照從大到小的順序依次套放在第一根柱子上,形成一座金塔(梵天塔或漢諾塔)。天神讓廟里的僧侶們將第一根柱子上的64個盤子借助第二根柱子全部移到第三根柱子上,即將整個塔遷移,同時定下3條規則:每次只能移動一個盤子;盤子只能在3根柱子上來回移動,不能放在他處;在移動過程中,3根柱子上的盤子必須始終保持大盤在下,小盤在上。當時僧侶們在對該問題分析之后預言,當所有的進盤子都移動到第三根柱子上時,世界就將在一聲霹靂中消滅,而梵塔、廟宇和眾生也都將同歸于盡。如果沒有科學的分析過程,也許我們會認為以上說法是駭人聽聞的。但當使用計算機解決這一問題時,漢諾塔問題就是一個典型的用遞歸方法求解的問題。遞歸是計算學科中的一個重要概念。目前四十頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介所謂遞歸,就是將一個較大的問題歸約為一個或多個子問題的求解方法。按照遞歸的方法,可將64個盤子的移動問題轉化為求解63個盤子的問題。如果63個盤子的能解決,則可先將63個盤子移動到第二根柱子上,再將一個盤子直接移動到第三根柱子上,最后又一次將63個盤子借助于第一根柱子,移動到第三根柱子上。依此類推,63個盤子的移動問題又可轉化為62個盤子的移動問題,62個盤子的移動問題又可轉化為61個盤子的移動問題,直到1個盤子的求解問題。再由1個盤子的漢諾塔問題的求解求出2個盤子的移動方法,直到求出64個盤子的移動方法。由此,可用C語言對該問題的求解進行描述。Hanoi(i,charleft,charmiddle,charright){Ifi==1Move(1,left,_,right);Else{Hanoi(n-1,left,middle,right);Move(1,left,_,right);Hanoi(n-1,middle,left,right);}}目前四十一頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介證比求易法—并行計算從前,有一個酷愛數學的年輕國王艾述向鄰國一位聰明美麗的公主秋碧貞楠求婚。公主出了這樣一道題:求出48770428433377171的一個真因子。若國王能在一天之內求出答案,公主便接受他的求婚。國王回去后立即開始逐個數地進行計算,他從早到晚,共算了3萬多個數,最終還是沒有結果。于是國王向時任宰相的大數學家孔煥石求教,大數學家在仔細思考后認為這個數為17位,則最小的一個真因子不會超過9位,于是他給國王出了一個主意:按自然數的順序給全國老百姓每人編一個號發下去,讓每個老百姓用自己的編號去除這個數,除盡了立即上報。最后,國王用這個方法求婚成功。這位數學家所用的方法就是并行算法,在某些場合,用順序算法難以求解的問題,可用并行算法解決。但大家也會意識到一個問題,使用并行算法時,空間方面的復雜度較高,如果空間受到了限制,那么需要用計算機解決的難解性問題,還需要從降低時間復雜度入手。目前四十二頁\總數四十九頁\編于十一點1.3計算機科學與技術學科簡介找零問題有一顧客拿一面值100元的鈔票在超市買了4元錢的商品,收銀員需要找96元的零錢,該如何選擇呢?一般情況下,雖然可有多種找法,但是收銀員會憑直覺選擇1張50元的,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 早安正能量測試題及答案
- 掌握金融科技對證券行業的影響試題及答案
- 2025年銀行從業資格證考試信息反饋機制試題及答案
- 重點提煉:微生物檢驗技師試題及答案
- 2024是項目管理考試的關鍵年份試題及答案
- 地磚打磨施工方案怎么寫
- 2024年項目管理考試講義試題及答案
- 遠程項目管理的策略探討試題及答案
- 寧夏擠塑板地面施工方案
- 液壓馬達的排量控制考核試卷
- 2025年廣東韶關南雄市衛生健康局下屬事業單位招聘工作人員67人歷年高頻重點提升(共500題)附帶答案詳解
- 撫養費糾紛答辯狀范文
- 《專業技術人才管理》課件
- 跨國合作:應對全球傳染病挑戰
- 大班韻律《朱迪警官破案記》
- 《永輝超市S店庫存管理問題及產生原因和優化建議》8700字(論文)
- 《光儲充一體化電站技術規范》標準編制說明+征求意見稿
- 【MOOC】中國傳統藝術-篆刻、書法、水墨畫體驗與欣賞-哈爾濱工業大學 中國大學慕課MOOC答案
- 菜鳥驛站轉讓合同協議書范本
- 多物理場模擬仿真
- 常見職業病危害和預防基礎知識
評論
0/150
提交評論