出版時間:2009-2 出版社:電子工業(yè)出版社 作者:韓超 等著,北京亞嵌教育研究中心 組編 頁數:377
Tag標簽:無
前言
《嵌入式Linux上的c語言編程實踐》是一本提高嵌入式開發(fā)基本功的圖書。本書的關鍵詞為“嵌入式”和“C語言”。C語言是當前嵌入式領域開發(fā)中使用的主要語言,也是嵌入式開發(fā)最重要的基本功所在。同時,嵌入式領域的發(fā)展也為c語言提供了廣闊的應用場景。本書特點·雖然以介紹c語言為主,但更重要的是體現了c語言、“嵌入式”和“Linux”的關系。·雖然是基于Linux開發(fā)環(huán)境來介紹C語言編程的知識和技巧,但是書中的開發(fā)理念和技巧也適用于其他操作系統?!ど钊氲赝诰蛄薈語言與硬件的關系,突出嵌入式系統中編程的基本理念?!つ壳皢渭冎v解c語言和嵌入式開發(fā)的書籍較多,但是將二者相結合的書籍還不多見,本書的目標就是將二者相結合,立志于提高讀者在嵌入式開發(fā)中最重要的基本功。本書結構本書由五個部分組成,即按照知識的組織結構,分成基礎知識、Linux環(huán)境中C語言的開發(fā)環(huán)境和工具、庫函數、c語言高級編程和在嵌入式環(huán)境下的c語言編程。
內容概要
目前嵌入式技術和Linux程序開發(fā)技術成為計算機界比較流行的兩大技術。作為一種非?;A和常用的編程語言,C語言在嵌入式系統開發(fā)中體現了其強大的軟硬件操控能力。本書重點關注嵌入式Linux中的C語言編程,目的在于幫助讀者在基本掌握C語言的基礎上,逐漸掌握嵌入式 Linux中的C語言開發(fā)技術。本書包含程序環(huán)境搭建、調試技術、庫函數、高級編程、程序優(yōu)化等方面的知識。 本書的講解由淺入深,知識點突出,其中的一些示例取自常見技術和項目中的精華,工程應用性強。 本書適合高校學生閱讀,幫助其向具有研發(fā)能力的工程技術人員過渡,同樣也適用于嵌入式軟件開發(fā)人員補充知識、開闊眼界。
作者簡介
韓超,畢業(yè)于北京交通大學電子學院,曾在北京亞嵌教育研究中心擔任嵌入式ARM-Linux系統平臺的開發(fā)和教學工作,重視完整的知識體系與工程技術相結合。魏治宇,畢業(yè)于北京交通大學電子學院,曾在北京亞嵌教育研究中心及其合作單位負責嵌入式Linux相關平臺的教材編寫、軟件開發(fā)和實驗教學工作,對嵌入式系統理論知識與產品快速開發(fā)之間的關聯性有較深刻的理解。寥文江,工學碩士,畢業(yè)于北京交通大學電子信息學院,目前在北京聯合大學自動化學院從事嵌入式及Linux教學工作。研究方向為嵌入式實時操作系統、FPGA、Soc等,參與完成多項國家級、省部級科研項目并發(fā)表多篇學術論文。
書籍目錄
第一部分 基礎知識 第1章 Linux環(huán)境下C語言的開發(fā) 1.1 Linux下的C語言開發(fā)環(huán)境 1.2 在Linux中使用C語言開發(fā) 第2章 嵌入式環(huán)境中的C語言開發(fā) 2.1 嵌入式C語言的開發(fā)環(huán)境 2.2 嵌入式開發(fā)中C語言編程要點 第二部分 Linux環(huán)境中C語言的開發(fā)環(huán)境和工具 第3章 Linux的文本編輯工具VI 3.1 VI編輯器概述 3.2 VI的增強版VIM 3.3 VI編輯器的基本使用方法 3.4 VI編輯器的命令和高級操作 第4章 GCC程序開發(fā)工具 4.1 GNU工具綜述 4.2 GCC的編譯和連接 4.3 GCC的二進制工具 第5章 make工程管理工具 5.1 make和Makefile 5.2 Makefile使用示例 5.3 自動生成Makefile 第6章 GDB調試工具 6.1 GDB簡介 6.2 使用GDB調試程序 6.3 遠程GDB調試 第三部分 庫函數 第7章 C語言標準庫函數 7.1 ISO的C語言標準庫函數分類 7.2 標準格式化輸入/輸出類函數 7.3 字符處理類函數 7.4 字符串處理及轉換函數 7.5 數學計算類函數 7.6 數據結構和算法類函數 7.7 文件I/O操作類相關函數 7.8 日期時間類函數 7.9 國際化和本地化函數 7.10 錯誤處理類函數 7.11 其他一些工具函數 7.12 一些標準庫中有用的宏 第8章 Linux中C語言的擴展庫函數 8.1 文件I/O操作函數 8.2 文件權限相關的操作函數 8.3 用戶組操作函數 8.4 信號類函數 8.5 進程處理函數 第四部分 C語言高級編程 第9章 動態(tài)內存的堆與棧 9.1 程序內存區(qū)域的使用 9.2 C程序中??臻g的使用 9.3 C程序中的堆空間使用 9.4 堆內存和棧內存使用的比較 第10章 函數指針的使用 10.1 函數指針的概念 10.2 函數指針的使用 10.3 函數指針使用示例 第11章 回調函數的使用 11.1 回調函數的概念與作用 11.2 回調函數的語法 11.3 回調函數的使用 第12章 C語言實現對象編程 12.1 C語言實現基于對象編程的概念與作用 12.2 C語言基于對象編程實現封裝 12.3 C語言基于對象編程實現部分繼承功能 12.4 C語言基于對象編程實現部分多態(tài)功能 12.5 對C語言實現基于對象編程的思考 第五部分 在嵌入式環(huán)境下的C語言編程 第13章 C語言程序的內存布局 13.1 C語言程序的存儲區(qū)域 13.2 C語言程序的段 13.3 可執(zhí)行程序的連接 13.4 C語言程序的運行 第14章 嵌入式C語言常用語法 14.1 內存指針操作 14.2 位操作 14.3 大小端與對齊問題 14.4 程序的跳轉 第15章 嵌入式C語言編程的技巧 15.1 程序的優(yōu)化技巧 15.2 關于小數運算 15.3 函數參數和返回值的傳遞 15.4 變量的初始化技巧 15.5 程序的調試和宏使用的技巧 15.6 代碼剖析 參考文獻
章節(jié)摘錄
插圖:1.2 在Linux中使用c語言開發(fā)在Linux操作系統中,c語言程序的開發(fā)和其他環(huán)境類似,程序生成主要分成編譯、匯編、連接等幾個步驟。在Linux中使用文本編輯工具編輯程序源代碼也是程序開發(fā)的重要步驟。1.2.1 開發(fā)流程和開發(fā)工具c語言程序的開發(fā)過程是:使用編輯工具編寫文本形式的c語言源文件,然后編譯生成以機器代碼為主的二進制可執(zhí)行程序的過程。由源文件生成可執(zhí)行程序的開發(fā)過程如圖1-1所示。編譯是指把用高級語言編寫的程序轉換成相應處理器的匯編語言程序的過程。從本質上講,編譯是一個文本轉換的過程。對嵌入式系統而言,一般要把用c語言編寫的程序轉換成處理器的匯編代碼。編譯過程包含了C語言的語法解析和匯編語言的生成兩個步驟。匯編一般是逐個文件進行的,對于每一個C語言編寫的文件,可能還需要進行預處理。匯編是從匯編語言程序生成目標系統的二進制代碼(機器代碼)的過程。機器代碼的生成和處理器有密切的聯系。相對于編譯過程的語法解析,匯編的過程相對簡單。這是因為對于一款特定的處理器,其匯編語言和二進制的機器代碼是一一對應的。匯編過程的輸入是匯編代碼,這個匯編代碼可能來源于編譯過程的輸出,也可以是直接用匯編語言書寫的程序。
編輯推薦
《嵌入式Linux上的C語言編程實踐》特點:以介紹C語言為主,同時闡述了“C語言”、 “嵌入式”和“Linux”三者的關系。所介紹的C語言編程知識和技巧是基于Linux開發(fā)環(huán)境,其實也適用于其他開發(fā)環(huán)境下的C語言編程。深入挖掘C語言與硬件的關系,突出嵌入式編程的基本理念。將“嵌入式”與“C語言”結合起來講解,幫助讀者提高嵌入式開發(fā)的基本功。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載