?
內(nèi)容簡介
ARM處理器是一種低功耗、高性能的32位RISC處理器。《ARM體系結(jié)構(gòu)與程序設(shè)計》分兩條主線闡述了ARM的編程:一條主線是基于uC/OS-II操作系統(tǒng)的ARM編程;另一條主線是基于Linux操作系統(tǒng)的ARM編程。《ARM體系結(jié)構(gòu)與程序設(shè)計》是ARM體系結(jié)構(gòu)與程序設(shè)計的一本實用指導(dǎo)書籍,通過案例詳細介紹了ARM體系結(jié)構(gòu)與程序設(shè)計,案例中的程序都取自實際的項目,且對程序有詳細注解。《ARM體系結(jié)構(gòu)與程序設(shè)計》深入淺出,既可作為高等職業(yè)院校相關(guān)課程的教材,也可作為相關(guān)技術(shù)人員的技術(shù)參考書。
《ARM體系結(jié)構(gòu)與程序設(shè)計》由清華大學(xué)出版社出版。《ARM體系結(jié)構(gòu)與程序設(shè)計》詳細介紹了ARM微處理器、ARM微處理器的體系結(jié)構(gòu)、ARM920T內(nèi)核編程模型、ARM920T的運行模式、ARM微處理器的異常狀態(tài)、ARM/Thurnb指令集,指令的尋址方式、ARM匯編語言程序設(shè)計中常見的偽指令、匯編語言的基本結(jié)構(gòu)、嵌入式C語言預(yù)處理偽指令、嵌入式c語言程序設(shè)計中的常用的語句、函數(shù)及函數(shù)庫、嵌入式Linux C語言編程——文件的操作、嵌入式C語言與匯編語言的混合編程、ARM ADS集成開發(fā)工具、ARM異常中斷處理等知識。《ARM體系結(jié)構(gòu)與程序設(shè)計》分兩條主線闡述了ARM的編程:一條主線是基于uC/OS-Ⅱ操作系統(tǒng)的ARM編程;另一條主線是基于Linux操作系統(tǒng)的ARM編程。《ARM體系結(jié)構(gòu)與程序設(shè)計》是ARM體系結(jié)構(gòu)與程序設(shè)計的一本實用指導(dǎo)書籍,通過案例詳細介紹了ARM體系結(jié)構(gòu)與程序設(shè)計,案例中的程序都取自實際的項目,且對程序有詳細注解。
目錄
第1章 ARM技術(shù)概述
1.1 ARM體系結(jié)構(gòu)的發(fā)展及技術(shù)特征
1.1.1 ARM體系結(jié)構(gòu)的發(fā)展
1.1.2 ARM微處理器的應(yīng)用領(lǐng)域
1.2 ARM微處理器簡介
1.2.1 ARM微處理器
1.2.2 ARM微處理器系列
1.3 ARM微處理器結(jié)構(gòu)
1.3.1 RISC體系結(jié)構(gòu)
1.3.2 ARM微處理器的寄存器結(jié)構(gòu)
1.3.3 ARM微處理器的指令結(jié)構(gòu)
1.4 ARM微處理器的應(yīng)用選型
練習(xí)題
第2章 ARM920T內(nèi)核的編程模型
2.1 ARM920T的內(nèi)部功能及特點
2.2 ARM920T內(nèi)核編程模型
2.3 ARM體系結(jié)構(gòu)的存儲器格式
2.4 處理器模式
2.5 寄存器組織
2.5.1 ARM狀態(tài)下的寄存器組織
2.5.2 Thumb狀態(tài)下的寄存器組織
2.6 程序狀態(tài)寄存器
2.7 異常(Exceptions)
練習(xí)題
第3章 ARM微處理器的指令系統(tǒng)
3.1 ARM指令的尋址方式
3.1.1 立即尋址
3.1.2 寄存器尋址
3.1.3 寄存器偏移尋址
3.1.4 寄存器間接尋址
3.1.5 基址變址尋址
3.1.6 多寄存器尋址
3.1.7 相對尋址
3.1.8 堆棧尋址
3.1.9 塊復(fù)制尋址
3.2 ARM指令集
3.2.1 ARM微處理器指令的分類與格式
3.2.2 指令的條件域
3.2.3 ARM指令詳解
3.3 Thumb指令及應(yīng)用
練習(xí)題
第4章 ARM匯編語言程序設(shè)計
4.1 ADS編譯環(huán)境下的ARM的偽操作和宏指令
4.1.1 符號定義(SymbolDefinition)偽指令
4.1.2 數(shù)據(jù)定義(DataDefinition)偽指令
4.1.3 匯編控制(AssemblyControl)偽指令
4.1.4 其他常用的偽指令
4.2 GNU編譯環(huán)境下的ARM偽操作與宏指令
4.3 ARM匯編語言偽指令
4.4 匯編語言的語句格式
4.4.1 匯編語言程序中常用的符號
4.4.2 匯編語言程序中的表達式和運算符
4.5 匯編語言的程序結(jié)構(gòu)
4.5.1 匯編語言的程序結(jié)構(gòu)
4.5.2 匯編語言的子程序調(diào)用
4.5.3 匯編語言程序示例
練習(xí)題
第5章 嵌入式C語言程序設(shè)計基礎(chǔ)
5.1 嵌入式C語言的預(yù)處理偽指令
5.2 嵌入式C語言的基本數(shù)據(jù)類型
5.2.1 數(shù)據(jù)類型與表達式
5.2.2 常量
5.2.3 變量
5.2.4 運算符
5.3 程序的控制結(jié)構(gòu)
5.3.1 選擇結(jié)構(gòu)
5.3.2 switch語句
5.3.3 循環(huán)結(jié)構(gòu)
5.3.4 其他控制語句
5.4 函數(shù)
5.5 數(shù)組
5.6 指針
5.7 構(gòu)造數(shù)據(jù)類型
5.8 匯編語言與C/C++的混合編程
5.8.1 內(nèi)嵌匯編指令
5.8.2 在匯編程序中訪問C程序變量
5.8.3 匯編程序與C/C++程序的相互調(diào)用規(guī)則——ARPCS
5.8.4 匯編程序與C/C++程序的相互調(diào)用
5.9 嵌入式Linux下C語言編程——一文件的操作
5.9.1 文件的創(chuàng)建和讀寫
5.9.2 移動文件的讀寫位置
5.9.3 文件的各個屬性
5.9.4 目錄文件的操作
練習(xí)題
第6章 ARMADS集成開發(fā)環(huán)境
6.1 ADS1.2 的安裝
6.1.1 ADS概述
6.1.2 ADS1.2 的安裝
6.2 ADS集成開發(fā)環(huán)境的使用
6.2.1 建立一個新下程
6.2.2 配置生成目標(biāo)
6.2.3 編譯和鏈接工程
6.3 用AXD進行代碼凋試
練習(xí)題
第7章 ARM異常中斷處理及編程
7.1 ARM異常中斷處理概述
7.2 ARM體系異常中斷
7.2.1 ARM體系異常中斷種類
7.2.2 異常中斷向量表及異常中斷優(yōu)先級
7.2.3 支持中斷跳轉(zhuǎn)的解析程序
7.3 ARM應(yīng)用系統(tǒng)中異常中斷處理程序的安裝
7.3.1 在系統(tǒng)復(fù)位時安裝異常中斷處理程序
7.3.2 在C程序中安裝異常中斷處理程序
7.4 ARM的SWI異常中斷處理程序設(shè)計
7.4.1 SWI異常中斷處理程序的實現(xiàn)
7.4.2 SWI異常中斷調(diào)用
7.5 FIQ和IRQ異常中斷程序設(shè)計
7.5.1 IRQ和FIQ異常中斷處理程序
7.5.2 多中斷源的IRQ異常中斷處理程序
7.6 基于ARM9芯片S3C2410異常中斷程序設(shè)計
7.6.1 異常中斷響應(yīng)和返回
7.6.2 異常處理程序設(shè)計
7.6.3 外中斷初始化程序設(shè)計
練習(xí)題
第8章 基于μC/OS-II操作系統(tǒng)的ARM編程
8.1 μC/OS-II的內(nèi)核
8.1.1 μC/OS-II內(nèi)核調(diào)度特點
8.1.2 任務(wù)控制塊OS_TCB描述
8.1.3 就緒表(ReadyList)
8.1.4 任務(wù)狀態(tài)
8.1.5 任務(wù)調(diào)度分析
8.1.6 μC/OS-II的初始化
8.2 μC/OS-II內(nèi)核的API函數(shù)
8.2.1 任務(wù)類
8.2.2 消息類
8.2.3 同步信號量類
8.2.4 時間類
8.2.5 內(nèi)存操作類
8.2.6 互斥信號量管理類
8.3 μC/OS-II應(yīng)用程序的基本結(jié)構(gòu)
8.4 μC/OS-II在S3C2410X上的移植
8.4.1 移植原理
8.4.2 移植實現(xiàn)
8.5 基于μC/OS-II操作系統(tǒng)的開發(fā)案例
8.5.1 繪圖API函數(shù)的應(yīng)用
8.5.2 系統(tǒng)的消息循環(huán)
8.5.3 文件的使用
8.5.4 列表控件的使用
8.5.5 文本框控件的使用
練習(xí)題
第9章 基于ARM9和Linux嵌入式系統(tǒng)設(shè)計
9.1 嵌入式Linux的開發(fā)環(huán)境
9.1.1 嵌入式Linux開發(fā)環(huán)境建立
9.1.2 嵌入式Linux開發(fā)的一般過程
9.2 Linux開發(fā)工具的使用
9.2.1 Linux開發(fā)工具GNUgcc的使用
9.2.2 gdb調(diào)試器簡介
9.3 GNUmake命令和Makefile文件
9.3.1 Makefile文件的規(guī)則
9.3.2 Makefile文件中隱含規(guī)則
9.3.3 Makefile文件的命令
9.3.4 Makefile文件中的變量
9.3.5 Makefile文件的條件判斷
9.3.6 Makefile文件中的常用函數(shù)
9.3.7 子目錄Makefile
9.4 嵌入式Linux引導(dǎo)程序
9.4.1 BootLoader引導(dǎo)程序
9.4.2 VIVI簡介
9.5 嵌入式Linux下程序調(diào)試應(yīng)用舉例
9.5.1 Linux宿主機下的應(yīng)用程序調(diào)試
9.5.2 目標(biāo)機下的應(yīng)用程序調(diào)試
練習(xí)題
附錄AS3C2410X引腳及信號定義
參考文獻
序言
ARM處理器是一種低功耗、高性能的32位RISC處理器。目前,常用的ARM微處理器系列有ARM7系列、ARM9系列、ARM9E系列、ARMl0E系列、SecurCore系列、Intel的Xscale等,其中ARM7、ARM9、ARM9E和ARMlO為4個通用處理器系列,每一個系列提供一套相對獨特的性能來滿足不同應(yīng)用領(lǐng)域的需求。
本書主要內(nèi)容如下:
第1章對ARM微處理器、ARM技術(shù)的基本概念做了一些簡單的介紹,從ARM體系結(jié)構(gòu)的發(fā)展及技術(shù)特征、ARM微處理器的應(yīng)用領(lǐng)域及特點、ARM微處理器的體系結(jié)構(gòu)、ARM微處理器的應(yīng)用選型等方面分別進行了闡述。
第2章介紹了ARM微處理器的編程模型的基礎(chǔ)知識以及基于ARM920T核微處理器的基礎(chǔ)知識。主要內(nèi)容包括AR.M920T內(nèi)核編程模型、ARM920T的運行模式、ARM體系結(jié)構(gòu)的寄存器組織、ARM微處理器的異常狀態(tài)等。
第3章介紹了ARM指令集、Thumb指令集以及各類指令對應(yīng)的尋址方式,同時還闡述了ARM微處理器所支持的指令集的具體使用方法。
第4章主要介紹了ARM程序設(shè)計的一些基本概念以及在匯編語言程序設(shè)計中常見的偽指令、ARM匯編語言的基本語句格式、ARM匯編語言程序的基本結(jié)構(gòu)等,同時簡單介紹了ARM的C/C++和匯編語言的混合編程等問題。
評論