软件下载站,为您提供安全的软件下载!

当前位置:首页 > 电脑专区 > 应用软件 > 电子阅读 > 嵌入式系统高级c语言编程-凌明pdf扫描版

嵌入式系统高级c语言编程-凌明pdf扫描版

分享到:
嵌入式系统高级c语言编程2011年1月由北京航空航天大学出版社出版发行,是一本讲述C语言相关知识的学习书籍。这里小编给大家讲下C语言的八大特点:一语言简洁,紧凑,使用方便,灵活;二运算符很丰富,有34种;三数据结构丰富;四具有结构化的控制语句;五C语言的语法限制不太严格,程序设计自由度大,是一把双刃剑;六C语言允许直接访问物理地址,能进行直接对硬件操作;七生成目标代码质量高,程序执行效率高;八可移植性好。小编分享的这本嵌入式系统高级C语言编程将主要介绍针对嵌入式系统的基于C语言的软件项目开发的流程,较为复杂的c语言编程知识和技巧,编程风格和调试习惯,并通过对一个具体的软件模块(ASIX.Window.GUI)的分析,介绍分析代码的方法以及设计软件系统需要考虑的各要素。嵌入式系统高级C语言编程将以实际项目中的代码作实例来进行介绍,详细分析在嵌入式系统开发中程序员应该注意的方法,技巧和陷阱。嵌入式系统高级C语言编程》的读者可以是学习嵌入式系统的高校学生(高年级本科生或硕士研究生),或者是从事嵌入式系统编程的软硬件工程师。
嵌入式系统高级c语言编程

作者介绍:

凌明,1972年5月出生,副教授。现任东南大学电子科学与工程学院副院长,东南大学集成电路学院副院长。先后参加了十一五“核、高、基”国家科技重大专项“个人移动信息终端SOC芯片研发与应用”项目:国家十五、十一五“863”、“可重构媒体处理器”、“空间信息接收手持终端原型机开发”、“手持信息终端SOC设计”等项目:江苏省十五科技招标项目和省成果转化专项“基于目标产品的SOC设计与产业化”、“GPS导航芯片及目标产品产业化”。获江苏省2003年度科技进步三等奖一项,江苏省2004年度科技进步一等奖一项,教育部2009科技进步二等奖一项:多次获东南大学奖教金、青年教师授课竞赛奖励。主要研究方向:SOC设计方法学、SOC存储子系统设计、嵌入式系统设计等。

嵌入式系统高级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.1 ASIX Window的数据结构
5.5.2 ASIX Window的窗口创建函数
5.5.3.ASIXWindow的窗口删除函数
5.6 思考题
第6章 中断与设备驱动
6.1 设备驱动简介
6.1.1 设备驱动、Boot Loader与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 系统启动与:Boot Loader
6.5.2 UBOOT、技术实现分析
6.6 思考题
第7章 编码风格
7.1 简介及说明
7.2 语言规则
7.2.1 基础
7.2.2 数据
7.2.3 说明与表达式
7.2.4 函数
……
第8章 代码的调试
第9章 ASIX Window Gui设计详解

精彩书摘:

.....
②函数名的命名没有意义,阅读这段代码的人很难从abc这个函数名上看出这个函数到底是什么功能。程序员在编写代码时,首先要想到的就是自己编写的代码不仅是给编译器“看”的,更重要的是给别人或是自己看的。因此在函数命名以及变量命名时必须采用有意义的英文单词或者是单词短语。
③数组c[]中存放的是学生的成绩,程序定义了数组中一共有9个元素。但是为了程序的易读性和将来的可维护性,最好应该将学生的人数定义为一个常量宏,这样当学生人数发生变化时可以非常方便地进行修改。
④函数abc()没有人口参数,也没有返回值,程序通过全局数组c[]和全局变量b来传递函数内部的数据。初学写程序的人都特别喜欢使用全局变量,因为没有限制,想什么时候引用都可以。其实,不恰当地使用全局变量是程序员的恶梦,全局变量加强了函数间的耦合度,使得程序的模块间彼此紧密关联,这样会使得对程序的修改牵一发而动全身,非常不适合代码的复用和调试;而且正如我们在第6章中所介绍的,全局变量是临界资源,会造成代码变得不可安全重入。因此,一个设计合理的软件项目一定是非常谨慎地使用全局变量的,函数间的关联通过函数的人口参数与返回值发生。
⑤最后的问题是程序书写风格的问题,比如上面的代码没有按照规则缩进,没有必要的注释,在运算符前后没有必要的空格。虽然这些问题并不影响程序的正确执行,但它们的确会给程序的阅读带来理解上的困难,因此从程序易读和易维护的角度上来看,我们必须遵循一些通用的代码书写规则。
......

下载说明:

方法一:
1、下载并解压,得出pdf文件
2、如果打不开本文件,别着急,这时候请务必在3322软件站选择一款阅读器下载哦
3、安装后,再打开解压得出的pdf文件
4、以上都完成后,接下来双击进行阅读就可以啦,朋友们开启你们的阅读之旅吧。
方法二:
1、可以在手机里下载3322软件站中的阅读器和百度网盘
2、接下来直接将pdf传输到百度网盘
3、用阅读器打开即可阅读

特别备注:

1.来源于网络,仅用于分享知识,学习和交流!请下载完在24小时内删除。
2.禁用于商业用途!如果您喜欢《嵌入式系统高级c语言编程》,请购买正版,谢谢合作。
3.爱学习,请到3322软件站查找资源自行下载!
展开更多

软件截图

下载提示

嵌入式系统高级c语言编程-凌明pdf扫描版

正在下载...

扫描二维码,手机下载APP

软件下载站本地下载

相关文章