嵌入式系统复习题  答案
    嵌入式系统复习题-答案
    第一章思考与实践
    (③)不是常规意义上的嵌入式系统。p6①手机②mp3③pc机④数码相机
    可作为嵌入式操作系统使用(①)
    ①linux(vxworks,uc/os-ii)②windows2000③windowsxp④dos
    什么是嵌入式系统P7
    第二章
    没有(④) 嵌入式系统项目开发生命周期阶段的P4和5① 确定需求② 提出方案③ 实施项目④ 系统规划
    第三章
    ARM7TDMI中T、D、m和I的含义是什么?p22
    不属于arm7三级流水线的是(③)p24①取指②译码③pc值递增④执行
    对于ARM7三级流水线,当一条指令被解码时,前一条指令由(④) p24① 接受指令② 解码③ 增加个人电脑的价值④
    对于arm7三级流水线,当一条指令被译码时,下一条指令正被(①)p24①取指②译码③pc值递增④执行
    ARM7TDMI采用三级流水线?冯采用诺依曼建筑。
    arm7有(两种)处理器状态,分别是(arm)状态和(thumb)状态。p30
    ARM7有(7)种处理器模式,即(用户模式),(快速中断模式),(中断模式),(管理模式),(中止模式),(未定义模式)和(系统模式),其中五种异常模式是(快速中断模式),(中断模式),(管理模式),(中止模式)和(未定义模式)。p42~p44
    (用户模式)是正常程序工作模式,特点是不能(直接)切换到其它模式。(管理模式)是“操作系统保护代码”,复位和软中断响应时进入此模式。
    系统模式用于支持操作系统的(特权)任务,这与用户模式类似,但可以(直接)切换到其他模式。
    在arm7(37)个用户可见寄存器中,有(6)个状态寄存器,(31)个通用寄存器。程序计数器pc是(r15),程序状态寄存器是(cpsr),链接寄存器lr是(r14),堆栈指针sp是(r13)。p47~p49
    CPSR由几个控制位和几个条件代码标志组成:T=0表示处理器在(arm状态)p80~p87下工作
    cpsr有若干控制位和若干条件代码标志构成:n为1表示前次运算结果(为负)。
    一
    cpsr有若干控制位和若干条件代码标志构成:z为1表示前次运算结果(为零)。
    CPSR由几个控制位和几个条件代码标志组成:C为1,表示已生成上一个操作(进位/借位)。CPSR由几个控制位和几个条件代码标志组成:V为1,表示之前的操作(溢出)。如果上一次操作的结果为阴性,则(①) CPSR的平均值为1① N② Z③ C④ 五、
    若前次运算结果为零,则cpsr的(②)为1①n②z③c④v
    如果上一个操作产生进位/借位,则(③) CPSR的平均值为1① N② Z③ C④ 五、
    若前次运算溢出,则cpsr的(④)为1①n②z③c④v
    要禁用快速中断,处理器应(①) ① CPSR的F位为1;② CPSR的F位为0;③ CPSR的I位为1;④ CPSR的I位为0;要禁用中断,处理器应(③)
    cpsr的f位为1②cpsr的f位为0③cpsr的i位为1④cpsr的i位为0
    异常回顾P3~p12
    子程序的最后一条指令必须是(①)p3
    ①movpc,r14②movpc,r14_uuund③亚种,r14_Ufig,#4④中断服务程序的最后一条指令必须是(④) P3
    ①movpc,r14②movpc,r14_und③subspc,r14_fig,#4④subspc,r14_irg,#4快中断服务程序的最后一条指令必须是(③)
    ①movpc,r14②movpc,r14_uuund③亚种,r14_Ufig,#4④当处理器响应中断时,处理器硬件修改为(③) P22① 0x00000000② 0x00000000③ 0x00000018④ 0x0000001carm7当处理器响应快速中断时,处理器硬件修改为(④) ① 0x00000000② 0x00000000③ 0x00000018④ 0x0000001c。外部设备向处理器发送中断请求,处理器进入(②) 例外① 快速中断② 打断③ 未定义指令④ 预回迁中止
    arm7处理器收到快中断请求,则进入(①)异常。①快中断②中断③未定义指令④预取中止
    在第四章中,有(④) ARM7的寻址模式。p6①6.②7.③8.④9
    条件码复习p35~p36
    使用指令条件码可以实现高效的逻辑运算,提高代码效率。指令条件代码表如表4.1所示。指令条件代码表操作条件代码助记符0000arm嵌入式系统期末考试
    标志z=1含义相等2
    Eq0001nez=0不相等,1000hic=1,Z无符号数大于=01001lsc=0,Z无符号数小于或等于=1。arm指令的条件代码用于在满足(条件)的情况下执行指令。
    p39~p41
    处理器从内存中读取数据的指令(加载指令)的助记符是(①) ① LDR② str③ SWP④ SWPB
    处理器往存储器写数据的指令(存储指令)的助记符是(①)①ldr②str③swp④swpb
    读取R0+0x12地址处的数据,并将其保存在R1中
    ldrr1,[r0,#0x12]将r1中数据保存到r0+0x12地址处
    strr1[r0,#0x12]
    将r0-0x12地址处的数据读出,保存到r1中
    Ldrr1,[R0,-#0x12]将R1中的数据保存到R0-0x12地址
    strr1,[r0,-#0x12]
    读取R0+R2地址的数据,并将其保存在R1中
    ldrr1,[r1,r2]
    将R1中的数据保存到R0+R2地址
    strr1,[r1,r2]
    读取r0-r2地址处的数据,并将其保存在R1中
    ldrr1,[r0,-r2]
    将R1中的数据保存到r0-r2地址
    strr1,[r0,-r2]
    p60~p62
    数据传送指令的助记符是(①)。①mov②sbc③add④sub代进位加法指令的助记符是(①)①adc②sbc③add④sub代借位减法指令的助记符是(②)①adc②sbc③add④sub求r1+r2,和放在r1中
    加上R1,R1,R2,到R1-R2,然后把差值放到R1中
    subr1,r1,r2
    到r4r3-r2r1,并将差异放入r6r5,subsr5,R3,r1sbcr6,R4,R2中
    求r4r3+r2r1,和放在r6r5中
    三
    addsr5,r3,r1adcr6,r4,r2求r4r3-1,差放在r6r5中subsr5,r3,#1sbcr6,r4,#0
    到r4r3+1,将总和放入r6r5 addsr5,R3,#1adcr6,R4,#0
    p69
    保留R0的第四个数据,并影响标志位和R0、R0、#0x0f位置1ORR0、R0的R0、#0x2a位置0bicr0、R0、R0的0x2a
    p75,p76
    比较R1和99,设置相关标志位cmpr1,#99r1和R2,设置相关标志位cmpr1和r2p96
    跳转到标号waiter处bwaiter
    如果上一次操作的结果是肯定的,则转到标签播放处的bhiplay
    前次运算结果为非正,转到标号play处blsplay调用子程序whietblwhiet
    上一次操作的结果为0。调用子程序plybleqply
    前次运算结果为非0,调用子程序plyblneply
    用(BL)指令调用子程序?子程序的返回指令为(movpc,R14)
    编程题:
    编写程序判断R1的值是否大于0x30。如果是,则从R1中减去0x30。cmpr1,0x30
    subhir1,r1,0x30
    四
    编写实现两个寄存器r0,r1相加的子程序。add_sub
    addsr0,r0,r1;r0=r0+r1movpc,lr;子程序返回end;文件结束
    p119~p122
    读取CPSR状态寄存器并将其保存在R1中
    mrsr1,cpsr
    读取SPSR状态寄存器并将其保存在R2中

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。