没有合适的资源?快使用搜索试试~ 我知道了~
c语言基础强化成都某培训机构
需积分: 0 2 下载量 181 浏览量
2011-08-09
22:45:28
上传
评论
收藏 47KB DOC 举报
温馨提示
试读
8页
c基础强化,成都嵌入式培训机构的基础补习总结,效果还可以自我感觉。
资源详情
资源评论
资源推荐
第二天:
对 的理解:
闪存可分为 和 型, 型存在独立的地址总线和数据总线,可在线运行,所以可
以作为内存。
型只有数据总线,故一般用作数据存储器,即平时所用的 盘。
要用芯片控制一个数字设备,必须至少存在以下寄存器:控制寄存器,数据寄存器和状态
寄存器。
语言指针的理解:
对指针的理解,在硬件控制中,物理地址最重要的一个用途,就是可以通过指针来直接控
制地址从而操作硬件的寄存器。
程序的执行过程:
首先我们编程的是 源文件,第一个步骤是编译系统的预处理,这一步骤后文件为,而后
文件被处理为 的汇编文件,此文件中并非都为汇编指令,因为文件还要经过编译,其中
含有一部分编译信息,经过编译被处理为 的目标文件,内容为机器码的格式和一部分链
接信息,经过链接过程被处理为 的可执行文件。因为 文件是建立在一定的操作系
统之上的,其中的内容也并非全部为机器码,还含有一部分操作系统所需要的信息。
静态编译和动态编译:
静态编译就是指在编译时,要把所有模块都编译进 中,当启动 时所有模块全部加
载进来,加载的过程比较费力。
动态编译指的是在编译时,没有把其中的部分模块编译进来,一般情况下可以把这些模块
都编译成,这样在启动程序时,这些模块就不需要加载进来,而是在运行程序的时候,
用到哪个模块再开始调用哪个模块。
即:静态编译运行时不需要用到别的文件,而动态编译运行时需要用到别的文件。从而静
态编译占用空间大,但执行时间快;动态编译,节约空间,执行速度相对较慢。
程序的内存分配:
和 程序中所分配的内存无非就包括这么几种:
栈区:由系统自动分配释放,存放函数的参数值,局部变量的值等,其操作方式类似于数
据结构中的栈。
堆区:一般由程序员分配释放,若程序员不释放,程序结束后可能会由系统回收,也可能
会造成内存泄露。分配方式类似于链表。
全局区(静态区):全局变量和静态变量是放在一起的,初始化的全局变量和静态变量放
在一块区域,未初始化的全局和静态变量在相邻的另一块区域,程序结束后由系统释放。
文字常量区:常量字符串就是放在这里,结束后由系统释放。
程序代码区:存放函数体的二进制代码。
堆和栈的区别可以用如下的比喻来看出:çççç
使用栈就象我们去饭馆里吃饭,只管点菜(发出申请)、付钱、和吃(使用),吃饱了就çç
走,不必理会切菜、洗菜等准备工作和洗碗、刷锅等扫尾工作,他的好处是快捷,但是自çç
由度小。çççç
yshous
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0