新書推薦:
《
泉舆日志 幻想世界宝石生物图鉴
》
售價:NT$
611.0
《
养育女孩 : 官方升级版
》
售價:NT$
230.0
《
跨界:蒂利希思想研究
》
售價:NT$
500.0
《
千万别喝南瓜汤(遵守规则绘本)
》
售價:NT$
203.0
《
大模型启示录
》
售價:NT$
510.0
《
东法西渐:19世纪前西方对中国法的记述与评价
》
售價:NT$
918.0
《
养育男孩:官方升级版
》
售價:NT$
230.0
《
小原流花道技法教程
》
售價:NT$
500.0
|
編輯推薦: |
这本由凌明编著的《嵌入式系统高级C语言编程十二五高等院校规划教材》的主要内容来自于东南大学集成电路学院“嵌入式系统高级C语言编程”这门硕士选修课程。作为SOC与嵌入式系统专业方向课程体系的一部分,《嵌入式系统高级C语言编程十二五高等院校规划教材》旨在帮助学生掌握针对嵌入式系统的基于C语言的软件项目开发流程,掌握较为复杂的C语言编程知识和技巧,培养良好的编程风格和调试习惯,并通过对一个具体的软件模块ASIX Window GUI的分析,使学生掌握分析代码的方法以及设计软件系统需要考虑的各要素。
|
內容簡介: |
这本由凌明编著的《嵌入式系统高级C语言编程 十二五高等院校规划教材》主要介绍针对嵌入式系 统基于C语言的软件项目开发流程、较为复杂的C语言 编程知识与技巧、编程风格及调试习惯,并通过对一 个具体的软件模块ASIX Window GUI的分析,介绍 分析代码的方法以及设计软件系统需要考虑的各要素 。本书以实际项目中的代码为例来进行介绍,详细分 析在嵌入式系统开发中程序员应该注意的方法、技巧 和存在的陷阱。
《嵌入式系统高级C语言编程十二五高等院校规 划教材》适合用作学习嵌入式系统的高年级本科生 或硕士研究生的教学用书,也可作为从事嵌入式系统 编程的软、硬件工程师的技术参考用书。
|
目錄:
|
第1章 概述
1.1 C语言的历史和特点
1.2 一个小测验
1.3 如何学好嵌入式系统中的c语言编程
1.3.1 真正深刻地认识存储器
1.3.2 认识和理解嵌入式C编程环境
1.3.3 认识和掌握C语言中的常见陷阱
1.3.4 掌握c语言程序设计过程中的调试方法
1.4 推荐的参考书目
1.4.1 C语言的初级教材
1.4.2 C语言进阶书籍
1.5 思考题
第2章 C语言的关键字与运算符
2.1 C语言的关键字
2.1.1 数据类型关键字
2.1.2 控制语句关键字与相关语句
2.1.3 存储类型关键字
2.1.4 其他类型关键字
2.2 C语言的运算符
2.2.1 运算符中需要注意的问题
2.2.2 运算符的优先级
2.2.3 表达式求值
2.2.4 运算符的词法分析
2.3 C语言的指针
2.3.1 指针的3个要素
2.3.2 指针的类型
2.3.3 指针的初始化
2.3.4 指针的运算
2.3.5 指针与字符串
2.4 思考题
第3章 C语言的函数
3.1 C语言的函数
3.1.1 函数的声明、原型与返回值
3.1.2 函数的参数
3.1.3 可变参数的函数
3.1.4 递归函数
3.2 标准库函数
3.2.1 输入与输出:
3.2.2 字符类别测试:
3.2.3 字符串函数:
3.2.4 数学函数:
3.2.5 实用函数:
3.2.6 断言:
3.2.7 可变参数表:
3.2.8 非局部跳转:
3.2.9标准库函数与系统调用
3.3 声明
3.4 作用域与链接属性
3.4.1 代码块作用域
3.4.2 文件作用域
3.4.3 函数作用域
3.4.4 原型作用域
3.4.5 链接属性
3.5 C的预编译处理
3.6 思考题
第4章 编译、汇编与调试
4.1 嵌入式软件开发流程与工具
4.1.1 嵌入式软件开发的一般流程
4.1.2 编译器简介
4.1.3 链接器简介
4.1.4 嵌入式软件开发的调试环境
4.1.5 ARM处理器的开发工具
4.2 基于C语言软件项-目中的文件关系
4.2.1 C语言项目中的文件依赖关系
4.2.2 Make文件
4.3 C代码与汇编
4.3.1 ATPCS
4.3.2 C与汇编的混合编程
4.3.3 ARM编译器对局部变量和入口参数的处理
4.4 思考题
第5章 存储器与指针
5.1 再论C语言中的指针
5.1.1 指针与数组
5.1.2 函数指针
5.2 C语言中的内存陷阱
5.2.1 局部变量
5.2.2 动态存储区
5.2.3 函数的指针参数
5.3 堆栈
5.3.1 堆栈的作用
5.3.2 函数调用栈帧与中断栈帧
5.3.3 堆栈的跟踪与调试
5.4 动态内存分配
5.4.1 算法
5.4.2 malloc函数
5.4.3 free函数
5.5 利用链表构建复杂数据结构
5.5.l ASIX Window的数据结构
5.5.2 ASIX Window的窗口创建函数
5.5.3 ASIX Window的窗口删除函数
5.6 思考题
第6章 中断与设备驱动
6.1 设备驱动简介
6.1.1 设备驱动、BootLoader与BSP
6.1.2 设备驱动程序的结构
6.2 中断与中断处理
6.2.1 中断的重要性
6.2.2 中断的分类与处理过程
6.2.3 C语言中的中断处理
6.2.4 断处理程序的编写
6.3.函数的可重人问题
6.3.1 什么是函数的重入
6.3.2 函数可重入的条件
6.3.3 不可重入函数的互斥保护
6.3.4 重入函数的伪问题
6.4 设备驱动案例——键盘驱动
6.4.1 5×5键盘的硬件原理
6.4.2 键盘设备驱动实例
6.5 启动代码——UBOOT分析
6.5.1 系统启动与BootLoader
6.5.2 UBOOT技术实现分析
6.6 思考题
第7章 编码风格
7.1 简介及说明
7.2 语言规则
7.2.1 基础
7.2.2 数据
7.2.3 说明与表达式
7.2.4 函数
7.2.5 源文件
7.3 风格指导
7.3.1 程序的书写
7.3.2 命名
7.4 思考题
第8章 代码的调试
8.1.Bug与Debug
8.1.1 初学者的困惑
8.1.2 Debug的手段和工具
8.2 Bug的定位与修正
8.2.1 关注代码的层次与接口
8.2.2 关注内存的访问越界
8.2.3 关注边界情况
8.2.4 Bug的修正
8.3 其他的方法和工具
8.3.1 利用断言
8.3.2 代码检查CodeReview
8.3.3 编译器的警告与Lint工具
8.3.4 好的代码风格
8.4 思考题
第9章 ASIX Window GUI设计详解
9.1 ASIX Window概述
9.2 ASIX Windows底层软件平台的实现
9.2.1 ASIX OS对ASIX WIN在系统调用上的支持
9.2.2 ASIX GPC图形库的设计
9.2.3 ActiveArea和笔中断的设计
9.3 ASIX WIN系统任务管理模块的设计
9.4 ASIX WIN消息处理模块的设计
9.4.1 ASIX WIN消息机制的设计
9.4.2 ASIX WIN消息机制的应用流程
9.5 ASIX WIN窗口类管理模块的设计
9.6 ASIX WIN窗口及控件的实现
9.6.1 ASIX WIN窗口的实现
9.6.2 ASIX WIN控件的实现
9.7 思考题
附录A C++C代码审查表(C语言部分)
附录B 部分课后思考题解答
附录C 嵌入式C语言测试样卷与参考答案
附录D UB4020MBT开发板简介
参考文献
|
|