彙編語言程式設計 ——基於ARM體系結構 (第4版)

彙編語言程式設計 ——基於ARM體系結構 (第4版)

《彙編語言程式設計 ——基於ARM體系結構 (第4版)》是2021年北京航空航天大學出版社出版的圖書,作者是文全剛 。

基本介紹

  • 中文名:彙編語言程式設計 ——基於ARM體系結構 (第4版)
  • 作者:文全剛
  • 出版社:北京航空航天大學出版社
  • ISBN:9787512433861
內容簡介,圖書目錄,

內容簡介

本書是學習嵌入式技術的入門教材,是學習嵌入式系統原理與接口技術、嵌入式系統設計與套用等知識的前導教材。
本書基於ARM體系結構進行彙編語言的教學,內容分成3個部分:第一部分主要介紹彙編語言程式設計的基礎知識和ARM系列微處理器,包括第1、2章;第二部分主要介紹基於ARM體系結構的指令系統、彙編程式設計以及異常中斷編程,包括第3、4、5章;第三部分主要是MDK集成開發環境的使用和ARM彙編語言程式實驗,包括第6、7章。本書是再版書,相比舊版,修訂了舊版的一些錯誤,並更新了部分內容。
本書配套資料包含相關章節程式原始碼及其他相關資料,讀者可以到北京航空航天大學出版社網站的“下載專區”免費下載。

圖書目錄

