出版時(shí)間:2009-1 出版社:北京航空航天大學(xué)出版社 作者:張瑜 等 著 頁(yè)數(shù):255
前言
隨著嵌入式系統(tǒng)的發(fā)展和普及,吸引越來(lái)越多的大學(xué)電類專業(yè)的學(xué)生和業(yè)余愛(ài)好者投入到ARM的學(xué)習(xí)和開(kāi)發(fā)中。ARM是一門應(yīng)用性和實(shí)踐性很強(qiáng)的技術(shù),然而,目前市場(chǎng)上的ARM書籍主要側(cè)重于理論介紹,而與之相應(yīng)的實(shí)驗(yàn)類教材非常少。針對(duì)這個(gè)問(wèn)題,本書以實(shí)例為主線,從初識(shí)ARM體系結(jié)構(gòu)、開(kāi)發(fā)環(huán)境及編寫第一個(gè)ARM程序開(kāi)始,到最后完成異常處理程序設(shè)計(jì)以及μC/OSⅡ和Linux內(nèi)核在ARM上的操作系統(tǒng)移植,由易到難,由簡(jiǎn)到繁,循序漸進(jìn),從而使嵌入式初學(xué)者能輕松入門,為以后進(jìn)一步從事嵌入式系統(tǒng)的開(kāi)發(fā)打下扎實(shí)的基礎(chǔ)。本書具有以下特點(diǎn): (1) 方法新穎 面向ARM的初學(xué)者,采用了“比較”的方法,即從熟悉的Intel 8086處理器入手,引導(dǎo)讀者逐步深入學(xué)習(xí)ARM。通過(guò)對(duì)Intel 8086與ARM的層層比較和分析,幫助ARM初學(xué)者在總結(jié)Intel 8086體系結(jié)構(gòu)和編程模式的基礎(chǔ)上能夠較快地掌握ARM編程。 ?。?) 通俗易懂 文字表述淺顯易懂,所選的35個(gè)ARM編程和操作系統(tǒng)在ARM上的移植實(shí)例,由淺入深,循序漸進(jìn),通用性強(qiáng),并配以大量圖表說(shuō)明,尤其適合于沒(méi)有硬件基礎(chǔ)的嵌入式系統(tǒng)的初學(xué)者,對(duì)于具有一定基礎(chǔ)的ARM開(kāi)發(fā)人員也有相當(dāng)大的參考價(jià)值。全書共分13章?! 〉?章介紹了ARM基礎(chǔ)知識(shí)及處理器體系結(jié)構(gòu)實(shí)驗(yàn)?! 〉?章初步介紹了ARM開(kāi)發(fā)工具ADS及 ADS下簡(jiǎn)單C語(yǔ)言程序?qū)嶒?yàn)?! 〉?章介紹了簡(jiǎn)單的ARM匯編程序設(shè)計(jì)及ADS下簡(jiǎn)單ARM匯編程序?qū)嶒?yàn)?! 〉?章介紹了尋址方式及ARM尋址方式實(shí)驗(yàn)?! 〉?章介紹了數(shù)據(jù)處理指令及ARM數(shù)據(jù)處理指令實(shí)驗(yàn)?! 〉?章介紹了數(shù)據(jù)加載與存儲(chǔ)指令及ARM數(shù)據(jù)加載與存儲(chǔ)指令程序?qū)嶒?yàn)。 第7章介紹了控制轉(zhuǎn)移指令及ARM控制轉(zhuǎn)移指令程序?qū)嶒?yàn)。 第8章介紹了子程序設(shè)計(jì)及ARM子程序設(shè)計(jì)實(shí)驗(yàn)?! 〉?章介紹了處理器的工作模式及ARM工作模式切換程序?qū)嶒?yàn)。 第10章介紹了匯編語(yǔ)言和C語(yǔ)言混合編程及其實(shí)驗(yàn)。 第11章介紹了中斷處理及ARM異常處理程序?qū)嶒?yàn)?! 〉?2章介紹了μC/OSⅡ基礎(chǔ)及μC/OSⅡ在ARM上的移植實(shí)驗(yàn)?! 〉?3章介紹了嵌入式Linux基礎(chǔ)及Linux在ARM上的移植與開(kāi)發(fā)實(shí)驗(yàn)。本書由張瑜、王益涵任主編,張崇明、郭榮任副主編。第1、8、11章由張瑜、王益涵編寫,第9、10、12章由王益涵編寫,第2~4章及第13章由張崇明編寫,第5~7章及8.1.3小節(jié)由郭榮編寫。張瑜對(duì)各章進(jìn)行了修改和統(tǒng)稿。劉啟中教授對(duì)全書進(jìn)行了審定。本書編寫中,作者參考了大量的有關(guān)書籍,從同行中學(xué)到了很多知識(shí),并參考了相關(guān)網(wǎng)站資料,而且得到了上海工程技術(shù)大學(xué)、上海師范大學(xué)、中北大學(xué)、北京航空航天大學(xué)等單位教師和領(lǐng)導(dǎo)的大力支持,中國(guó)電子學(xué)會(huì)嵌入式專委會(huì)和博創(chuàng)科技為本書組稿做了大量工作,汪春梅副教授對(duì)本書的編寫提供了技術(shù)方面的協(xié)作,并提出了許多寶貴的建議,在此一并表示衷心的感謝。作者雖然從事嵌入式系統(tǒng)的教學(xué)和研究工作多年,但由于ARM的發(fā)展極為迅速及作者研究方向的限制,本書難免有疏漏和錯(cuò)誤之處,敬請(qǐng)讀者和同行批評(píng)指正?! ∽髡摺 ?008年9月
內(nèi)容概要
《ARM嵌入式程序設(shè)計(jì)》從理論和實(shí)驗(yàn)兩方面系統(tǒng)介紹了ARM體系結(jié)構(gòu)、開(kāi)發(fā)環(huán)境、ARM匯編程序設(shè)計(jì)、ARM工作模式切換程序、異常處理程序設(shè)計(jì)、匯編和C語(yǔ)言混合編程以及uC/OS-Ⅱ和Linux內(nèi)核在ARM上的操作系統(tǒng)移植等。每章最后都附有實(shí)驗(yàn)思考,以鞏固所學(xué)內(nèi)容,激發(fā)讀者的創(chuàng)新意識(shí)?! 禔RM嵌入式程序設(shè)計(jì)》可作為普通高校計(jì)算機(jī)、自動(dòng)化、電子信息類等專業(yè)學(xué)生的實(shí)驗(yàn)教材,也可作為從事嵌入式系統(tǒng)相熒領(lǐng)域技術(shù)人員的參考用書。
書籍目錄
第1章 ARM基礎(chǔ)知識(shí)1.1 發(fā)展歷史1.1.1 Intel80x86的發(fā)展歷史1.1.2 ARM的發(fā)展歷史1.2 功能結(jié)構(gòu)1.2.1 Intel8086功能結(jié)構(gòu)1.2.2 ARM功能結(jié)構(gòu)1.3 寄存器組1.3.1 Intel8086寄存器組1.3.2 ARM寄存器組1.4 存儲(chǔ)器組織1.4.1 Intel8086存儲(chǔ)器組織1.4.2 ARM存儲(chǔ)器組織1.5 指令系統(tǒng)1.5.1 一般計(jì)算機(jī)的指令系統(tǒng)1.5.2 Intel8086指令系統(tǒng)1.5.3 ARM指令系統(tǒng)1.6 實(shí)驗(yàn)1處理器體系結(jié)構(gòu)實(shí)驗(yàn)1.6.1 實(shí)驗(yàn)?zāi)康?.6.2 實(shí)驗(yàn)環(huán)境1.6.3 實(shí)驗(yàn)內(nèi)容1.6.4 實(shí)驗(yàn)過(guò)程1.6.5 實(shí)驗(yàn)思考第2章 初識(shí)ARM開(kāi)發(fā)工具ADS2.1 從MASM到ADS2.1.1 MASM簡(jiǎn)介2.1.2 ADS簡(jiǎn)介2.1.3 MASM與ADS命令行開(kāi)發(fā)工具的比較2.2 ARM圖形化界面CodeWarrior2.3 ARM調(diào)試工具AXD2.4 實(shí)驗(yàn)2ADS下簡(jiǎn)單C語(yǔ)言程序?qū)嶒?yàn)2.4.1 實(shí)驗(yàn)?zāi)康?.4.2 實(shí)驗(yàn)環(huán)境2.4.3 實(shí)驗(yàn)內(nèi)容2.4.4 實(shí)驗(yàn)過(guò)程2.4.5 實(shí)驗(yàn)思考第3章 簡(jiǎn)單的ARM匯編程序設(shè)計(jì)3.1 ARM匯編程序設(shè)計(jì)的一般過(guò)程3.2 ARM程序的編輯3.3 ARM編譯器設(shè)置3.4 ARM鏈接器設(shè)置3.5 ARM程序的編譯和鏈接3.6 ARM程序執(zhí)行過(guò)程的跟蹤和調(diào)試3.7 實(shí)驗(yàn)3ADS下簡(jiǎn)單ARM匯編程序?qū)嶒?yàn)3.7.1 實(shí)驗(yàn)?zāi)康?.7.2 實(shí)驗(yàn)環(huán)境3.7.3 實(shí)驗(yàn)內(nèi)容3.7.4 實(shí)驗(yàn)過(guò)程3.7.5 實(shí)驗(yàn)思考第4章 尋址方式4.1 尋址方式的基本概念4.2 Intel8086的尋址方式4.3 ARM的尋址方式4.4 實(shí)驗(yàn)4ARM尋址方式實(shí)驗(yàn)4.4.1 實(shí)驗(yàn)?zāi)康?.4.2 實(shí)驗(yàn)環(huán)境4.4.3 實(shí)驗(yàn)內(nèi)容4.4.4 實(shí)驗(yàn)過(guò)程4.4.5 實(shí)驗(yàn)思考第5章 數(shù)據(jù)處理指令5.1 Intel8086的數(shù)據(jù)處理指令5.1.1 數(shù)據(jù)傳送指令5.1.2 算術(shù)運(yùn)算指令5.1.3 邏輯運(yùn)算指令5.1.4 移位指令5.2 ARM數(shù)據(jù)處理指令5.2.1 寄存器傳送指令5.2.2 移位指令5.2.3 算術(shù)運(yùn)算指令5.2.4 邏輯運(yùn)算指令5.2.5 比較和測(cè)試指令5.2.6 乘法指令5.3 實(shí)驗(yàn)5ARM數(shù)據(jù)處理指令實(shí)驗(yàn)5.3.1 實(shí)驗(yàn)?zāi)康?.3.2 實(shí)驗(yàn)環(huán)境5.3.3 實(shí)驗(yàn)內(nèi)容5.3.4 實(shí)驗(yàn)過(guò)程5.3.5 實(shí)驗(yàn)思考第6章 數(shù)據(jù)加載與存儲(chǔ)指令第7章 控制轉(zhuǎn)移指令第8章 子程序設(shè)計(jì)第9章 處理器的工作模式第10章 匯編和C語(yǔ)言混合編程第11章 中斷處理第12章 霤/OSⅡ基礎(chǔ)第13章 嵌入式Linux基礎(chǔ)附錄A ARM指令表附錄B ARM偽指令表附錄C ARM偽操作表附錄D 實(shí)驗(yàn)思考參考答案參考文獻(xiàn)
章節(jié)摘錄
第1章 ARM基礎(chǔ)知識(shí) 80x86是美國(guó)Intel公司開(kāi)發(fā)的微處理器系列芯片。ARM(Advanced RISC Machines)既是成立于英國(guó)劍橋?qū)iT從事出售芯片設(shè)計(jì)技術(shù)授權(quán)的公司名字,也是對(duì)一類微處理器的通稱。基于ARM體系結(jié)構(gòu)的處理器,除了具有ARM體系結(jié)構(gòu)的共同特點(diǎn)以外,每一個(gè)系列的ARM微處理器都還具有各自的特點(diǎn)及應(yīng)用領(lǐng)域?! ?.1 發(fā)展歷史 1.1.1 Intel 80x86的發(fā)展歷史 1971年,Intel公司開(kāi)發(fā)出了第一代微處理器4004,它是一款4位微處理器;1972年,Intel公司推出了第一款8位微處理器8008;1974年,Intel公司又推出了為多種應(yīng)用而設(shè)計(jì)的8位微處理器8080,它是Intel公司的第二代微處理器,也是第一款通用微處理器,其功能相當(dāng)強(qiáng)。8080為Intel公司成為當(dāng)今CPU的主流打下了堅(jiān)實(shí)的基礎(chǔ)。1976年,Intel公司公布了8080的變種8080A,之后還公布了作為8080A增強(qiáng)型的8085?! ?978年,Intel公司率先推出了第三代微處理器——16位微處理器8086。它具有兩個(gè)關(guān)鍵的結(jié)構(gòu)概念:存儲(chǔ)器分段和指令譯碼表。Intel公司的80x86家族也由此開(kāi)始誕生。8086內(nèi)部分成兩部分:總線接口部件BIU(Bus Interface Unit)和執(zhí)行部件EU(Execution Unit)?! 榱朔奖闩c8位外部接口或設(shè)備相連,Intel公司于1979年又推出了8088。8088是8086的8位版,它具有與8086相同的內(nèi)部結(jié)構(gòu),包括EU、BIU和16位的寄存器,所不同的是8088對(duì)外只有8根數(shù)據(jù)線,總是按字節(jié)取內(nèi)存單元。8088也稱為準(zhǔn)16位微處理器?! ?981年,Intel公司又推出了80186。除了8086所具有的特性外,80186還集成了若干通用系統(tǒng)所需的部件,包括1個(gè)片選邏輯部件、2個(gè)獨(dú)立的高速直接存儲(chǔ)器訪問(wèn)通道、3個(gè)可編程時(shí)鐘和1個(gè)可編程中斷控制器,這些部件使80186功能更強(qiáng)。
編輯推薦
《ARM嵌入式程序設(shè)計(jì)》中的ARM是一門應(yīng)用性和實(shí)踐性很強(qiáng)的技術(shù),然而,目前市場(chǎng)上的ARM書籍主要側(cè)重于理論介紹,而與之相應(yīng)的實(shí)驗(yàn)類教材非常少。針對(duì)這個(gè)問(wèn)題,《ARM嵌入式程序設(shè)計(jì)》以實(shí)例為主線,從初識(shí)ARM體系結(jié)構(gòu)、開(kāi)發(fā)環(huán)境及編寫第一個(gè)ARM程序開(kāi)始,到最后完成異常處理程序設(shè)計(jì)以及μC/OSⅡ和Linux內(nèi)核在ARM上的操作系統(tǒng)移植,由易到難,由簡(jiǎn)到繁,循序漸進(jìn),從而使嵌入式初學(xué)者能輕松入門,為以后進(jìn)一步從事嵌入式系統(tǒng)的開(kāi)發(fā)打下扎實(shí)的基礎(chǔ)。
圖書封面
評(píng)論、評(píng)分、閱讀與下載