欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年嵌入式系统复习资料整理 .pdf

    • 资源ID:34268341       资源大小:65.70KB        全文页数:4页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年嵌入式系统复习资料整理 .pdf

    1.什么是嵌入式系统?其特点有些什么?答: 嵌入式系统是“以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。”特点: 1)是专用的计算机系统,用于特定的任务;2)资源较少,可以裁减;3) 功耗低,体积小,集成度高,成本低; 4)使用实时操作系统;5) 可靠性要求更高,具有系统测试和可靠性评估体系; 6)运行环境差异大7)大部分程序固化在ROM 中;8) 较长的生命周期;9)嵌入式微处理器通常包含专用调试电路2.嵌入式系统的BooTLoader 的功能是什么?答: BootLoader 是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。通过这段程序 ,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。(对于嵌入式系统来说,有的使用操作系统,也有的不使用操作系统,但在系统启动时都必须运行BootLoader,为系统运行准备好软硬件环境。)3.目前嵌入式操作系统有哪些?答: 1) C/OS-II 嵌入式操作系统内核;2)VxWorks 嵌入式实时操作系统;3)WinCE 操作系统; 4)Linux 操作系统;5)Symbian 操作系统4.构造嵌入式开发环境有哪几种形式?答: 1)交叉开发环境;2)软件模拟环境;3)评估电路板5.嵌入式系统开发的基本流程? 答:1)系统定义与需求分析;2)系统设计方案的初步确立;3)初步设计方案性价比评估与方案评审论证;4)完善初步方案、初步方案实施;5)软硬件集成测试;6)系统功能性能测试及可靠性测试。6.什么是可编程片上系统?答:用可编程逻辑技术把整个系统放到一块硅片上,称作可编程片上系统SOPC.它是一种特殊的嵌入式系统,首先它是 SOC,即由单个芯片实现整个系统的主要逻辑功能,具有一般SOC 基本属性;其次,它又具备软硬件在系统可编程的功能,是可编程系统,具有可裁剪、可扩充、可升级等灵活的设计方式。7.有时要使用Thumb 技术的原因答: (Thumb 指令集是把32 位的 ARM 指令集的一个子集重新编码后形成的一个特殊的16 位指令集。)在性能和代码大小之间取得平衡,在需要较低的存储代码时采用Thumb 指令系统用Thumb 指令编写最小代码量的程序(能够很好的解决代码长度的问题),却取得以ARM 代码执行的最好性能,可以带来低功耗,小体积 ,低成本。8.ARM 处理器的工作模式有哪几种?答:1)正常用户模式(usr) ;2)快速中断模式(fiq ) ;3)普通中断模式(irq) ;4)操作系统保护模式(svc)或 管理模式;5)数据访问中止模式(abt) ;6)处理未定义指令的未定义模式(und) ;7)运行特权级的操作系统任务的系统模式(sys) 。9.寄存器 R13,R14,R15 的专用功能各是什么?答: 1)寄存器R13 保存堆栈指针SP;2)寄存器 R14 用作子程序链接寄存器,也称为LR ,用以保存返回地址;3)R15(PC)用作程序计数器。10.寄存器 CPSR,SPSR 的功能各是什么?答: 1)CPSR 包含条件码标志、中断禁止位、当前处理器模式以及其它状态和控制信息。所有处理器模式下都可以访问当前的程序状态寄存器CPSR。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 2)在每种异常模式下都有一个对应的物理寄存器程序状态保存寄存器SPSR。当异常出现时, SPSR 用于保存CPSR 的状态,以便异常返回后恢复异常发生时的工作状态。11.ARM 的异常有哪几种,各进入何种工作模式?他们退出各采用什么指令?答: 1)复位( Reset)异常(管理模式) ;2)未定义指令(undefined instruction )异常(未定义模式) ;3)软件中断( SWI)异常(管理模式) ;4)指令预取中止(Prefech Abort)异常(中止模式) ;5)数据访问中止(Data Abort) (中止模式) ;6)快速中断请求(FIQ) (FIQ 模式) ;7)外部中断请求(IRQ) ( IRQ 模式) 。异常返回指令:1)SWI,未定义的返回:MOVS PC,R14 ;2)IRQ,FIQ, 预取中止的返回:SUBS PC,R14,#4;3)数据中止返回并重新存取:SUBS PC,R14,#8 异常中断的优先级:复位(最高优先级)- 数据异常中止-FIQ - IRQ-预取指异常中止-SWI- 未定义指令(包括缺协处理器)。12.什么是小端和大端存储器组织?答:1)小端存储器组织是较高的有效字节存放在较高的存储器地址,较低的有效字节存放在较低的存储器地址(同同小)。 2) 大端存储器组织是较高的有效字节存放在较低的存储器地址,较低的有效字节存放在较高的存储器地址(正反大) 。13.什么是数据的边界对齐?答:默认情况下,ADS 编译器使用的是数据类型的自然边界对其方式。数据的自然对其方式是指:如果该数据类型是 n 个字节的,那么该数据类型就按n字节对齐。14.ARM 核现在有哪几种?答: ARM7 、 ARM9 、ARM9E 、ARM10E, 、SecurCore 、ARM11 15.ARM 的寻址方式有哪些?各写一条说明。答: 1)立即寻址(1) ADD R0, R0, 1 /*R0 R01*/ (2)ADD R0,R0, 0 x3f /*R0 R00 x3f*/ ;2)寄存器寻址 (ADD R0,R1, R2 /*R0 R1R2*/ ) ;3)寄存器间接寻址(1) 、LDR R0,R1 /*R0 R1*/ ;(2)STR R0,R1 /*R1 R0*/ ;4)基址加偏址寻址(1) 、LDR R0 ,R1, 4;R0R14;(2) 、LDR R0 ,R1, 4! ; R0R14、R1R14;(3) 、LDR R0 ,R1 , 4; R0R1 、R1R14 5)堆栈寻址 (1) 、 STMFD SP! R1-R7,LR;(2) 、LDMFD SP! R1-R7,LR;6)块拷贝寻址 (1) 、LDMIA R0!, R2-R9 ; ( 2) 、STMIA R1,R2,R9 ;7)相对寻址16.在 ARM 的立即寻址方式下其立即数如何在指令编码中表示?答:在 ARM 数据处理指令中,当参与操作的第二操作数为立即数型时,每个立即数都是采用一个8 位的常数循环右移偶数位而间接得到。其中循环右移的位数由一个4 位二进制的两倍表示,如果立即数记作 ,8 位常数记作immed_8, 4 位的循环右移值记作rotate_imm, 有效的立即数是由一个8 位的立即数循环右移偶数位得到。因此有效立即数immediate 可以表示成: =immed_8 循环右移( 2rotate_imm)17.指令 ADR ,ADRL 、LDR 、NOP 是如何处理地址值读入到寄存器中的?答: ADR 是将基于PC 或者寄存器的地址值读入到寄存器的,ADR 伪指令通常被替换成一条ADD 指令或 SUB 指令来实现该ADR 指令的功能。而ADRL伪指令与ADR 指令的最大不同之处是,它可以读取更大范围内的地址,而且被编译器替换成2 条数据处理指令。LDR 将一个 32 位的立即数或者一个地址值读取到寄存器中。大范围的地址读取。 NOP 在汇编时将被替换成ARM 中的空操作。18.指令 LDR R1,=0 xFFF是如何将立即数0 xfff 读入到 R1 的?答:由于需要读取的寄存器的数据超过了MOV 及 MVN 指令可操作的范围,编译器将该常数放在数据缓冲区中,同时用一条基于PC 的 LDR 指令读取该常数。LDR R1 ,PC,offset_to_LPOOL. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - . LTORG ; 声明数据缓冲池LPOOL DCD OxFFF ; OxFFF 放在数据缓冲池中。19.如何在 c语言程序中内嵌汇编?答:内嵌的汇编指令包括大部分的ARM 指令和 Thumb 指令,但是不能直接引用C 的变量定义,数据交换必须通过 ATPCS 进行。嵌入式汇编在形式上表现为独立定义的函数体。20.如何在汇编语言程序访问C 语言的全局变量?答:汇编程序可以通过地址间接访问在C 语言程序中声明的全局变量。通过使用IMPORT 关键词引人全局变量,并利用 LDR 和 STR 指令根据全局变量的地址可以访问它们。对于不同类型的变量,需要采用不同选项的LDR 和 STR 指令,如下所示:1)unsigned char LDRB/STRB ;2)unsigned short LDRH/STRH ;3)unsigned int LDR/STR ;4)char LDRSB/STRSB ;5)Short LDRSH/STRSH 21.在 C 语言程序如何调用汇编语言程序?答:为了保证程序调用时参数的正确传递,汇编程序的设计要遵守ATPCS。在汇编程序中需要使用EXPORT 伪操作来声明, 使得本程序可以被其它程序调用。同时,在 C 程序调用该汇编程序之前需要在C 语言程序中使用extern关键词来声明该汇编程序。22.汇编语言程序调用C 语言程序?答:为了保证程序调用时参数的正确传递,汇编程序的设计要遵守ATPCS。在 C 程序中不需要使用任何关键字来声明将被汇编语言调用的C 程序,但是在汇编程序调用该C 程序之前需要在汇编语言程序中使用IMPORT 伪操作来声明该C 程序。在汇编程序中通过BL 指令来调用子程序。23.在嵌入式C 语言程序设计中为提高程序效率的相关设计技巧。答: 1)变量定义;2)参数传递; 3)循环条件; 4)以空间换时间;5)数学方法解决问题;6)使用位操作;7)嵌入汇编。24.Linux 操作系统的内核、文件系统、编程接口等。P192 P201 答: Linux 的内核也有很多种,例如普通的Linux 内核、 uClinux 内核、 RTLinux 内核等25.嵌入式 Linux 操作系统的特点。答:广泛的硬件支持、内核高效稳定、开放源码,软件丰富、优秀的开发工具、完善的网络通信和文件管理机制,26.Windows CE 操作系统及其特点。答: Windows CE 是一个 32 位、多任务、多线程的操作系统,其开放式的设计结构适用于各种各样的设备,其主要特点:一、CE 是一种压缩并可升级的软件系统,即使在小内存条件下,也能提供较高的性能。二、CE 具有便于携带的优点,可以运行于多种微处理器上三、CE 拥有很好的电源管理系统,能延长移动设备的电池寿命四、 CE 支持标准的通讯系统,可以非常方便地访问Internet,发送和接受电子邮件,浏览万维网。程序解释AREA COPYBS,CODE,READONLY ;定义一个代码段ENTRY ;程序入口LDR RO,=SRC ;取得原数据表的表头LDR R1,=DST ;取得目标数据表的表头MOV R2,#20 ;R4 作为循环控制BCOPY MOVS R3,R2,LSR,#3 ;R3=R2 3 逻辑右移 3 位BEQ CWORD ;若 Z=1,跳转到 CWORD OCOPY LDMIA R0!,R4-R11 ;加载 R0 指向的地址上的多字数据,保存到R4R11 中,R0 值更新STMIA R1!,R4-R11 ;将 R4-R11 的数据存储到R1 指向的地址上,R1 值更新名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - SUBS R3,R3,#1 ;R3=R3-1 BNE OCOPY ;若 Z=0,跳转到 OCOPY CWORD AND R2,R2,#7 ;R2=R2&7 BEQ STOP ;若 Z=1,跳转到 STOP WCOPY LDR R3,R0,#4 ;将 R3 中的字数据读入以R0 为地址的存储器中,并将新地址R0+4 写入 R1 STR R3,R1,#4 ;将 R3 中的字数据写入以R1 为地址的存储器中,并将新地址R1+4 写入 R1 SUBS R2,R2,#1 ;R2=R2-1 BNE WCOPY ;若 Z=0,跳转到 WCOPY STOP ,在程序中常常需要根据一定的参数选择执行不同的子程序。跳转表中存放的是各子函数的地址,选择不同的子程序的参数是该子程序在跳转表中的偏移量。在本例中R3 寄存器中存放的是跳转表的基地址(首选地址, 其中存放的是第一个子程序的地址) 。R0 寄存器的值用于选择不同的子程序;当R0 为 0 时,选择的是子程序DoAdd ;当 R0 为 1 时,选择的是子程序DoSub。在 ADS 编译环境程序如下:AREA Jump,CODE ,READONL Y ;设置本程序的名称及属性NUM EQU 2 ;跳转表中的子程序个数ENTRY ;程序执行的入口点Start MOV R0,#0 ;设置 3个参数, R0 选择调用哪个子程序MOV R1,#3 ;R1 为子程序要用的参数MOV R2,#2 ;R2 为子程序要用的参数BL Func ;调用子程序Func,进行算术运算Stop MOV R0 ,#0 x18 ;本条与下条指令的作用是参数传递LDR R1,=&20026 SWI 0 x123456 ;将 CPU 的控制权交给调试器Func CMP R0,#NUM ;判断 R0 是否在有效范围之内MOVHS PC,LR ;如果超出范围则程序返回ADR R3,JTable ;读取跳转表的基地址LDR PC, 【R3,R0,LSL #2】 ;根据参数R0 的值跳转到相应的子程序JTable DCD DoAdd ;当参数 R0 为 0 时上面的代码将选择DoAdd DCD DoSub ;当参数 R0 为 1 时上面的代码将选择DoSub DoAdd ADD R0,R1,R2 ;子程序 DoAdd 执行加法操作MOV PC, LR ;子程序返回DoSub SUB R0,R1, R2 ;子程序 DoSub 执行减法操作MOV PC, LR ;子程序返回END ;结束汇编名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -

    注意事项

    本文(2022年嵌入式系统复习资料整理 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开