第1章基礎知識1
1.1數制與數制轉換1
1.1.1數制的基本概念1
1.1.2二進制數2
1.1.3十進制和二進制之間的轉換3
1.1.4二進制和其他進制之間的轉換4
1.2二進制數的基本運算5
1.3計算機中的編碼6
1.3.1數字的編碼6
1.3.2字元的編碼7
1.3.3漢字的編碼8
1.3.4統一代碼10
1.3.5語音編碼11
1.3.6差錯控制編碼12
1.4計算機中有符號數的表示18
1.4.1機器數與真值18
1.4.2原碼、反碼與補碼19
1.4.3補碼的加法運算21
1.4.4定點數與浮點數22
1.5基本邏輯運算24
1.5.1“與”運算24
1.5.2“或”運算24
1.5.3“非”運算25
1.5.4“異或”運算25
習題一26
第2章ARM微處理器基礎27
2.1嵌入式系統概述27
2.1.1嵌入式系統的基本概念27
2.1.2嵌入式系統的發展29
2.1.3嵌入式系統的組成結構31
2.1.4嵌入式處理器36
2.1.5典型嵌入式處理器介紹38
2.2ARM概述40
2.2.1計算機體系結構的分類40
2.2.2ARM技術的發展過程41
2.2.3ARM技術與人工智慧46
2.3ARM核心的特點47
2.3.1RISC技術47
2.3.2流水線技術47
2.3.3超標量技術48
2.4基於ARM核的微處理器 49
2.4.1基於ARM核的硬體結構49
2.4.2ARM核的數據流模型50
2.4.3ARM處理器工作模式和工作狀態51
2.5ARM暫存器52
2.5.1通用暫存器52
2.5.2狀態暫存器54
2.5.3Thumb暫存器57
2.6ARM的存儲系統簡介58
2.6.1存儲器的層次結構58
2.6.2數據類型與存儲器格式60
2.6.3非對齊的存儲器訪問62
習題二63
第3章ARM指令系統64
3.1指令基礎64
3.1.1程式設計語言的層次結構64
3.1.2指令周期和時序65
3.1.3程式的執行過程67
3.2ARM彙編語言68
3.2.1指令和指令格式68
3.2.2指令的可選後綴69
3.2.3指令的條件執行70
3.2.4ARM指令分類72
3.3ARM指令的定址方式72
3.3.1立即數定址73
3.3.2暫存器定址73
3.3.3暫存器間接定址73
3.3.4暫存器移位定址74
3.3.5基址變址定址74
3.3.6多暫存器定址75
3.3.7相對定址76
3.3.8堆疊定址76
3.4數據處理指令77
3.4.1數據傳送指令78
3.4.2移位操作78
3.4.3算術指令82
3.4.4邏輯運算指令86
3.4.5比較指令87
3.4.6乘法指令89
3.5數據載入與存儲指令92
3.5.1數據載入與存儲指令概述94
3.5.2單暫存器載入與存儲指令95
3.5.3多暫存器載入與存儲指令101
3.5.4堆疊操作105
3.5.5交換指令107
3.6分支指令108
3.6.1分支指令B109
3.6.2帶返回的分支指令BL 110
3.6.3帶狀態切換的分支指令BX111
3.6.4帶返回和狀態切換的分支指令BLX112
3.7程式狀態暫存器訪問指令113
3.8協處理器指令115
3.9軟體中斷指令119
3.10ARM偽指令121
3.11Thumb指令集123
3.11.1概述123
3.11.2Thumb指令暫存器的使用126
3.11.3ARMThumb互動126
3.11.4數據處理指令128
3.11.5單暫存器載入和存儲指令130
3.11.6多暫存器載入和存儲指令131
3.11.7堆疊指令132
3.11.8軟體中斷指令133
3.12Thumb偽指令133
習題三134
第4章ARM彙編語言程式設計136
4.1彙編語言程式格式136
4.1.1彙編語言的基本概念136
4.1.2彙編語言源程式的組成137
4.1.3彙編語言程式中常用的符號140
4.1.4彙編語言程式中的表達式和運算符142
4.2ARM彙編器的偽操作145
4.2.1符號定義偽操作146
4.2.2數據定義偽操作147
4.2.3彙編控制偽操作152
4.2.4信息報告偽操作155
4.2.5其他常用的偽操作157
4.3彙編語言程式的上機過程162
4.3.1彙編語言上機環境162
4.3.2編輯彙編語言源程式164
4.3.3編譯連結源程式166
4.3.4調試彙編程式167
4.4彙編語言程式設計167
4.4.1程式設計步驟167
4.4.2簡單程式設計169
4.4.3分支程式設計170
4.4.4循環程式設計174
4.4.5子程式設計178
4.4.6彙編程式舉例180
4.5工作模式切換編程183
4.5.1處理器模式183
4.5.2處理器工作模式切換編程183
4.6ATPCS介紹184
4.6.1暫存器的使用規則185
4.6.2數據棧使用規則186
4.6.3參數傳遞規則187
4.6.4ARM和Thumb程式混合使用的ATPCS188
4.7ARM和Thumb混合編程188
4.7.1工作狀態188
4.7.2工作狀態切換編程190
4.8彙編語言和C語言互動編程193
4.8.1彙編程式訪問C程式變數193
4.8.2彙編程式調用C程式194
4.8.3C程式內嵌彙編指令195
4.8.4C程式調用彙編程式201
習題四202
第5章異常中斷編程204
5.1ARM的異常和中斷204
5.1.1異常和中斷的基本概念204
5.1.2ARM的異常中斷205
5.1.3向量表206
5.1.4異常的優先權別208
5.2ARM異常中斷的處理過程209
5.2.1異常中斷回響過程209
5.2.2異常中斷的返回211
5.3復位處理程式215
5.3.1復位215
5.3.2復位處理編程216
5.4SWI異常中斷處理程式218
5.4.1SWI異常中斷處理程式的實現218
5.4.2SWI異常中斷調用221
5.5FIQ和IRQ異常中斷處理程式226
5.5.1IRQ/FIQ中斷處理機制226
5.5.2IRQ/FIQ異常中斷處理程式229
5.5.3IRQ異常中斷處理程式舉例231
5.6未定義指令異常中斷232
習題五233
第6章RealView MDK軟體的使用234
6.1嵌入式系統開發基礎234
6.1.1嵌入式系統開發流程234
6.1.2嵌入式軟體開發235
6.1.3DS開發平台簡介238
6.1.4RealView MDK軟體的安裝239
6.2μVision集成開發環境介紹244
6.2.1工程工作區245
6.2.2工作區248
6.2.3輸出視窗249
6.2.4選單欄、工具列和快捷鍵250
6.2.5軟體開發流程254
6.3程式的編輯255
6.3.1工程項目創建257
6.3.2源檔案的創建259
6.3.3工程項目管理260
6.3.4工程基本配置261
6.4程式的編譯與連結265
6.4.1基本概念265
6.4.2連結器的基本功能269
6.4.3分散載入描述檔案273
6.4.4編譯連結配置274
6.4.5編譯連結工程277
6.5程式的調試278
6.5.1調試模式278
6.5.2調試前的配置278
6.5.3調試器的使用280
6.5.4調試視窗和對話框281
6.5.5Flash編程工具291
6.5.6調試命令和變數 293
6.5.7調試函式簡介298
6.5.8調試腳本的使用302
6.5.9調試信息和去除方法 304
6.5.10映像檔案轉換器fromELF305
習題六306
第7章ARM彙編語言程式實驗307
7.1ARM彙編的上機過程307
7.2ARM定址方式313
7.3數據處理指令318
7.4數據載入與存儲指令321
7.5ARM分支指令326
7.6ARM彙編程式設計一330
7.7ARM彙編程式設計二335
7.8工作模式的切換338
7.9ARM彙編和C語言混合編程343
7.10異常中斷編程348
參考文獻351

相關詞條

熱門詞條

聯絡我們