什么是嵌入式系统
即嵌入到产品内部的计算机系统。嵌入式开发,也是计算机的开发。
CPU访问外部设备的方式
轮询
方法:CPU通过不断地查询外部设备的状态,如果外设准备好了,就可以向其读写数据。也就是CPU主动去问设备
。
缺点:CPU利用率太低,响应时间也不固定。
中断
方法:当外部设备准备好了,能过中断信号主动告知CPU
可以进行操作了。
特点:CPU利用率高,外部数据处理及时,适合小量数据处理。
DMA
中断方式虽然效率很高,但是对于大批量数据传输就不行了。假如接收一个很大的文件放到内存,外设每收到一包数据就会向CPU发一个中断,大量的中断会导致CPU忙于处理中断反而降低了系统的运行效率。
更好办法是,对于这种大量数据传输不通过CPU搬运,从设备直接传输到内存
,这种方式叫做直接内存访问(Direct Memory Access),简称DMA。
其工作方工是,外部设备在数据准备好之后只需要向DMA控制器发一个命令,把数据的地址
和大小
传过去,由DMA控制负责把数据从外部设备直接存放到内存。
编程语言分类
编译型
需要转换为机器语言的——如C,C++
解释型语言
通过特定的解释器,一边解释,一边输出结果——如脚本。
数据结构
计算机中的数据有多种类,如何处理数据就成为了一门学问。而数据结构就是关于数据组织和处理的一门学问。
数据结构包括下面三方面内容:
数据逻辑结构
描述数据元素之间的逻辑关系。
数据的物理结构
描述数据元素是在具体计算机设备中如何保存的。
数据的操作方法
也常被称为算法,是一种说明如何操作数据的方法。