匯編語言程序設計(第2版)(簡體書)
商品資訊
系列名:21世紀高等教育計算機規劃教材
ISBN13:9787115442970
出版社:人民郵電出版社
作者:劉慧婷; 王慶生
出版日:2023/06/01
裝訂/頁數:平裝/268頁
規格:24cm*17cm (高/寬)
版次:二版
商品簡介
作者簡介
名人/編輯推薦
目次
相關商品
商品簡介
本書主要介紹基於80x86的匯編語言程序設計方法和技術,第 1章~第 10章為主體部分,包括計算機基本組成結構和指令系統,循環、分支、子程序和宏匯編技術的程序設計;第 11章為輸入輸出的一些典型應用,其中基本每章配有一組實驗,共有10組實驗題供選用和參考。
作者簡介
劉慧婷 博士,安徽大學計算機科學與技術學院副教授,主要研究項目及領域: 數據挖掘,教學經驗豐富。其余作者都為安徽大學計算機科學與技術學院老師。
名人/編輯推薦
作者及所在教學團隊成員絕大部分為具有博士學位的高校教師,具有多年《匯編語言程序設計》教育和實踐經驗,本教材力求做到同時面向高校計算機相關專業學生,以及面向計算機領域從業人員,具體說來:(1)匯編語言是一種用于電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。匯編語言不像其他大多數的程序設計語言一樣被廣泛用于程序設計。在今天的實際應用中,它通常被應用在底層,硬件操作和高要求的程序優化的場合。驅動程序、嵌入式操作系統和實時運行程序都需要匯編語言。計算機領域從業人員的零售需求量很大。(2)《匯編語言程序設計》是計算機科學與技術院系所有專業的必修課,但一般課時非常有限(本校32學時),所以內容要精煉,邏輯性和可讀性要求高,如果編排合理,全國高等院校計算機相關專業學生的教材需求量也比較大;(3)此外本教材為教師提供了教學大綱、多媒體課件、課后習題答案等服務資料,方便教學;
目次
章 匯編語言基礎知識1
1.1 匯編語言簡介 1
1.1.1 機器語言與匯編語言 1
1.1.2 匯編語言的組成 2
1.1.3 為什么要學習匯編語言 2
1.2 計算機中數據的表示 2
1.2.1 不同進位計數制及其相互轉換 2
1.2.2 二進制數和十六進制數的運算 4
1.2.3 帶符號數的補碼表示 5
1.2.4 補碼的加法和減法 6
1.2.5 無符號數的表示 7
1.2.6 字符的表示 7
1.2.7 基本邏輯運算 8
本章小結 9
習題1 9
第2章 計算機基本原理 10
2.1 計算機系統組成 10
2.2 存儲器 11
2.2.1 16位結構的CPU 11
2.2.2 存儲器 11
2.2.3 存儲器分段 13
2.2.4 邏輯地址 14
2.2.5 CPU對內存的讀寫操作 15
2.3 中央處理器(CPU)中的寄存器 17
2.3.1 寄存器介紹 17
2.3.2 CS和IP 20
2.3.3 堆棧 20
2.4 外部設備和接口 21
2.5 32位80x86CPU的工作模式 21
習題2 22
實驗1 用Debug命令查看寄存器和內存
中的內容 22
第3章 匯編語言程序實例及上機
操作 28
3.1 匯編語言的工作環境 28
3.1.1 匯編語言的系統工作文件 28
3.1.2 進入DOS命令行的方式 29
3.1.3 常用的DOS命令 29
3.2 匯編語言程序實例 31
3.2.1 單個字符的鍵盤輸入與顯示輸出 31
3.2.2 顯示字符串 32
3.3 程序實例的上機步驟 33
3.3.1 編輯——建立ASM源程序文件 33
3.3.2 匯編——產生OBJ二進制目標
文件 34
3.3.3 連接——產生EXE可執行文件 34
3.3.4 LST列表文件 34
3.3.5 程序的運行 36
3.3.6 程序的跟蹤和調試 36
3.4 在WIN7系統中執行匯編 39
3.5 幾個常用的DOS系統功能調用
(INT 21H) 42
本章小結 44
習題3 44
實驗2 上機過程及程序調試 45
第4章 操作數的尋址方式 47
4.1 立即尋址方式 47
4.2 寄存器尋址方式 48
4.3 直接尋址方式 49
4.4 寄存器間接尋址方式 51
4.5 寄存器相對尋址方式 52
4.6 基址變址尋址方式 53
4.7 相對基址變址尋址方式 54
本章小結 55
習題4 56
實驗3 不同尋址方式的靈活運用 56
第5章 常用指令系統 61
5.1 數據傳送指令 62
5.1.1 通用數據傳送指令 62
5.1.2 累加器專用傳送指令 65
5.1.3 地址傳送指令 67
5.1.4 標志寄存器傳送指令 68
5.2 算術運算指令 69
5.2.1 類型擴展指令 69
5.2.2 加法指令 70
5.2.3 減法指令 73
5.2.4 乘法指令 76
5.2.5 除法指令 77
5.2.6 BCD碼的十進制調整指令 79
5.3 邏輯與移位指令 81
5.3.1 邏輯指令 81
5.3.2 移位指令 82
5.4 串操作指令 84
5.4.1 MOVS串傳送指令 84
5.4.2 CMPS串比較指令 86
5.4.3 SCAS串掃描指令 88
5.4.4 STOS串存入指令 89
5.4.5 LODS從串中取數指令 90
5.5 程序轉移指令 91
5.5.1 無條件轉移指令與程序的可
重新定位 91
5.5.2 條件轉移指令 93
5.5.3 循環指令 96
本章小結 97
習題5 97
實驗4 算術及位串處理程序 100
第6章 偽指令與源程序格式 101
6.1 偽指令 101
6.1.1 處理機選擇偽指令 101
6.1.2 段定義偽指令 101
6.1.3 程序開始和結束偽指令 103
6.1.4 數據定義與存儲器單元分配
偽指令 103
6.1.5 類型屬性操作符 105
6.1.6 THIS操作符和LABEL偽操作 105
6.1.7 表達式賦值偽指令“EQU”
和“=” 106
6.1.8 匯編地址計數器$與定位偽指令 106
6.1.9 基數控制偽指令 108
6.1.10 過程定義偽指令 108
6.2 語句格式 109
6.2.1 名字項和操作項 109
6.2.2 表達式和操作符 109
6.3 EXE文件與文件 112
6.3.1 程序段前綴PSP 112
6.3.2 文件 114
本章小結 115
習題6 115
實驗5 偽指令 117
第7章 分支與循環程序設計 119
7.1 分支程序設計 119
7.1.1 分支程序結構 119
7.1.2 單分支程序 120
7.1.3 復合分支程序 121
7.1.4 多分支程序 123
7.2 循環程序設計 125
7.2.1 循環程序結構 125
7.2.2 計數循環程序 126
7.2.3 條件循環程序 127
7.2.4 條件計數循環程序 129
7.2.5 多重循環程序 131
本章小結 132
習題7 132
實驗6 分支程序設計 134
實驗7 循環程序設計 134
第8章 子程序設計 135
8.1 子程序結構 135
8.1.1 子程序調用指令 135
8.1.2 過程定義與過程結構 136
8.1.3 保存和恢復現場寄存器 138
8.2 子程序的參數傳遞 138
8.2.1 用寄存器傳遞參數 139
8.2.2 用變量傳遞參數 142
8.2.3 用地址表傳遞參數的通用
子程序 144
8.2.4 用堆棧傳遞參數的通用子程序 147
8.2.5 用結構變量傳遞參數的通用
子程序 151
8.3 多模塊程序設計 154
8.3.1 多模塊之間的參數傳遞 154
8.3.2 顯示十進制數的通用模塊 156
8.3.3 C語言程序調用匯編語言
子程序 159
本章小結 160
習題8 160
實驗8 子程序設計和多模塊程序設計 161
第9章 宏匯編及其他高級偽
操作 163
9.1 宏匯編 163
9.1.1 宏定義、宏調用和宏展開 163
9.1.2 宏定義的嵌套 166
9.1.3 宏定義中使用宏調用 167
9.1.4 帶間隔符的實參 167
9.1.5 連接操作符& 168
9.1.6 宏替換操作符% 168
9.1.7 LOCAL偽操作 169
9.1.8 使用宏庫文件 170
9.2 其他高級偽操作 173
9.2.1 PURGE偽操作 173
9.2.2 列表偽操作 173
9.2.3 重復匯編 173
9.2.4 條件匯編 176
習題9 178
實驗9 宏匯編程序設計 179
0章 輸入/輸出和中斷 180
10.1 外部設備與輸入/輸出 180
10.1.1 I/O 端口 180
10.1.2 I/O的數據傳送控制方式 182
10.2 中斷 184
10.2.1 中斷的概念 184
10.2.2 中斷向量表 187
10.2.3 中斷過程 189
10.2.4 中斷調用指令 189
10.3 中斷處理程序設計 190
10.3.1 中斷處理程序的基本功能 190
10.3.2 中斷處理程序設計舉例 191
本章小結 193
習題10 193
實驗10 中斷程序設計 194
1章 輸入/輸出應用 195
11.1 可編程定時器 195
11.1.1 可編程定時器工作原理 195
11.1.2 定時器驅動揚聲器發聲 197
11.1.3 通用發聲程序 198
11.1.4 樂曲程序 201
11.2 鍵盤調用 202
11.2.1 字符碼與掃描碼 202
11.2.2 鍵盤中斷調用 203
11.2.3 鍵盤緩沖區 205
11.3 顯示器的文本方式顯示 206
11.3.1 顯示方式 206
11.3.2 顯示存儲器與直接寫屏 208
11.3.3 BIOS調用 209
11.4 顯示器的圖形方式顯示 214
11.4.1 圖形存儲器 214
11.4.2 直接視頻顯示 215
11.4.3 BIOS功能視頻顯示 216
11.5 磁盤文件存取 218
習題11 223
實驗11 輸入/輸出程序設計 223
附錄1 80x86指令系統一覽 224
附錄2 偽操作與操作符 238
附錄3 中斷向量地址一覽 251
附錄4 DOS系統功能調用
(INT 21H) 253
附錄5 BIOS功能調用 261
附錄6 Windows 104鍵鍵盤
掃描碼 266
參考文獻 268
1.1 匯編語言簡介 1
1.1.1 機器語言與匯編語言 1
1.1.2 匯編語言的組成 2
1.1.3 為什么要學習匯編語言 2
1.2 計算機中數據的表示 2
1.2.1 不同進位計數制及其相互轉換 2
1.2.2 二進制數和十六進制數的運算 4
1.2.3 帶符號數的補碼表示 5
1.2.4 補碼的加法和減法 6
1.2.5 無符號數的表示 7
1.2.6 字符的表示 7
1.2.7 基本邏輯運算 8
本章小結 9
習題1 9
第2章 計算機基本原理 10
2.1 計算機系統組成 10
2.2 存儲器 11
2.2.1 16位結構的CPU 11
2.2.2 存儲器 11
2.2.3 存儲器分段 13
2.2.4 邏輯地址 14
2.2.5 CPU對內存的讀寫操作 15
2.3 中央處理器(CPU)中的寄存器 17
2.3.1 寄存器介紹 17
2.3.2 CS和IP 20
2.3.3 堆棧 20
2.4 外部設備和接口 21
2.5 32位80x86CPU的工作模式 21
習題2 22
實驗1 用Debug命令查看寄存器和內存
中的內容 22
第3章 匯編語言程序實例及上機
操作 28
3.1 匯編語言的工作環境 28
3.1.1 匯編語言的系統工作文件 28
3.1.2 進入DOS命令行的方式 29
3.1.3 常用的DOS命令 29
3.2 匯編語言程序實例 31
3.2.1 單個字符的鍵盤輸入與顯示輸出 31
3.2.2 顯示字符串 32
3.3 程序實例的上機步驟 33
3.3.1 編輯——建立ASM源程序文件 33
3.3.2 匯編——產生OBJ二進制目標
文件 34
3.3.3 連接——產生EXE可執行文件 34
3.3.4 LST列表文件 34
3.3.5 程序的運行 36
3.3.6 程序的跟蹤和調試 36
3.4 在WIN7系統中執行匯編 39
3.5 幾個常用的DOS系統功能調用
(INT 21H) 42
本章小結 44
習題3 44
實驗2 上機過程及程序調試 45
第4章 操作數的尋址方式 47
4.1 立即尋址方式 47
4.2 寄存器尋址方式 48
4.3 直接尋址方式 49
4.4 寄存器間接尋址方式 51
4.5 寄存器相對尋址方式 52
4.6 基址變址尋址方式 53
4.7 相對基址變址尋址方式 54
本章小結 55
習題4 56
實驗3 不同尋址方式的靈活運用 56
第5章 常用指令系統 61
5.1 數據傳送指令 62
5.1.1 通用數據傳送指令 62
5.1.2 累加器專用傳送指令 65
5.1.3 地址傳送指令 67
5.1.4 標志寄存器傳送指令 68
5.2 算術運算指令 69
5.2.1 類型擴展指令 69
5.2.2 加法指令 70
5.2.3 減法指令 73
5.2.4 乘法指令 76
5.2.5 除法指令 77
5.2.6 BCD碼的十進制調整指令 79
5.3 邏輯與移位指令 81
5.3.1 邏輯指令 81
5.3.2 移位指令 82
5.4 串操作指令 84
5.4.1 MOVS串傳送指令 84
5.4.2 CMPS串比較指令 86
5.4.3 SCAS串掃描指令 88
5.4.4 STOS串存入指令 89
5.4.5 LODS從串中取數指令 90
5.5 程序轉移指令 91
5.5.1 無條件轉移指令與程序的可
重新定位 91
5.5.2 條件轉移指令 93
5.5.3 循環指令 96
本章小結 97
習題5 97
實驗4 算術及位串處理程序 100
第6章 偽指令與源程序格式 101
6.1 偽指令 101
6.1.1 處理機選擇偽指令 101
6.1.2 段定義偽指令 101
6.1.3 程序開始和結束偽指令 103
6.1.4 數據定義與存儲器單元分配
偽指令 103
6.1.5 類型屬性操作符 105
6.1.6 THIS操作符和LABEL偽操作 105
6.1.7 表達式賦值偽指令“EQU”
和“=” 106
6.1.8 匯編地址計數器$與定位偽指令 106
6.1.9 基數控制偽指令 108
6.1.10 過程定義偽指令 108
6.2 語句格式 109
6.2.1 名字項和操作項 109
6.2.2 表達式和操作符 109
6.3 EXE文件與文件 112
6.3.1 程序段前綴PSP 112
6.3.2 文件 114
本章小結 115
習題6 115
實驗5 偽指令 117
第7章 分支與循環程序設計 119
7.1 分支程序設計 119
7.1.1 分支程序結構 119
7.1.2 單分支程序 120
7.1.3 復合分支程序 121
7.1.4 多分支程序 123
7.2 循環程序設計 125
7.2.1 循環程序結構 125
7.2.2 計數循環程序 126
7.2.3 條件循環程序 127
7.2.4 條件計數循環程序 129
7.2.5 多重循環程序 131
本章小結 132
習題7 132
實驗6 分支程序設計 134
實驗7 循環程序設計 134
第8章 子程序設計 135
8.1 子程序結構 135
8.1.1 子程序調用指令 135
8.1.2 過程定義與過程結構 136
8.1.3 保存和恢復現場寄存器 138
8.2 子程序的參數傳遞 138
8.2.1 用寄存器傳遞參數 139
8.2.2 用變量傳遞參數 142
8.2.3 用地址表傳遞參數的通用
子程序 144
8.2.4 用堆棧傳遞參數的通用子程序 147
8.2.5 用結構變量傳遞參數的通用
子程序 151
8.3 多模塊程序設計 154
8.3.1 多模塊之間的參數傳遞 154
8.3.2 顯示十進制數的通用模塊 156
8.3.3 C語言程序調用匯編語言
子程序 159
本章小結 160
習題8 160
實驗8 子程序設計和多模塊程序設計 161
第9章 宏匯編及其他高級偽
操作 163
9.1 宏匯編 163
9.1.1 宏定義、宏調用和宏展開 163
9.1.2 宏定義的嵌套 166
9.1.3 宏定義中使用宏調用 167
9.1.4 帶間隔符的實參 167
9.1.5 連接操作符& 168
9.1.6 宏替換操作符% 168
9.1.7 LOCAL偽操作 169
9.1.8 使用宏庫文件 170
9.2 其他高級偽操作 173
9.2.1 PURGE偽操作 173
9.2.2 列表偽操作 173
9.2.3 重復匯編 173
9.2.4 條件匯編 176
習題9 178
實驗9 宏匯編程序設計 179
0章 輸入/輸出和中斷 180
10.1 外部設備與輸入/輸出 180
10.1.1 I/O 端口 180
10.1.2 I/O的數據傳送控制方式 182
10.2 中斷 184
10.2.1 中斷的概念 184
10.2.2 中斷向量表 187
10.2.3 中斷過程 189
10.2.4 中斷調用指令 189
10.3 中斷處理程序設計 190
10.3.1 中斷處理程序的基本功能 190
10.3.2 中斷處理程序設計舉例 191
本章小結 193
習題10 193
實驗10 中斷程序設計 194
1章 輸入/輸出應用 195
11.1 可編程定時器 195
11.1.1 可編程定時器工作原理 195
11.1.2 定時器驅動揚聲器發聲 197
11.1.3 通用發聲程序 198
11.1.4 樂曲程序 201
11.2 鍵盤調用 202
11.2.1 字符碼與掃描碼 202
11.2.2 鍵盤中斷調用 203
11.2.3 鍵盤緩沖區 205
11.3 顯示器的文本方式顯示 206
11.3.1 顯示方式 206
11.3.2 顯示存儲器與直接寫屏 208
11.3.3 BIOS調用 209
11.4 顯示器的圖形方式顯示 214
11.4.1 圖形存儲器 214
11.4.2 直接視頻顯示 215
11.4.3 BIOS功能視頻顯示 216
11.5 磁盤文件存取 218
習題11 223
實驗11 輸入/輸出程序設計 223
附錄1 80x86指令系統一覽 224
附錄2 偽操作與操作符 238
附錄3 中斷向量地址一覽 251
附錄4 DOS系統功能調用
(INT 21H) 253
附錄5 BIOS功能調用 261
附錄6 Windows 104鍵鍵盤
掃描碼 266
參考文獻 268
主題書展
更多
主題書展
更多書展今日66折
您曾經瀏覽過的商品
購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。