本系列文章是小甲魚零基礎匯編語言學習的學習筆記,參考資料書是王爽老師寫的《匯編語言(第3版)》
1、匯編語言的主體是匯編指令
如 MOV AX,BX 寄存器BX的內容 送到AX中
2、寄存器
嵌入到CPU中的內存,一個CPU有多個寄存器,AX是其中一個寄存器的代號,BX是另一個寄存器的代號
3、如何讓計算機認識程序猿編寫的匯編指令?
首先匯編指令被傳給編譯器,然后被編譯器解釋成機器碼,這樣計算機才能運行。
4、匯編語言的組成
(1)匯編指令(機器碼的助記符)
(2)偽指令(由編譯器執行)
(3)其它符號(由編譯器識別)
匯編語言的核心是匯編指令,它決定了匯編語言的特征。
5、存儲器
CPU是計算機的核心部件,它控制整個計算機的運作並進行運算,要想讓一個CPU工作,就必須向他提供指令和數據。
指令和數據在存儲器中存放,也就是平時所說的內存。一台PC中內存的作用僅次於CPU。
6、存儲單元
存儲器被划分為若干個存儲單元,每個存儲單元從0開始順序編號。一個存儲器有128個存儲單元,編號從0--127
1KB=1024B 1MB=1024KB 1GB=1024MB 1TB=1024GB
7、CPU想進行數據的讀寫,必須和外部器件(芯片)進行三類信息的交互:
存儲單元的地址(地址信息)
器件的選擇,讀或寫命令(控制信息)
讀或寫的數據(數據信息)
8、CPU對內存的讀寫的邏輯上的划分圖示:

9、地址總線
CPU通過地址總線來指定存儲單元,地址總線上能夠傳送多少個不同的信息,CPU就可以對多個存儲單元進行尋址。
地址總線是如何發送地址信息的呢?
首先CPU通過地址總線發送一個二進制的地址數據到內存當中,如下圖所示:


一個CPU有N根地址總線,則可以說這個CPU的地址總線的寬度為N,即這個CPU的位數是N,如32位的CPU就有32根地址總線
這樣的CPU最多可以尋找2的N次方個內存單元。
10、數據總線
CPU與內存或其它器件之間的數據傳送是通過數據總線來進行的,數據總線的寬度決定了CPU和外界的數據傳送速度。

11、控制總線
CPU對外部器件的控制是通過控制總線來進行的。在這里控制總線是總稱,控制總線是一些不同控制線的集合。
12、內存地址空間
一個CPU的地址寬度為10,那么可以尋址1024(2^10)個內存單元,這1024個可尋址的內存單元構成了這個CPU的內存地址空間。
要具體理解CPU的內存空間就要先了解兩部分的基本知識,主板和接口卡。
(1)主板
主板上有核心器件和主要器件,這些器件通過總線相連接。
(2)接口卡
CPU對外部設備不能直接控制,直接控制外部設備的是插在擴展插槽上的接口卡
存儲器芯片(CPU的心臟):
從讀寫屬性上來區分的話,分為兩類:一類是隨機存儲器(RAM,斷電后數據遺失 ),另一類是只讀存儲器(ROM)
從功能和連接上來區分的話,分為三類:隨機存儲器RAM,裝有BIOS的ROM,接口卡上的RAM
PC集中各類存儲器的邏輯連接圖示:

8086PC機的內存地址空間分配圖:

小結:
地址總線的寬度決定了CPU的尋址能力;
數據總線的寬度決定了CPU與其它器件進行數據傳送的一次數據傳送量;
控制總線寬度決定了CPU對系統中其它器件的控制能力。