1.機器語言
機器語言是機器指令的集合。機器指令展開來講就是一臺機器可以正確執(zhí)行的命令。電子計算機的機器指令是一列二進制數(shù)字,計算機將之轉(zhuǎn)變?yōu)橐涣懈叩碗娖?,以使計算機的電子器件受到驅(qū)動,進行運算。
2.匯編語言的產(chǎn)生
匯編語言的主體是匯編指令。匯編指令和機器指令的差別在于指令的表示方法上。匯編指令是機器指令便于記憶的書寫格式。
機器指令:1000100111011000
操作:寄存器 BX的內(nèi)容送到AX中
匯編指令:MOV AX,BX
寄存器是CPU可以存儲數(shù)據(jù)的器件
3.匯編語言的組成
由3類指令組成
(1)匯編指令:機器碼的助記符,由對應(yīng)的機器碼
(2)偽指令:沒有對應(yīng)的機器碼,計算機并不執(zhí)行。
(3)其他符號:如+,-,*,/ 等,由編譯器識別,沒有對應(yīng)的機器碼
匯編語言的核心是匯編指令,他決定了匯編語言的特性
4.存儲器
- CPU 是計算機的核心部件.它控制整個計算機的運作并進行運算,要想讓一個CPU 工作,就必須向它提供指令和數(shù)據(jù)。
- 指令和數(shù)據(jù)在存儲器中存放,也就是平時所說的內(nèi)存
- 在一臺PC機中內(nèi)存的作用僅次于CPU。
- 離開了內(nèi)存,性能再好的CPU也無法工作。
- 磁盤不同于內(nèi)存,磁盤上的數(shù)據(jù)或程序如果不讀到內(nèi)存中,就無法被CPU 使用。
5.指令和數(shù)據(jù)
指令和數(shù)據(jù)是應(yīng)用上的概念,在內(nèi)存或磁盤上,指令和數(shù)據(jù)沒有任何區(qū)別,都是二進制信息。
6.存儲單元
存儲器被劃分為若干個存儲單元,每個存儲單元從0開始順序編號;
電子計算機的最小信息單元是bit(比特),就是一個二進制位,8bit組成一個Byte(字節(jié)),微型機存儲器的存儲單元可以存儲Byte,128個存儲單元,就可以存儲128個Byte
7.CPU對存儲器的讀寫
CPU想要進行數(shù)據(jù)的讀寫,必須和外部器件(芯片)進行3類信息的交互
- 存儲單元的地址(地址信息);
- 器件的選擇,讀或?qū)懙拿睿刂菩畔ⅲ?/li>
- 讀或?qū)懙臄?shù)據(jù)(數(shù)據(jù)信息);
那么CPU是通過什么將地址、數(shù)據(jù)和控制信息傳到存儲芯片中的呢?
電子計算機能處理、傳輸?shù)男畔⒍际请娦盘?,電信號?dāng)然要用導(dǎo)線傳送。在計算機中專門有連接CPU和其他芯片的導(dǎo)線,通常稱為總線。
物理上:一根根導(dǎo)線的集合;
邏輯上劃分為 :
- 地址總線
- 數(shù)據(jù)總線
- 控制總線
CPU從內(nèi)存中讀取數(shù)據(jù)過程
(1)CPU通過地址總線將地址信息3發(fā)出。
(2)CPU通過控制線發(fā)出內(nèi)存讀命令,選中存儲器芯片,并通知他,將要從中讀取數(shù)據(jù)。
(3)存儲器將3號單元中的數(shù)據(jù) 08 通過數(shù)據(jù)線送入CPU
對于8086CPU,下面的機器碼能夠完成從3號單元讀數(shù)據(jù):
機器碼:101000000000001100000000
含義:從3號單元讀取數(shù)據(jù)送入寄存器AX
- CPU接收這條機器碼后將完成上面所述的讀寫工作。
- 匯編語言:MOV AX,[3]
8.地址總線
- CPU是通過地址總線來指定存儲單元的。
- 地址總線上能傳送多少個不同的信息,就可以對多少個存儲單元進行尋址
- 一個CPU有N根地址總線,則可以說這個CPU的地址總線的寬度為N。
- 這樣的CPU最多可以尋找2的N次方個內(nèi)存單元。
- 32位計算機尋址能力 2^32= 2^10 * 2^10 * 2^10 *4 = 4GB
9.數(shù)據(jù)總線
- CPU與內(nèi)存或其它器件之間的數(shù)據(jù)傳送是通過數(shù)據(jù)總線來進行的。
- 數(shù)據(jù)總線的寬度決定了CPU和外界的數(shù)據(jù)傳送速度。
10.控制總線
- 前面所講的內(nèi)存讀或?qū)懨钍怯蓭赘刂凭€綜合發(fā)出的:
- 其中有一根名為讀信號輸出控制線負責(zé)由CPU 向外傳送讀信號,CPU 向該控制線上輸出低電平表示將要讀取數(shù)據(jù);
- 有一根名為寫信號輸出控制線負責(zé)由CPU向外傳送寫信號。
11.內(nèi)存地址空間概述
什么是內(nèi)存地址空間呢?
一個CPU的地址線寬度為10,那么可以尋址1024個內(nèi)存單元,這1024個可尋到的內(nèi)存單元就構(gòu)成這個CPU的內(nèi)存地址空間。下面深入討論。
首先需要介紹兩部分基本知識,主板和接口卡。
12.主板
在每一臺PC機中,都有一個主板,主板上有核心器件和一些主要器件。
這些器件通過總線(地址總線、數(shù)據(jù)總線、控制總線)相連。
13.接口卡
計算機系統(tǒng)中,所有可用程序控制其工作的設(shè)備,必須受到CPU的控制。
CPU對外部設(shè)備不能直接控制,如顯示器、音箱、打印機等。直接控制這些設(shè)備進行工作的是插在擴展插槽上的接口卡。
14.各類存儲器芯片
從讀寫屬性上看分為兩類:
隨機存儲器(RAM)和只讀存儲器(ROM)
從功能和連接上分類:
隨機存儲器RAM
裝有BIOS的ROM
接口卡上的RAM
PC機中各類存儲器的邏輯連接情況
裝有BIOS的ROM
BIOS:Basic Input/Output System,基本輸入輸出系統(tǒng)。
BIOS是由主板和各類接口卡(如:顯卡、網(wǎng)卡等)廠商提供的軟件系統(tǒng),可以通過它利用該硬件設(shè)備進行最基本的輸入輸出。在主板和某些接口卡上插有存儲相應(yīng)BIOS的ROM。
15.內(nèi)存地址空間
上述的那些存儲器在物理上是獨立的器件。
但是它們在以下兩點上相同:
- 1、都和CPU的總線相連。
- 2、CPU對它們進行讀或?qū)懙臅r候都通過控制線發(fā)出內(nèi)存讀寫命令。
將各類存儲器看作一個邏輯存儲器:
- 所有的物理存儲器被看作一個由若干存儲單元組成的邏輯存儲器;
- 每個物理存儲器在這個邏輯存儲器中占有一個地址段,即一段地址空間;
CPU在這段地址空間中讀寫數(shù)據(jù),實際上就是在相對應(yīng)的物理存儲器中讀寫數(shù)據(jù)。
- 假設(shè),上圖中的內(nèi)存空間地址段分配如下:
- 地址0~7FFFH的32KB空間為主隨機存儲器的地址空間;
- 地址8000H~9FFFH的8KB空間為顯存地址空間;
- 地址A000H~FFFFH的24KB空間為各個ROM的地址空間。
內(nèi)存地址空間 :
- 最終運行程序的是CPU,我們用匯編編程的時候,必須要從CPU角度考慮問題。(我們學(xué)習(xí)這門課程的核心思維)
- 對CPU來講,系統(tǒng)中的所有存儲器中的存儲單元都處于一個統(tǒng)一的邏輯存儲器中,它的容量受CPU尋址能力的限制。這個邏輯存儲器即是我們所說的內(nèi)存地址空間。
小結(jié):
(1)匯編指令是機器指令的助記符,同機器指令一一對應(yīng)。
(2)每一種CPU都有自己的匯編指令集。
(3)CPU可以直接使用的信息在存儲器中存放。
(4)在存儲器中指令和數(shù)據(jù)沒有任何區(qū)別,都是二進制信息。
(5)存儲單元從零開始順序編號。
(6)一個存儲單元可以存儲 8 個 bit (用作單位寫成“b”),即 8 位二進制數(shù)。
(7)1B = 8b 1KB = 1024B
1MB = 1024KB 1GB = 1024MB
(8)每一個CPU芯片都有許多管腳,這些管腳和總線相連。也可以說,這些管腳引出總線。一個CPU可以引出三種總線的寬度標志了這個CPU的不同方面的性能:
- 地址總線的寬度決定了CPU的尋址能力;
- 數(shù)據(jù)總線的寬度決定了CPU與其它器件進行數(shù)據(jù)傳送時的一次數(shù)據(jù)傳送量;
- 控制總線寬度決定了CPU對系統(tǒng)中其它器件的控制能力。
檢測點
**(1)**CPU的尋址能力為8KB,那么它的地址總線的寬度為 位。解:1KB=1024B,8KB=1024B*8=2^N,N=13。 則地址總線的寬度為13位
**(2)**1KB的存儲器有 *****個存儲單元,存儲單元的編號從 到 ***** 。解:回顧前面:一個存儲單元可以存儲 8 個 bit (用作單位寫成“b”),即 8 位二進制數(shù)。 即:1KB=1024B=1024*8bit 故有1024個存儲單元,存儲單元的編號從0開始到1023
**(3) 1KB的存儲器可以存儲 __ 個bit, _**個Byte。解:1KB=1024Byte=1024*8bit=8192bit
**(4)1GB是個Byte、1MB是 **_個Byte、1KB是 __ ___個Byte。解:1GB=1024 * 1024 * 1024=1073741824Byte 1MB=1024*1024=1048576Byte 1KB=1024Byte
**(5)**8080、8088、80296、80386的地址總線寬度分別為16根、20根、24根、32根,則它們的尋址能力分別為: (KB)、 (MB)、 (MB)、___(GB)。解:由第一題得知:2^N=尋址能力(N為地址總線的寬度即現(xiàn)在題目中的16、20....) 則:2^16=65536byte=64kb 2^20=1048576byte=1mb 2^24=16777216byte=16mb 2^32=4294967296byte=4GB
(6) 8080、8088、8086、80286、80386的數(shù)據(jù)總線寬度分別為8根、8根、16根、16根、32根。則它們一次可以傳送的數(shù)據(jù)為: (B)、 _(B)、 __ (B)、 (B)、 __ (B)。解:由前面的知識可知: (一)8根數(shù)據(jù)總線一次可以傳送8位二進制數(shù)據(jù)(即一個字節(jié))。 (二)一個存儲單元可以存儲 8 個 bit (用作單位寫成“b”),即 8 位二進制數(shù)。 (三)1Byte = 8bit 則:答案為:1 1 2 2 4
**(7) 從內(nèi)存中讀取1024字節(jié)的數(shù)據(jù),8086至少要讀 _ 次,80386至少要讀 __**次。解:由上題可知:8086為16根數(shù)據(jù)總線,一次可以傳送16位二進制數(shù)據(jù)(即兩個字節(jié))。 1024/2=512(次) 80386為32根數(shù)據(jù)總線,一次可以傳送32位二進制數(shù)據(jù)(即四個字節(jié))。 1024/4=256(次)
(8) 在存儲器中,數(shù)據(jù)和程序以 _ 形式存放。解:在存儲器中指令和數(shù)據(jù)沒有任何區(qū)別,都是二進制信息,所以以二進制形式存放。
-
存儲器
+關(guān)注
關(guān)注
38文章
7430瀏覽量
163514 -
匯編語言
+關(guān)注
關(guān)注
14文章
409瀏覽量
35690 -
邏輯控制器
+關(guān)注
關(guān)注
0文章
40瀏覽量
9514 -
機器語言
+關(guān)注
關(guān)注
0文章
35瀏覽量
10740
發(fā)布評論請先 登錄
相關(guān)推薦
評論