彙編語言(第3版)

彙編語言(第3版)

《彙編語言(第3版)》是一本2015年1月16日出版的圖書。

基本介紹

  • 書名:彙編語言(第3版)
  • ISBN:9787302333142
  • 定價:36元
  • 出版時間:2015年1月16日
  • 裝幀:平裝
圖書簡介,目錄,

圖書簡介

彙編語言是各種CPU提供的機器指令的助記符的集合,人們可以用彙編語言直接控制硬體系統進行工作。彙編語言是很多相關課程(如數據結構、作業系統、微機原理等)的重要基礎。為了更好地引導、幫助讀者學習彙編語言,作者以循序漸進的思想精心創作了這本書。本書具有如下特點:採用了全新的結構對課程的內容進行組織,對知識進行最小化分割,為讀者構造了循序漸進的學習線索;在深入本質的層面上對彙編語言進行講解;對關鍵環節進行深入的剖析。
本書可用作大學計算機專業本科生的彙編教材及希望深入學習計算機科學的讀者的自學教材。

目錄

第1章基礎知識 1
1.1機器語言 1
1.2彙編語言的產生 3
1.3彙編語言的組成 3
1.4存儲器 4
1.5指令和數據 4
1.6存儲單元 4
1.7CPU對存儲器的讀寫 5
1.8地址匯流排 6
1.9數據匯流排 7
1.10控制匯流排 8
1.11記憶體地址空間(概述) 9
1.12主機板 9
1.13接口卡 9
1.14各類存儲器晶片 10
1.15記憶體地址空間 11
第2章暫存器 14
2.1通用暫存器 14
2.2字在暫存器中的存儲 16
2.3幾條彙編指令 17
2.4物理地址 20
2.516位結構的CPU 20
2.68086CPU給出物理地址的方法 20
2.7“段地址?16+偏移地址=物理地址”
的本質含義 22
2.8段的概念 23
2.9段暫存器 25
2.10CS和IP 25
2.11修改CS、IP的指令 32
2.12代碼段 34
實驗1查看CPU和記憶體,用機器指令
和彙編指令編程 35
第3章暫存器(記憶體訪問) 47
3.1記憶體中字的存儲 47
3.2DS和[address] 48
3.3字的傳送 49
3.4mov、add、sub指令 51
3.5數據段 53
3.6棧 56
3.7CPU提供的棧機制 57
3.8棧頂超界的問題 61
3.9push、pop指令 63
3.10棧段 68
實驗2用機器指令和彙編指令編程 71
第4章第一個程式 76
4.1一個源程式從寫出到執行的過程 76
4.2源程式 77
4.3編輯源程式 82
4.4編譯 83
4.5連線 85
4.6以簡化的方式進行編譯和連線 88
4.71.exe的執行 89
4.8誰將執行檔中的程式裝載進入
記憶體並使它運行? 89
4.9程式執行過程的跟蹤 91
實驗3編程、編譯、連線、跟蹤 94
第5章[BX]和loop指令 95
5.1[BX] 97
5.2Loop指令 99
5.3在Debug中跟蹤用loop指令實現的
循環程式 103
5.4Debug和彙編編譯器masm對指令的
不同處理 110
5.5loop和[bx]的聯合套用 112
5.6段前綴 116
5.7一段安全的空間 117
5.8段前綴的使用 120
實驗4[bx]和loop的使用 121
第6章包含多個段的程式 123
6.1在代碼段中使用數據 123
6.2在代碼段中使用棧 127
6.3將數據、代碼、棧放入不同的段 130
實驗5編寫、調試具有多個段的程式 133
第7章更靈活的定位記憶體地址的
方法 138
7.1and和or指令 138
7.2關於ASCII碼 139
7.3以字元形式給出的數據 139
7.4大小寫轉換的問題 140
7.5[bx+idata] 143
7.6用[bx+idata]的方式進行數組的
處理 144
7.7SI和DI 147
7.8[bx+si]和[bx+di] 149
7.9[bx+si+idata]和[bx+di+idata] 150
7.10不同的定址方式的靈活套用 152
實驗6實踐課程中的程式 160
第8章數據處理的兩個基本問題 161
8.1bx、si、di和bp 161
8.2機器指令處理的數據在什麼地方 162
8.3彙編語言中數據位置的表達 162
8.4定址方式 164
8.5指令要處理的數據有多長 165
8.6定址方式的綜合套用 166
8.7div指令 169
8.8偽指令dd 170
8.9dup 171
實驗7定址方式在結構化數據訪問中的
套用 172
第9章轉移指令的原理 175
9.1操作符offset 175
9.2jmp指令 176
9.3依據位移進行轉移的jmp指令 177
9.4轉移的目的地址在指令中的jmp
指令 180
9.5轉移地址在暫存器中的jmp指令 181
9.6轉移地址在記憶體中的jmp指令 182
9.7jcxz指令 184
9.8loop指令 185
9.9根據位移進行轉移的意義 186
9.10編譯器對轉移位移超界的檢測 186
實驗8分析一個奇怪的程式 187
實驗9根據材料編程 187
第10章CALL和RET指令 190
10.1ret和retf 190
10.2call指令 192
10.3依據位移進行轉移的call指令 192
10.4轉移的目的地址在指令中的call
指令 193
10.5轉移地址在暫存器中的call指令 194
10.6轉移地址在記憶體中的call指令 194
10.7call和ret的配合使用 196
10.8mul指令 199
10.9模組化程式設計 200
10.10參數和結果傳遞的問題 200
10.11批量數據的傳遞 201
10.12暫存器衝突的問題 203
實驗10編寫子程式 206
課程設計1 211
第11章標誌暫存器 213
11.1ZF標誌 213
11.2PF標誌 214
11.3SF標誌 215
11.4CF標誌 216
11.5OF標誌 217
11.6adc指令 219
11.7sbb指令 222
11.8cmp指令 222
11.9檢測比較結果的條件轉移指令 225
11.10DF標誌和串傳送指令 230
11.11pushf和popf 233
11.12標誌暫存器在Debug中的表示 234
實驗11編寫子程式 234
第12章內中斷 236
12.1內中斷的產生 236
12.2中斷處理程式 237
12.3中斷向量表 237
12.4中斷過程 238
12.5中斷處理程式和iret指令 239
12.6除法錯誤中斷的處理 240
12.7編程處理0號中斷 240
12.8安裝 244
12.9do0 246
12.10設定中斷向量 249
12.11單步中斷 249
12.12回響中斷的特殊情況 250
實驗12編寫0號中斷的處理程式 251
第13章int指令 252
13.1int指令 252
13.2編寫供應用程式調用的
中斷例程 253
13.3對int、iret和棧的深入理解 256
13.4BIOS和DOS所提供的
中斷例程 258
13.5BIOS和DOS中斷例程的
安裝過程 258
13.6BIOS中斷例程套用 259
13.7DOS中斷例程套用 261
實驗13編寫、套用中斷例程 262
第14章連線埠 265
14.1連線埠的讀寫 265
14.2CMOSRAM晶片 266
14.3shl和shr指令 267
14.4CMOSRAM中存儲的時間信息 269
實驗14訪問CMOSRAM 271
第15章外中斷 272
15.1接口晶片和連線埠 272
15.2外中斷信息 272
15.3PC機鍵盤的處理過程 274
15.4編寫int9中斷例程 276
15.5安裝新的int9中斷例程 282
實驗15安裝新的int9中斷例程 285
第16章直接定址表 287
16.1描述了單元長度的標號 287
16.2在其他段中使用數據標號 289
16.3直接定址表 292
16.4程式入口地址的直接定址表 296
實驗16編寫包含多個功能子程式的
中斷例程 299
第17章使用BIOS進行鍵盤輸入
和磁碟讀寫 300
17.1int9中斷例程對鍵盤輸入的處理 300
17.2使用int16h中斷例程讀取
鍵盤緩衝區 301
17.3字元串的輸入 304
17.4套用int13h中斷例程對磁碟
進行讀寫 308
實驗17編寫包含多個功能子程式的
中斷例程 310
課程設計2 312
綜合研究 314
研究試驗1搭建一個精簡的C語言
開發環境 315
研究試驗2使用暫存器 318
研究試驗3使用記憶體空間 319
研究試驗4不用main函式編程 322
研究試驗5函式如何接收不定數量的
參數 326
附註 327
附註1Intel系列微處理器的3種工作
模式 327
附註2補碼 329
附註3彙編編譯器(masm.exe)對jmp的
相關處理 330
附註4用棧傳遞參數 333
附註5公式證明 336
VIII
彙編語言(第3版)
VII
目錄

相關詞條

熱門詞條

聯絡我們