一. 為什么學(xué)習(xí)匯編
- 匯編語言仍然在發(fā)揮不可替代的作用
- 效率
- 運行效率: 開發(fā)軟件核心部件, 快速執(zhí)行和實時響應(yīng)
- 開發(fā)效率: 做合適的事, 開發(fā)效率無敵
- 底層: 計算機(jī)及外圍設(shè)備的驅(qū)動程序
- 操作系統(tǒng)的內(nèi)核
- 嵌入式系統(tǒng)
- 效率
- 在學(xué)習(xí)計算機(jī)中起到獨特作用
- 便于加深對計算機(jī)原理和操作系統(tǒng)課程的理解
- 感知體會和理解機(jī)器的邏輯功能
- 學(xué)會底層程序的調(diào)試和錯誤分析方法
二. 機(jī)器語言與機(jī)器指令
- 機(jī)器語言是機(jī)器指令的集合
- 機(jī)器指令是一臺機(jī)器可以正確執(zhí)行的命令
- 之前機(jī)器指令由一串二進(jìn)制數(shù)表示, 010101010
三. 匯編語言與匯編指令
匯編語言的主體是匯編指令
-
匯編指令和機(jī)器指令的差別在于指令的表示方法上
- 匯編指令是機(jī)器指令便于記憶的書寫格式
- 匯編指令是機(jī)器指令的助記符
機(jī)器指令:
1000100111011000
操作: 將寄存器BX 內(nèi)容送到AX 中
匯編指令:
MOV AX BX
匯編語言程序示例
四. 計算機(jī)的組成
CPU 是計算機(jī)的核心部件, 它控制整個計算機(jī)的運作并進(jìn)行計算. 想讓一個CPU 工作就必須向它發(fā)送指令和數(shù)據(jù)
指令和數(shù)據(jù)在存儲器(內(nèi)存) 中存放, 離開內(nèi)存, CPU 也無法工作
1. 指令和數(shù)據(jù)表示
兩者都是存儲在內(nèi)存或磁盤中, 都是二進(jìn)制數(shù)據(jù)
一串二進(jìn)制數(shù)據(jù)是數(shù)據(jù)還是指令, 取決于CPU 怎么看待的
2. 存儲單元
存儲器被劃分為若干存儲單元, 每個都是從0 開始順序編號
一個存儲器有128 個存儲單元, 編號0~127
內(nèi)存空間很大, 8086 有20 條數(shù)據(jù)線, 尋址空間為, 為1MB
3. 總線
連接CPU 和其他芯片的導(dǎo)線, 通常稱為總線
物理上就是一根根導(dǎo)線的集合
邏輯上劃分為: 地址總線, 數(shù)據(jù)總線, 控制總線
CPU 是通過地址總線來指定存儲單元的
地址總線寬度, 決定了可尋址的存儲單元大小
N 根地址總線, 寬度為N, 對應(yīng)尋址空間為
CPU與內(nèi)存或其他器件之間的數(shù)據(jù)傳送是通過數(shù)據(jù)總線來進(jìn)行的
數(shù)據(jù)總線的寬度決定了CPU 和外界的數(shù)據(jù)傳送速度
CPU 通過控制總線對外部器件進(jìn)行控制
控制總線是一些不同控制線的集合
寬度決定了CPU 對外部器件的控制能力
4. 性能圖
CPU | 地址總線寬度 | 尋址能力 | 數(shù)據(jù)總線寬度 | 一次傳送數(shù)據(jù) | 讀取1KB數(shù)據(jù)次數(shù) |
---|---|---|---|---|---|
8080 | 16 | 64KB | 8 | 1B | 1024 |
8088 | 20 | 1MB | 8 | 1B | 1024 |
8086 | 20 | 1MB | 16 | 2B | 512 |
80286 | 24 | 16MB | 16 | 2B | 512 |
80386 | 32 | 4GB | 32 | 4B | 256 |
五. CPU 對存儲器的讀寫
和外部器件進(jìn)行三類信息交互
- 存儲單元的地址(地址信息)
- 器件的選擇, 讀或者寫命令(控制信息)
- 讀或?qū)憯?shù)據(jù)(數(shù)據(jù)信息)
例子:
機(jī)器碼: 101000000000001100000000
16 進(jìn)制: A00300
匯編指令:
MOV AL,[3]
含義: 從3 單元讀取數(shù)據(jù)送入寄存器AL
六. 內(nèi)存地址空間
CPU 地址總線寬度N, 尋址空間為B
8086CPU 地址在寬度為20, 可以尋址1MB 個內(nèi)存單元, 其內(nèi)存地址空間為1MB
將各類存儲器看做一個邏輯存儲器, 統(tǒng)一編址
所有物理存儲器被看做一個由若干存儲單元組成的邏輯存儲器
每個物理存儲器在這個邏輯存儲器中占有一個地址段, 即一段地址空間
CPU 在這段地址空間中讀寫數(shù)據(jù), 實際上就是在相對應(yīng)的物理存儲器中讀寫數(shù)據(jù)
七. 環(huán)境搭建
使用DOS 模擬環(huán)境
工具DOSBox
文件和目錄
1. 目錄
2. 安裝DOSBox
默認(rèn)即可
3. 運行及掛載
4. 工具介紹
- masm.ext 匯編
- link.exe 連接
- Debug.exe 調(diào)試
- edit.com 和edlin.com 編程程序