<內容簡介>
本書依教育部最新公佈之工業職業學校電機、電子群「組合語言」課程標準編輯而成,並附範例光碟片可作為上機練習時使用。適用於電子、資訊科二年級之學生。
<章節目錄>1
1 章 微電腦系統介紹1
1-1 微電腦系統的歷史演進2
1-1-1 CPU的先驅INTEL2
1-1-2 另一個巨人MOTOROLA2
1-1-3 新的組合3
1-1-4 Pentium
II的推出3
1-1-5 多重核心處理器的誕生5
1-2 基本數位系統6
1-3 資料表示與轉換7
1-3-1 數字系統轉換7
1-3-2 負數與補數13
1-3-3 位元(BIT)與位元組(BYTE)的觀念16
1-3-4 ASCII碼的介紹16
1-3-5 如何觀察記憶體的內容18
1-3-6 記憶體空間的計算18
1-3-7 由位址計算記憶體大小19
習
題22
2
章 CPU內部架構介紹27
2-1 8086的內部結構28
2-1-1 8088的內部結構28
2-1-2 8088的管線處理29
2-2 機器碼與組合語言30
2-3 暫存器結構31
2-3-1 8088的暫存器31
2-3-2 一般暫存器結構31
2-3-3 區段暫存器和指位暫存器33
2-3-4 STACK(堆疊)的觀念35
2-3-5 旗標暫存器(Flag
Register)36
2-4 80386/486
32位元暫存器40
2-5 分段式的記憶體管理41
2-6 資料在記憶體的儲存方式43
2-7 位址在記憶體的儲存方式44
2-8 定址模式44
習
題52
3
章 組合語言程式之開發61
3-1 原始程式轉換成可執行碼的方式62
3-2 可執行檔案執行的步驟63
3-3 可執行程式產生的步驟63
3-4 組合語言中的附檔名介紹64
3-5 Debug程式介紹65
3-5-1 Debug指令的介紹66
3-5-2 利用Debug撰寫程式67
3-5-3 利用Debug指令G執行程式68
3-5-4 程式的命名與存檔69
3-5-5 程式的反組譯69
3-5-6 組合語言指令的簡單介紹70
3-5-7 在Debug之下修改程式71
3-5-8 單步執行及觀察暫存器內容73
3-5-9 利用D指令觀察記憶體內容77
3-5-10 Debug指令綜合練習78
3-6 啟動MASM82
3-6-1 前 言82
3-6-2 MASM的操作82
3-6-3 LST檔的內容83
3-6-4 交互參考檔的產生86
3-7 LINK連結程式的操作87
3-7-1 前 言87
3-7-2 MAP檔的討論88
3-8 MASM6.X版的組譯與連結92
3-8-1 前 言92
3-8-2 使用ML來組譯連結程式95
習
題99
4
章 組合語言程式結構103
4-1 組合語言程式概論104
4-2 組合語言指令格式104
4-3 MASM的演進106
4-4 MASM4.X版中程式的格式106
4-5 MASM5.X版中程式的格式113
4-6 MASM6.X版中程式撰寫的格式115
習
題118
5
章 虛擬指令與資料轉移傳送指令124
5-1 前 言124
5-2 虛擬指令介紹124
5-2-1 列表機虛擬指令介紹124
5-2-2 區段定義虛擬指令124
5-2-3 資料虛擬指令125
5-2-4 其他虛擬指令127
5-3 資料轉移傳送指令127
5-3-1 前 言127
5-3-2 一般傳送資料指令128
5-3-3 堆疊資料存取指令130
5-3-4 位址資料傳送指令132
5-3-5 I/O埠資料傳送指令134
5-3-6 旗標內含傳送指令135
5-3-7 資料查表指令136
習
題138
6
章 算術及邏輯運算指令141
6-1 算術運算指令142
6-1-1 加法指令142
6-1-2 減法指令145
6-1-3 乘法指令149
6-1-4 除法指令152
6-1-5 有號數擴展指令152
6-2 邏輯運算指令154
習
題161
7
章 程式流程控制167
7-1 前 言168
7-1-1 無條件跳躍指令JMP168
7-1-2 比較指令CMP168
7-1-3 有條件跳躍指令169
7-2 旗標設定指令174
7-2-1 進位旗標設定指令174
7-2-2 方向旗標設定指令176
7-2-3 中斷旗標設定指令179
7-3 迴圈指令179
7-4 程序(Procedure)定義與呼叫182
7-4-1 副程式的定義182
7-4-2 副程式的呼叫183
7-4-3 檔內呼叫184
7-4-4 檔外呼叫185
7-4-5 參數的傳遞188
7-5 中斷型態與應用191
7-5-1 何謂中斷191
7-5-2 中斷的種類191
7-5-3 中斷向量表192
7-5-4 中斷服務程式起始位址的計算194
7-5-5 軟體的中斷要求195
習
題197
8
章 巨集組譯201
8-1 巨集簡介202
8-2 巨集的定義202
8-3 巨集展開203
8-4 巨集的程式庫206
8-5 INCLUDE指令的使用208
8-6 巨集的參數傳遞211
8-7 條件式巨集組譯214
8-8 巨集指令與副程式之比較216
習
題217
9
章 基本資料運算處理與應用219
9-1 前 言220
9-2 字串運算處理220
9-2-1 字串搬移指令220
9-2-2 字串比較指令223
9-2-3 字串搜尋指令225
9-2-4 字串載入指令227
9-2-5 字串儲存指令228
9-2-6 前置重複指令230
9-3 位元運算處理230
9-3-1 位元平移指令230
9-3-2 位元旋轉指令233
9-4 BCD碼及ASCII碼之轉換處理237
9-4-1 BCD碼介紹237
9-4-2 未包裝運算調整指令238
9-4-3 包裝運算調整指令243
習
題245
10
章 基本週邊設備輸入輸出控制249
10-1 前 言250
10-2 螢幕輸出顯示控制250
10-2-1 DOS的螢幕服務250
10-2-2 BIOS的螢幕服務252
10-2-3 文字模式與繪圖模式252
10-2-4 螢幕顯像原理252
10-2-5 單色繪圖顯示卡253
10-2-6 BIOS
INT
10H的螢幕處理257
10-3 磁碟及檔案控制262
10-3-1 DOS的磁碟架構262
10-3-2 磁片的系統區與資料區263
10-3-3 檔案目錄265
10-3-4 檔案配置表266
10-4 鍵盤輸入控制267
10-4-1 DOS的鍵盤服務267
10-2-4 BIOS的鍵盤服務273
10-5 印表機輸出控制278
10-5-1 DOS的印表機服務278
10-5-2 BIOS的印表機服務279
10-6 記憶體管理控制281
10-6-1 記憶體種類介紹281
10-6-2 各種常用記憶體規格介紹282
10-6-3 記憶體的擴充284
10-6-4 .COM檔的介紹285
10-6-5 .EXE
檔介紹285
10-6-6 MCB的介紹288
10-6-7 記憶體的配置管理287
10-6-8 常駐程式289
10-6-9 中斷服務程式ISR290
10-6-10 撰寫新的ISR290
10-6-11 更換系統原先的ISR292
10-6-12 攔截修改系統的ISR295
習
題297