孟祥莲嵌入式系统原理及应用教程部分习题答案0618.docx
《孟祥莲嵌入式系统原理及应用教程部分习题答案0618.docx》由会员分享,可在线阅读,更多相关《孟祥莲嵌入式系统原理及应用教程部分习题答案0618.docx(7页珍藏版)》请在冰豆网上搜索。
孟祥莲嵌入式系统原理及应用教程部分习题答案0618
习题1
1.嵌入式系统的概念的是什么?
答:
嵌入式系统是以应用为中心,以计算机技术为基础,软、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
(嵌入式系统是嵌入式到对象体系中的,用于执行独立功能的专用计算机系统。
)
2.嵌入式系统的特点是什么?
答:
系统内核小;专用性强;运行环境差异大;可靠性要求高;系统精简和高实时性操作系统;具有固化在非易失性存储器中的代码嵌入式系统开发和工作环境
4.嵌入式系统的功能是什么?
答:
提供强大的网络服务小型化,低成本,低功能;人性化的人机界面;完善的开发平台
5.嵌入式系统的硬件平台由哪些部分组成?
答:
嵌入式系统的硬件是以嵌入式处理器为核心,由存储器单元电路,通信模块,外部设备必要的辅助接口组成的。
7.嵌入式操作系统的主要特点是什么?
答:
体积小;实时性;特殊的开发调试环境。
8.叙述嵌入式系统的分类。
答:
按嵌入式微处理器的位数分类可以分为4位、8位、16位、32位和64位等;按软件实时性需求分类可以分为非实时系统(如),软实时系统(如消费类产品)和硬实时系统(如工业实时控制系统);按嵌入式系统的复杂程度分类可以分为小型嵌入式系统,中型嵌入式系统和复杂嵌入式系统。
习题2
19处理器和工作状态有哪些?
答:
状态:
此时处理器执行32位的的字对齐的指令。
状态:
此时处理器执行16位的,半字对齐的指令
2.叙述9内部寄存器结构,并分别说明R13、R14、R15寄存器的作用。
答:
共有37个内部寄存器,被分为若干个组(),这些寄存器包括31个通用寄存器,包括程序计数器(指针)6个状态寄存器。
R13用作堆栈指针,R14称为子程序链接寄存器,R15用作程序计数器。
4处理器的工作模式有哪些?
答:
用户模式:
处理器正常的程序执行状态。
快速中断模式:
用于高速数据传输或通道处理
外部中断模式:
用于通用中断处理
管理模式:
操作系统使用的保护模式
数据访问终止模式:
当数据或指令预期终止时进入该模式,可用于虚拟存储器及存储保护
系统模式:
运行具有特权的操作系统任务
未定义指令终止模式:
当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。
5微处理器支持的数据类型有哪些?
答:
微处理器中支持字节(8位)、半字(16位),字(32位)三种数据类型。
其中,字需要4字节对齐,半字需要2字节对齐。
7.叙述寄存器及其各位数据位的作用?
答:
是当前程序状态寄存器,是在任何模式下都可以访问的通用状态寄存器,它包括条件标志位,中断禁止位,当前处理器模式标志位,以及其他一些相关的一些相关的控制和状态位①条件码标识;N,Z,C,V均为条件码标识,它们的内容可被算术或逻辑的结果所改变,并且可以决定某条指令是否被执行。
②控制位:
的低8位称为控制位,当发生异常时这些位可被改变,如果处理器运行特权模式,这些位也可以由程序修改。
③保留位:
中的其余位为保留位,当改变中的条件码标志位或者控制位时保留位不要被改变,在程序中也不要使用保留位来存储数据
习题3
1指令有哪几种寻址方式?
试分别叙述其各自的特点,并举例说明。
答:
①寄存器寻址:
寄存器寻址就是利用寄存器中的内容作为操作数,寄存器本身就是操作数地址,例:
R2,R3;R2—R3指R3中的内容赋给R2
②立即寻址:
操作数没有存储在寄存器或存储器中,而是包含在指令的操作码中,只要取出指令也就取到了操作数.例:
R1,R2,#1234;R1—R1+1234
③寄存器间接寻址:
以寄存器中的内容作为操作数的地址,而操作数本身存放在存储器中。
例:
R1,[R2];R1—[R2]
④变址寻址:
将寄存器的内容与指令中给出的地址偏移量相加,从而得到一个操作数的有效地址。
例R0,[R1,#8];R0—[R1+8]⑤寄存器移位寻址:
操作数由寄存器的数值进行相应移位而得到例R0,R1,4
⑥多寄存器寻址:
一条指令可以完成多个寄存器值的传送例:
R1,{R2—R4,R5};R2—[R1]R3—[R1+4]R4—[R1+8]R5—[R1+12]
⑦堆栈寻址:
一种数据结构,按先进后出的方式工作,使用一个称作堆栈指针的专用寄存器指示当前的操作位置,堆栈指针总是指向栈顶。
⑧相对寻址:
以程序计数器的当前值为基地址,指令中的地址标号作为为偏移量,将两者相加之后得到操作数的有效地址
2.简述9指令集的分类
答:
交换指令、数据处理器指令、分支指令、协处理器指令⑤软件中断指令
4.请叙述处理器如何实现状态和状态的切换。
答:
进入状态:
当操作数寄存器的状态位(位0)为1时,可以采用执行指令的方法,使微处理器从状态切换到状态,此外,当处理处于状态时发生异常,则异常返回时,自动切换到状态。
进入状态:
当操作数寄存器的状态位为0时,执行指令时可以微处理器从状态切换到状态,此外,在处理器进行异常处理时,把指针放入异常模式链接寄存器中,并从异常向量地址开始执行程序,也可以是处理器模式切换到状态
6.简述9的堆栈指令中空、满,递增、递减的含义。
答:
当堆栈指针指向最后压入堆栈的数据时,称为满堆栈。
当堆栈指针指向下一个将要放入数据的空位置时,称为空堆栈;当堆栈由低向低地址向高地址生成时,称为递增堆栈;
当堆栈由高地址向低地址生成时,称为递减堆栈
10和指令有什么不同
答:
指令是分支和交换指令,寄存器的地址是目标地址其中的位[0]不是地址信息,当寄存器的位[0]为1时,表明目标地址处是指令,当寄存器的位[0]为0时,表明目标地址是指令,此时,要求字对准,指令是分支和链接指令,将一条指令的地址复制到R14,并引起处理器移位到目标地址,但目标地址不可以是指令,指定不能转移到当前指令+4以外的地址。
习题4
1.伪指令与伪指令有什么区别?
答:
与指令相关的伪指令共有4条:
、、、,这四条伪指令和通用的指令不同,在程序编译过程中,编译程序会为这四条指令产生代码,但这些代码不是它们自己的代码,所以尽管它们可以产生代码,但还是伪指令,与指令相关的伪指令共有3条,、、,但这些伪指令必须出现在程序段。
3.编写一个完整的程序,结构是什么?
答:
在汇编语言程序中,用伪指令定义一个段,并说明所定义段的相关属性,伪指令标示程序的入口点,接下来为语句段,执行主代码后,通过返回控制终止应用程序,并返回到通过使用软件中断指令实现返回,在程序的末尾为伪指令,该伪指令通知编译器停止对源文件的处理,每一个汇编程序段都必须有一条伪指令,指示代码段的结束。
4..汇编语言中的表达式有哪些?
试举例说明
答:
数字表达式、逻辑表达式、字符串表达式、以寄存器和程序计数器()为基址的表达式。
例:
.
5.汇编语言中的运算符有哪些?
试说明它们的特点及使用方法.
答:
数字运算符:
表明两个表达式之间的关系。
算术运算符“+”、“-”、“x”及“”
移位运算符””、““、“、““
逻辑运算符“”、“”、“”、””
逻辑运算符包括运算符
关系运算符:
“=”、“>“、“>=”,“=<”,“”、“<”运算符
单目运算符,双目运算符
7.汇编语言与的混合编程通常有几种方式?
答:
有三种方式:
在代码中嵌入汇编指令;在汇编程序和的程序之间进行变量的互访;汇编程序,程序间的相互调用。
习题5
1.S3C2440A芯片外部可寻址的存储空间是多少?
答S3C2440A芯片外部可寻址的存储空间是1,被分为8个存储模块,每块128
2.S3C2440A中的中断控制器可以从多少个中断源接收中断请求?
答:
S3C2440A中的中断控制器可以60个中段源接收中断请求。
这些中断源由内部的外围端口或部件如控制器,等提供。
43C2440A芯片有几个通道,共有多少个寄存器?
答:
S3C2440A芯片有4个通道,共有36个寄存器,其中6个用于控制传输,3个用于监视的控制器的状态。
5.看门狗定时器原理是什么?
答:
看门狗定时器用于当噪音或系统错误引起故障时恢复控制器操作的定时,看门狗定时器是一普通的16位时间间隔定时器,定时溢出来请求中断服务,每128个时钟周期产生一个复位信号。
6.触摸屏接口模式分为几类?
答:
触摸屏接口模式可分为:
正常转换模式、分离坐标转换模式、自动坐标转换模式、等待中断模式、备用模式
习题6
13C2440A芯片的
总线时序中,信号的作用是什么?
结合相应的时序图加以说明
答:
在完成一个字节的传输操作后,接收器应该发送一个位给发送器。
位应该出现在线的第9个时钟,当接收器收到第9个时钟周期时,发送器应该通过使
信号线变为高电平来释放信号线变为低电平,以便使信号线保持在低电平,而发出信号。
23C2440A芯片的
总线有几条信号线?
分别是什么?
答:
总线有4线,即串行数据输入(),串行数据输出(),左右通道选择()和串行位时钟()
33C2440A中的音频串行接口D模式是什么?
答:
总线格式、格式、采样频率和主设备时钟
43C2440A芯片的97控制器的操作流程是什么?
答内部数据通路流程图操作—数字接口协议97掉电
53C2440A的摄像头接口由哪几部分组成?
答:
共由图像多路复用器,捕捉单元,预览计数器,多媒体数字信号编解码器,预览,编解码器及特殊功能寄存器7个部分组成。
习题7
1包括什么功能?
答:
<1>建立一个工程<2>编译和链接工程
3.什么是交叉编译?
为什么要进行交叉编译?
答:
交叉编译是嵌入式操作系统开发过程中的一项重要技术。
其主要特征是某机器中执行的程序代码不是在本机编译生成,而是在另一台机器编译生成。
一般前者成为目标机,后者称为主机
采用交叉编译的原因在于多数嵌入式目标系统不能提供足够的资源供编译过程使用,因而只好将编译过程转移到高性能的主机上进行。
这就需要在强大的上建立一个用于目标机的交叉编译环境。
4下的交叉编译环境主要包括几部分?
答:
<1>针对目标系统的编译器。
<2>针对目标系统的二进制工具;<3>目标系统的标准C库,有时出于减小库大小的考虑,也可以用别的C库来代替,例如等;<4>目标系统的内核头文件。
7.简述嵌入式系统开发流程?
答:
<1>驱动调试的准备<2>调试
10.简述嵌入式系统的交叉调试方法?
答:
内核打函数获取内核信息处理出错信息内核源码调试
习题8
1.什么是?
答:
就是在操作系统内核运行之前运行的一段程序,通过这段程序可以初始化硬件设备,以便为最终调用操作系统内核准备好环境。
2..简述的启动过程。
答:
首先加载引导程序,然后进入内核,接着是文件系统,最后进入用户应用程序。
例:
可以放在里启动,或者用仿真器.由于使用,根据2410的手册,片内的4K在不需要设置便可以直接使用,而其他存储器必须先初始化,比如告诉6里有两块,数据宽度是32=.否则会按照复位后的默认值来处理存储器.这样读写就会产生错误.
所以第一步,通过仿真器把执行代码放到0x4000_0000,(在编译的时候,设定
0x40000000)
第二步,通过把放到目标地址()中,等待调用
第三步,执行代码,从串口得到调试数据,引导
3运行可以分为几个阶段?
说明每个阶段的主要工作
答:
运行分为两阶段,第一阶段是完成含依赖于的体系结构硬件初始化代码,第二阶段是()函数开始,同一般的C语言程序一样文件中,然后进行初始化工作。
4.简述内核启动三个阶段的功能
答:
第一阶段功能为系统选择映像,第二阶段可以启动内核,第三阶段主要完成剩余的与硬件平台相关的初始化工作,在进行一系列与内核相关的初始化工作后,调用第一个用户进程,这样整个内核启动完成该函数所有具体工作。
5系统中的主要作用是什么?
答:
初始化硬件设备、操作系统引导。