一、課程內容
1)計算機的發展歷史
2)計算機系統的組成
3)計算機中信息的表示
4)計算機技術的應用
重點:掌握馮.諾依曼機的結構和功能、現代計算機的硬件構成和各個功能部件的作用、計算機軟件的作用、計算機中數值型和非數值型數據的表示。
難點:數值型數據的表示,不同進制數據的轉換、原碼、反碼、補碼和表示三者的轉換關系。
第一節? 計算機的發展歷史
一、計算的概念
計算就是映射或基于規則的符號串的變換過程。
算法是求解某類問題的通用法則或方法,即符號串變換的規則。算法通常由某種精確的語言來表述,算法的執行過程就是計算。
二、計算工具的發展
發展動力:
1)提供計算的速度和精度;
2)計算更方便、降低計算成本、減小計算工具體積;
發展進程:
三年后,劍橋大學根據它的理論,開發出了世界上第一臺存儲程序的電子計算機EDSAC,之后的計算機都是基于馮.諾依曼的存儲程序體系結構的計算機,都被統稱為馮.諾依曼機。
馮.諾依曼機
五大基本部件構成及功能:
1)輸入數據和程序的輸入設備;2)記憶程序和數據的存儲器;3)完成數據加工處理的運算器;4)控制程序執行的控制器;5)輸出處理結果的輸出設備。
三、電子計算機的發展
?根據使用的關鍵電子器件的不同,電子計算機的發展被分為四個時代。
第二節? 計算機系統的組成
一、計算機的特點和功能
1.計算機的特點
1)計算速度快
2)計算精度高
3)邏輯性強
4)數據處理量大
5)自動化程度高
6)應用領域廣泛:日常生活、氣象預報、航天飛行、地質勘探、核爆炸模擬
2.計算機的功能
1)處理數據
???? 對數字、文字、圖像、聲音、視頻等各種形式的信息進行算術運算和邏輯運算。
2)數據存儲
????? 是計算機能采用自動工作方式的基本保證。
3)數據傳輸
????? 是實現信息流動和共享的主要途徑。
計算機系統可以認為是由硬件和軟件兩大部件組成。硬件是各種物理裝置的總稱,包括芯片、板卡、存儲器、外圍設備、線路等;軟件是指運行在硬件上的程序、數據及相關的文檔。
二、計算機的硬件組成
計算機硬件:是指計算機系統中由電子、機械、和光電元器件等組成的各種物理裝置的總稱。
1.中央處理器
專門完成讀取指令和執行指令的部件稱為中央處理器(CPU),它是計算機運算處理的核心部件。
CPU的功能:
1)程序控制;2)操作控制;3)時間控制;4)數據運算;
CPU的組成:
計算機的CPU主要由運算器、控制器、寄存器組成。
1) 運算器:負責邏輯運算與算術運算;
2)控制器:控制器由程序計數器、指令寄存器、指令譯碼器、操作控制器和時序信號產生器等組成。負責協調并控制計算機各個功能部件執行程序的指令序列。
3)寄存器:用來暫時保存運算和控制過程中的中間結果、最終結果以及各種控制、狀態信息。
CPU的性能指標:
1)時鐘頻率(主頻),表示CPU內數字脈沖信號振蕩的速度,單位(Hz)
2)外頻,CPU與主板之間同步運行的速度
3)指令系統和字長:
????? 指令系統:計算機所能執行的全部指令集合;
????? 字長:CPU一次能并行處理二進制數的位數;
2.存儲器
存儲器是計算機系統用來存儲程序和數據的器件,它是一個記憶裝置,也是計算機能夠實現程序存儲控制的基礎。
3.外部設備
外部設備也稱為輸入/輸出設備,為計算機與其使用者提供交互。(鍵盤、鼠標、傳聲器、攝像頭、觸摸屏、顯示器、打印機、音響和耳機等)
4.總線
為了簡化硬件電路設計、簡化系統結構,常用一組線路配置適當的接口電路,這組共用的連接線路被稱為 總線。
總線的分類
總線的指標
總線的帶寬 = 總線的工作頻率 * 總線的位寬/8bit
1)總線的位寬:指的是總線能同時傳送的二進制數據的位數;
2)總線的工作頻率:以 MHz 為單位;
3)總線的帶寬(總線數據傳輸速率):單位時間內總線上創送的數據量,即每秒鐘傳送兆節 字(MB)的最大穩態數據傳輸率。
三、計算機軟件的組成
軟件是為運行、維護、管理和應用計算機所編制的程序、需要的數據及文檔。
1.軟件的發展過程
2.軟件的分類
根據作用不同,通常將軟件大致劃分為系統軟件和應用軟件兩大類
(1)系統軟件:為了有效地使用計算機系統資源、為應用軟件開發與運行提供支持、能為用戶管理與使用計算機提供方便的一類軟件;
(2)應用軟件:應用軟件泛指專門用于解決各種具體應用問題的軟件或程序
3.程序設計語言
程序設計語言比自然語言更嚴謹清晰,沒有二義性,適合硬件設備的執行。
程序設計語言是人與計算機進行交流的語言,經歷了機器語言、匯編語言和高級語言幾個階段。
機器語言:能由計算機直接識別和執行,是最底層的程序語言,工作效率很高,能夠直接驅動?? 硬件工作。但人們記憶和運用都比較困難,語句全部由二進制符號1和0組成。
匯編語言:相對機器語言簡明一些,采用約定的符號來表示各種操作命令和操作數。
高級語言:更接近于人類語言的程序設計語言,易懂,符合人的思維習慣。但不能直接被機器識別,需要編譯或解釋翻譯成機器語言變成一條條具體的指令后再執行控制計算機硬件工作。
編譯:將高級語言編寫的源代碼翻譯成目標程序,將目標程序鏈接成可執行程序后再執行。
解釋:由解釋程序對源程序進行分析,邊解釋邊執行,并立即得到結果,解釋過程中不產生目標程序。
計算機指令:計算機硬件執行某種操作的命令。
指令系統:一臺計算機所有指令的集合構成改機器的指令集,也稱指令系統。
指令集體系結構:規定內容包括:數據類型及格式、指令格式、尋址方式、可訪問地址空間大小、程序可訪問的寄存器個數、寄存器的位數和編號、控制寄存器的定義、I/O空間的編制方式、中斷機制、機器工作狀態的定義和切換、輸入、輸出結構和數據傳送方式、存儲保護方式等。指令集體系結構向上提供了軟件接口、向下規定了計算機硬件要實現的功能。
一條指令中必須明顯或隱含地包含以下信息:
1)操作碼。指定操作類型,如移位、加、減、乘、除、傳送等。
2)源操作數或其地址。指出一個或多個源操作數或其所在的地址,可以是內存地址、寄存器編號或I/O端口,也可在指令中直接給出一個立即數。
3)結果的地址。結果存放的地方志,可以是內存地址、寄存器編號或I/O端口。
4)下一條指令地址。
第三節? 計算機中信息的表示
一、計算機中的信息
信息:信息是一個抽象概念,區別于消息。通常,將人類能夠感知的描述稱為消息,比如看到的事物、聽到的聲音、嗅到的味道。而細信息理解為消息中包含的有意義的內容,而消息是信息的載體。
數據:信息通過各種數據來承載。數據是對客觀事物的性質、狀態以及相互關系等進行記載的符號及其組合,常用的數據形式包括了數字、文字、圖像、聲音、視頻等。
計算機處理的數據分為數值型數據和非數值型數據兩大類。
數值型數據:十進制數、二進制、八進制、十六進制等,有大小和正負之分;
非數值型數據:文字、符號、聲音、圖像等。
二、數值型數據的表示
表示數值型數據,要解決的三個問題:
1) 采用何種進位計數制;2) 如何區分數的正負;3) 如何確定小數點的位置;
1.數制的概念
數制是人們利用數字符號來計數的方法。將數字符號排列,按由低位向高位進位計數的方法稱為進位計數制,概況起來可以說“逢幾進一”,就是幾進制計數制。
基數:是指指數制允許使用的基本數字符號的個數。例如十進制的是0-9的10個基本符號,所以基數是10;
權:一個數字符號出現在數中不同數位上,其所代表的數值是不同的。一個數字符號所表示的數值就等于該數字乘以一個與它所在的數位有關的常數,這個常數稱為位權,簡稱權。
位權等于 基數為底,數字符號所在位置的序號為指數的整數次冪。
任何一種數制,其整數部分最低位的位置序號定義為0,每高一位位置數加1。小數部分的位置序號為負值,小數部分最高位的位置序號為-1,每低一位位置序號減1。
為了方便表示各種進制,通常用括號把數括起來,并在右下角標注數制。
2.二進制數的特點
1)容易實現;2)工作可靠;3)運算簡單;4)便于邏輯運算和邏輯設計;
3.制數之間的轉換
1)十進制轉換成二進制:整數部分“除2取余,自下而上”,小數部分“乘2取整,直到取到需要的位數,自上而下”
拿56.47需要保留3位來說:
56 / 2 = 28 余 0
28 / 2 = 14 余? 0
14 / 2 = 7?? 余? 0
7? / 2 = 3 余 1
3 / 2 = 1 余 1
1 / 2 = 0 余 1
所以整數部位是:111000
(小數部分乘2取整,剩下的小數部分繼續乘2取整,直到取到需要的位數)
0.47*2 =0.96 取整0
0.96*2 =1.88 取整1
0.88*2 =1.76 取整1
所以二進制是:111000.011
2)十六進制轉換為二進制
法則:將十六進制的每位數字用等值的4位二進制數代替即可。
3BF.6A=0011 1011 1111 . 0110 1010
3)二進制轉換為十六進制
法則:整數部位由底向高位方向每四位一組。最后一組不足四位補0.小數部分由高向低位方向每四位一組,最后一組不足4位補0,然后用等值的十六進制數代替每四位一組的二進制數即可。
1111010010.001101 = 0011 1101? 0010.0011 0100 =3D2.34
一個二進制碼元0或1是最小的信息表示單位,稱為bit(比特)或位。通常用8位二進制數構成一個Byte(字節),簡寫為B,作為計算機存儲系統中基本的數據單位。字母在計算機存儲器中占一個字節,一個漢字在計算器中占2個字節。
4.二進制編碼的表示
一個數在計算機內的表達形式稱為“機器數”,它代表的數制,稱為此機器數的“真值”。
在計算機中,數值型信息在計算機內是采用二進制編碼表示的。一般用“0”表示正號,“1”表示負號,將二進制數的最高位用作符號位。
例兩個8位二進制數:A=(+1011011)? B=(-1011011),則他們在機器中可以表示為:
A:01011011????? B:11011011
為了改進帶符號數的運算方法和簡化運算器的硬件結構,人們研究了符號數的多種二進制編碼方法,常用的二進制編碼包括了原碼、反碼和補碼。
補碼的原理其實利用到了一種“取模運算”,通常使用“mod” 或 “%”作為取模的運算符,比如12 mod 8 = 4。
在模數系統中(例如模數為12),一個數減去另一個數(即一個數加上一個負數),等于第一個數加上第二個數的補數:8-2=8+10(mod 12)
5.定點與浮點表示
通常計算機通過約定小數點的位置來實現小數點的表示。小數點位置約定在固定位置的數稱為定點數,小數點位置約定為可浮動的數稱為浮點數。
(1)定點表示
定點表示是指計算機約定:所有數的小數點固定在同一位置不變。
定點表示格式使得計算機只能處理純整數或者純小數,限制了計算機程序處理數據的范圍。為了能讓程序處理任意的數值,計算機中更多地采用浮點格式表示數值信息。
(2)浮點表示
浮點表示法類似于科學計數法。一個數N可以表示為
N =(-1)^s? *? M? *? R^E
其中s取值為0或1,決定定數N的符號。M為數N的全部有效數字,稱為數N的尾數,奇位數反映了數據的精度。R表示基數,如對于十進制,R=10。 E表示R的冪,稱為數N的階數。階數決定了小數點的位置,其位數反映了該浮點數所表示的數的范圍。
三、非數值型數據的表示。
1.西文字符的表示。
采用7位二進制數編碼,最常用的編碼方案是ASCII碼。
1)表中前32個字符和最后一個字符為控制字符,在通信中起控制作用;
2)10個數字字符和26個英文字母由小到大排列,且數字在前,大寫字母次之,小寫字母在最后,這個特點可用于字符數據的大小比較。
3)數字0~9由小到大排序,ASCII碼分別是48-57
4)A的ASCII碼值為65,a的為97,由小到大依次排列,由此可推導出其他字母的值;
2.漢字的表示
漢字的編碼分為以下四類:
(1)輸入碼(外碼)
每個漢字用一個或幾個鍵來表示,這種對每個漢字用相應鍵進行編碼的表示方法稱為漢字的輸入碼,又稱外碼。
(2)交換碼
(3)機內碼
(4)漢字的字形碼
3.位圖的表示
用矩陣表示
4.聲音的表示
對聲音進行采樣、量化和編碼,
四、計算機指令的表示
第四節?? 計算機技術的應用
一、計算機用途
(1)科學計算(2)信息管理(3)自動控制(4)人工智能(5)輔助工程(6)學習娛樂(7)電子商務
二、未來計算機發展趨勢
(1)網絡化(2)智能化(3)巨型化(超級計算機)和微型化(物聯網、微型計算機);