ARM 2017年复习题总结解析
ARM复习资料

一、绪论复习题1、嵌入式实时操作系统有哪些特点?答:主要有三个特点:(1)采用抢占式的调度策略,任务的实时性好,并且执行时间是确定的;(2)具有可裁剪性(根据任务的需要与否进行添加或删除操作系统模块)和可移植性(移植到各种处理器上);(3)具有较好的可靠性和可扩展性,适合嵌入式产品的应用开发。
2、对于嵌入式系统,IEEE的定义是什么?答:用来控制或监视机器、装置或工厂等大规模系统的设备。
3、对于嵌入式系统,国内普遍认同的定义是什么?答:嵌入式系统是“以应用为中心,以计算机技术为基础,软硬件可裁减,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专业计算机系统”。
嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。
4、什么是嵌入式实时操作系统?答:嵌入式实时操作系统是指在限定的时间内对输入进行快速处理并作出响应的嵌入式操作系统。
5、嵌入式系统主要有五个方面的特点,分别是什么?答:(1)嵌入式系统是面向具体应用的产品;(2)嵌入式软件特征,具有实时性,高质量、高可靠,程序固化;(3)需要软硬件开发工具和系统软件;(4)需要应用专家参与开发;(5)嵌入式系统分散而不可垄断。
6、什么是实时系统?答:能够对外部事件做出及时响应的系统。
响应时间要有保证。
外部事件发生时要识别出来,在给定时间约束内必须输出结果。
7、什么是硬实时系统?答:对系统响应时间有严格的要求,如果系统响应时间不能满足,就会引起系统崩溃或致命的错误。
8、什么是软实时系统?答:对系统响应时间有要求,但是如果系统响应时间不能满足,它并不会导致系统出现致命的错误或崩溃,只是降低系统的吞吐量。
9、按系统实时性要求嵌入式系统可以分为哪几类?试举例说明。
答:1、非实时系统(PDA);2、软实时系统(消费类产品);3、硬实时系统(导引头等工业和军工系统)。
10、什么叫ARM?答:ARM是Advance RISC Machine 的缩写,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。
ARM复习题讲解

ARM复习题讲解一、选择题1.数字信号处理器( B )。
A. ADSB. DSPC.CPUD.GPP2.嵌入式微处理器(C)。
A. MCUB. DSPC. MPUD.SOC3.精简指令系统(C)。
A.CISCB.MIPSC.RISCD.CPLA4.可编程片上系统(A)。
A.SOPCB.SOCC. PDAD. OMAP5.复杂指令系统(A)。
A.CISCB.MIPSC.RISCD.CPLA 6.片上系统(B)。
A.SOPCB.SOCC. PDAD. OMAP 7.静态存储器(A)。
A. SRAMB. DRAMC. SDRAMD. RAM 8.动态随机存储器(B)。
A.SRAMB.DRAMC.RAMD.ROM 9.板级支持包(A)。
A. BSPB. DSPC. EDSPD.MCU10.采用冯﹒诺伊曼存储结构的ARM处理器( A)A.ARM7B.ARM9C.ARM10D.ARM1111.同CISC相比,下面哪一项不属于RISC处理器的特征_DA、采用固定长度的指令格式,指令规整、简单、基本寻址方式有2~3种。
B、减少指令数和寻址方式,使控制部件简化,加快执行速度。
C、数据处理指令只对寄存器进行操作,只有加载/存储指令可以访问存储器,以提高指令的执行效率,同时简化处理器的设计。
D、RISC处理器都采用哈佛结构12.实时系统是指( B)A 响应快的系统B 时间约束的系统C 单任务系统D 内核小的系统13、关于RISC指令系统描述不正确的是(A)。
A、指令条数多B、指令长度固定C、指令格式种类少D、寻址方式种类少14、通常所说的32位微处理器是指。
(C)A) 地址总线的宽度为32位B) 处理的数据长度只能为32位C) CPU 字长为32位 D) 通用寄存器数目为32个电脑技术中对CPU在单位时间内(同一时间)能一次处理的二进制数的位数叫字长。
15、嵌入式微控制器相比嵌入式微处理器的的最大特点(B)。
A、体积大大减小B、单片化C、功耗低D、成本高16、(B)不是嵌入式系统的三要素。
ARM完整复习题及答案

ARM完整复习题及答案嵌入式系统设计复习资料注意:因为参考答案填空老师没有给电子版,只是上课听的,难免会有听错,请大家指出错误。
一填空题1.arm内核有四个功能模块,即___t___、___d___、___m___、____i__,可供生产厂商根据不同用户的要求来配置生产arm芯片。
3.ARM芯片的主要封装形式有_qfp _。
4.由ARM微处理器共享的一个32位寄存器,其中一个是通用寄存器,另一个是状态寄存器。
5.arm体系结构可用两种方法存储字数据,具体为___大端存储格式__、___小端存储格式___。
6.协处理器主要控制:________;片上mmu ___;指令和数据缓存(IDC)________。
从逻辑上讲,arm可以扩展16个协处理器。
7.ARM微处理器在较新的体系结构中支持两个指令集:_______________________。
8.在cpsr中m[4:0]表示模式位,其中10111表示中止模式,在异常类型中,中止又分为预取址中止和数据中止。
9.ARM处理器有9种基本寻址模式,分别是:寄存器寻址、立即寻址、寄存器移位寻址、寄存器间接寻址、索引寻址、多寄存器寻址、堆栈寻址、块拷贝寻址、相对寻址。
10.arm指令集可以分为6类,分别是:__跳转指令____、___数据处理指令___、___程序状态寄存器(psr)传输指令___、___load/store指令___、___协处理器指令___、___异常中断产生指令___。
arm指令的条件代码位于指令的最高4([31:28])。
每个条件代码可以由2个字符表示,可以添加到指令助记符之后,并与指令同时使用。
11.在arm的汇编程序中,有如下几种伪指令:___符号定义伪指令__、___数据定义伪指令___、__汇编控制伪指令____、___宏指令___、___其他伪指令___。
12.汇编语言与c/c++的混合编程通常有以下几种方式:__在c/c++代码中嵌入汇编指令___、__从汇编程序中访问c程序变量____、___汇编程序、c/c++程序间的相互调用___。
ARM完整复习题及答案

11.在ARM的汇编程序中,有如下几种伪指令:二符号定义伪指令
、数据定义伪指令、汇编控制伪指令、宏指令、
「其他伪指令—。
12.汇编语言与C/C+啲混合编程通常有以下几种方式:在C/C++
代码中嵌入汇编指令、亠从汇编程序中访问C程序变量__、_
组成
19.ARM嵌入式系统主要由嵌入式处理器—、相关支撑硬件
___和嵌入式软件系统___构成。
20.常用的嵌入式外围设备有存储设备、通信设备和
显示设备___三类。
21.S3C2410中,其地址空间有_8—个BANK每个BANK最大的容
量128M。
22.S3C2410的电源管理模块可以激活4种模式:正常模
47.音频编解码中常用的技术包括:AD/DA转换―技术、___压
缩编码 技术、数字信号处理技术和信道编码术。
48.经采样、编码但未压缩的语音信号(对应编码)为:_PCM__
49.公式|nfs中,fs代表采样率。
50.音频编码方法包括二大类:
波形编码、
参数编码
和混合编码。
51.传输语音的格式一般有:
IIS总线格式和
嵌入式系统设计复习资料
注意:因为参考答案填空老师没有给电子版,
只是上课听的,
难免会有听错,
请大家指出错误。
一填空题
1.ARM内核有四个功能模块,即___T_、_D_、_M_、I
可供生产厂商根据不同用户的要求来配置生产ARM芯片。
3.ARM芯片主要封装有QFP__、TQFP、PQFP
LQFP、BGA、LBGA等形式。
立即寻址
、寄存器移位寻址、
ARM原理及应用复习题(附答案)

《ARM原理及应用》复习题填空题1.STM32F103是_32_位单片机,内核是ARM公司的___Cortex-M3___。
2.STM32F103最高工作频率___72MHz___。
片内具有多种外设,它们分别是:_GPIO_、_USART_、_I2C_、_SPI_、_ADC_、_DAC_、_TIM_、_RTC_、_IWDG_、_WWDG_。
IWDG:独立看门狗WWDG:窗口看门狗3.STM32103的GPIO端口具有多种配置状态,输入有3种状态,它们分别是_模拟输入_、_浮空输入__和上拉/下拉输入;输出有4种状态,它们分别是_通用推挽输出_、_通用开漏输出_、_复用推挽输出_和_复用开漏输出_。
5.当STM32I/O端口配置为输入时,输出功能被_禁止_,施密特触发器被激活__。
6.STM32的所有端口都有外部中断能力。
当使用外部中断线时,相应的引脚必须配置成输入模式。
7.STM32具有单独的位设置或位清除能力。
这是通过GPIOx->BSRR_和GPIOx->BRR寄存器来实现的。
8.STM32芯片内部集成的12位位ADC是一种逐次逼近(比较)型模拟数字转换器,具有18个通道,可测量16个外部和2个内部信号源。
9.STM32的NVIC管理着包括Cortex-M3核异常等中断,其和ARM处理器核的接口紧密相连,可以实现时延的中断处理,并有效地处理后到中断。
10.系统计时器(SysTick)提供了1个24位二进制递减计数器,具有灵活的控制机制11.STM32通用定时器TIM的16位计数器可以采用三种方式工作,分别为向上计数模式、向下计数模式和向上下计数模式。
12.STM32系列ARM Cortex-M3芯片支持三种复位形式,分别为上电复位、按键复位和备份复位。
简答题1.什么是嵌入式系统?嵌入式系统一般由哪几部分构成?它与通用计算机有何区别?答:是一种嵌入受控器件内部,为特定应用而设计的专用计算机系统,具有“嵌入性”、“专用性”和“计算机系统”3个基本要素。
ARM习题库与参考答案

ARM习题库与参考答案一、判断题(共100题,每题1分,共100分)1.数码管共阳接法是指将负极接在一起。
A、正确B、错误正确答案:B2.异步通信数据传送按帧传输,一帧数据包含起始位、数据为、校验位、和停止位。
A、正确B、错误正确答案:A3.OLED显示屏需要背光源A、正确B、错误正确答案:B4.STM32用用户闪存启动由BOOT1决定A、正确B、错误正确答案:B5.嵌入式操作系统是指用于嵌入式系统的操作系统。
A、正确B、错误正确答案:A6.DS18B20是常用的数字温度传感器,其输出的是数字信号。
A、正确B、错误正确答案:A7.GPIO_Mode_IPD表示下拉输出A、正确B、错误正确答案:A8.嵌入式软件在很大程度上决定整个嵌入式系统的价值A、正确B、错误正确答案:A9.STM32F103ZET6芯片最高工作频率可达72MHz。
A、正确B、错误正确答案:A10.嵌入式系统和通用计算机的相同点是软件和硬件的集合。
A、正确B、错误正确答案:A11.STM32单片机内部所有的工作都是以时钟信号为步调基准进行工作的A、正确B、错误正确答案:A12.STM32当开发板的按键按下时端口为高电平。
A、正确B、错误正确答案:A13.STM32F103ZET6的引脚数为144A、正确B、错误正确答案:A14.嵌入式系统体系结构一般具有冯.诺依曼和哈佛两种基本形式A、正确B、错误正确答案:A15.STM32固件库本质是一个固件函数包,由程序,数据结构和各种宏组成。
A、正确B、错误正确答案:A16.STM32F103ZET6芯片具有睡眠、停止、待机三种低功耗工作方式A、正确B、错误17.STM32F103ZET6芯片内部集成了11个定时器A、正确B、错误正确答案:A18.一个GPIO如果可以复用为内置外设的功能引脚,那么当这个GPIO作为内置外设使用的时候,就叫做复用。
A、正确B、错误正确答案:A19.24C02提供2048位的串行电可擦写可编程只读存储器(EEPROM),组织形式为256字×8位字长。
ARM基础知识单选题100道及答案解析

ARM 基础知识单选题100道及答案解析1. ARM 处理器采用的架构是()A. CISCB. RISCC. VLIWD. EPIC答案:B解析:ARM 处理器采用的是精简指令集(RISC)架构。
2. 以下哪个不是ARM 处理器的特点()A. 低功耗B. 高性能C. 复杂指令集D. 体积小答案:C解析:ARM 处理器是精简指令集,不是复杂指令集。
3. ARM 指令集的寻址方式不包括()A. 立即寻址B. 间接寻址C. 寄存器间接寻址D. 基址加变址寻址答案:B解析:ARM 指令集的寻址方式包括立即寻址、寄存器寻址、寄存器间接寻址、基址加变址寻址等,没有间接寻址。
4. 在ARM 体系结构中,用于存储程序状态寄存器的是()A. R0B. R13C. R15D. CPSR答案:D解析:CPSR(Current Program Status Register)用于存储程序状态。
5. 以下关于ARM 异常的说法错误的是()A. 复位异常优先级最高B. 未定义指令异常可以用于软件仿真C. 数据中止异常发生在数据访问时D. 快速中断异常响应速度比普通中断慢答案:D解析:快速中断异常响应速度比普通中断快。
6. ARM 处理器的工作模式不包括()A. 用户模式B. 系统模式C. 管理模式D. 超级模式答案:D解析:ARM 处理器的工作模式包括用户模式、系统模式、管理模式、中止模式、未定义模式、中断模式、快速中断模式。
7. 下列属于ARM 处理器的寄存器组的是()A. 通用寄存器B. 状态寄存器C. 控制寄存器D. 以上都是答案:D解析:ARM 处理器的寄存器组包括通用寄存器、状态寄存器和控制寄存器。
8. 在ARM 中,实现子程序调用的指令是()A. BB. BLC. BXD. MOV答案:B解析:BL 指令用于实现子程序调用,并保存返回地址。
9. 以下关于ARM 流水线的描述,错误的是()A. 提高了指令执行效率B. 增加了处理器的复杂度C. 减少了指令执行周期D. 不会产生流水线冲突答案:D解析:ARM 流水线可能会产生流水线冲突。
arm习题及答案

arm习题及答案ARM习题及答案在计算机科学领域,ARM(Advanced RISC Machines)是一种广泛应用的处理器架构。
由于其低功耗、高性能以及广泛的应用领域,ARM架构已成为移动设备、嵌入式系统和物联网等领域的首选。
为了帮助读者更好地理解和掌握ARM架构,本文将提供一些ARM习题及答案,希望能为读者提供一些学习和练习的方向。
1. 什么是ARM架构?它有哪些特点?答案:ARM架构是一种基于精简指令集计算机(RISC)的处理器架构。
它的特点包括高性能、低功耗、成本效益高以及可扩展性强。
ARM架构还具有灵活的指令集、多层次的缓存结构以及强大的浮点运算能力。
2. ARM处理器的工作原理是什么?答案:ARM处理器采用流水线技术,将指令执行过程划分为多个阶段,以提高指令的执行效率。
它包括指令获取、指令解码、执行、访存和写回等阶段。
ARM处理器还采用了分支预测和乱序执行等技术,以进一步提高性能。
3. ARM架构有哪些不同的版本?答案:ARM架构有多个不同的版本,包括ARMv6、ARMv7和ARMv8等。
每个版本都有不同的特性和指令集,用于满足不同应用领域的需求。
例如,ARMv8架构引入了64位处理器,提供更高的性能和更大的内存寻址能力。
4. 如何在ARM架构上进行软件开发?答案:在ARM架构上进行软件开发可以使用多种编程语言和开发工具。
常用的编程语言包括C、C++和汇编语言等。
开发工具方面,可以使用ARM开发工具链(如Keil MDK和GCC)进行编译、调试和仿真。
5. 如何优化ARM架构的软件性能?答案:为了优化ARM架构的软件性能,可以采取一些措施。
首先,合理利用处理器的流水线和缓存结构,减少指令的访存延迟。
其次,使用适当的算法和数据结构,提高程序的执行效率。
此外,还可以使用编译器优化选项和内联汇编等技术,进一步提高性能。
6. ARM架构在物联网领域有哪些应用?答案:ARM架构在物联网领域有广泛的应用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ARM 2017年复习题总结简答题什么是嵌入式操作系统?答:嵌入式系统是以应用为中心,以计算机技术为基础,软/硬件可裁减,功能。
可靠性,成本,体积,功耗要求严格的专用计算机系统。
与通用计算机相比,嵌入式系统有哪些特点?答:(1).嵌入式系统通常是面向特定应用的;(2).嵌入式系统是将计算机技术,半导体技术和电子技术与各行各业的具体应用相结合的后的产物,是一门综合技术学科;(3).嵌入式系统和具体应用有机的结合在一起,它的升级换代也是和具体产品同步进行的,因此嵌入式产品一旦进入市场,就有较长的生命周期;(4).为了提高执行速度和可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存储于磁盘等载体中;(5).嵌入式系统本身不具有自主开发能力,即使设计完成以后用户通常也不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。
ARM处理器有几种寻址方式,说明各种寻址的方式。
答:立即寻址:操作数直接放在指令中。
例如:ADD R0,R0,#0x3f ;R0←R0+0x3f寄存器寻址:操作数放在寄存器中。
例如:ADD R0,R1,R2 ;R0←R1+R2寄存器间接寻址:操作数在内存,以寄存器中的值作为操作数的地址。
例如:LDR R0,[R1] ;R0←[R1]基址加偏移量寻址(基址变址寻址):基址寄存器的内容与指令中的偏移量相加形成操作数的有效地址例如:LDR R0,[R1,#4] ;R0←[R1+4]LDR R0,[R1,R2] ;R0←[R1+R2]多寄存器寻址:一条指令可以完成多个寄存器值的传送。
例如:LDMIA R0,{R1,R2,R3,R4} ;R1←[R0];R2←[R0+4];R3←[R0+8];R4←[R0+12]堆栈寻址:堆栈是一种数据结构,按先进后出(First In Last Out,FILO)的方式工作,使用一个称作堆栈指针的专用寄存器指示当前的操作位置,堆栈指针总是指向栈顶。
例如:STMFD R13!,{R0,R4-R12,LR}LDMFD R13!,{R0,R4-R12,PC}举例介绍嵌入式处理器有哪几类?答:1.嵌入式微处理器(Embedded Microprocessor Unit,EMPU);2.嵌入式微控制器;(Embedded Microcontroller Unit,EMCU)3.嵌入式DSP处理器(Embedded Digital Signal Processor,EDSP);4.嵌入式片上系统(Embedded System on Chip,EsoC);什么是立即数?请简要描述立即数在使用时有什么注意要点。
立即数,主要是指寻址时直接在指令中出现的数,在使用时注意(1)立即数前需要加#(2)ARM指令只有32位长,立即数在指令中占12位存储空间,ARM用这12位空间8位表示有效数字-基数B,4位表示译为的数M,按照把B循环右移M*2位,构造成一个新的32位的数,其它位补0,所以在使用立即数时,要注意其是否合法。
请问BL指令跳转时LR寄存器保存的是什么内容?并请简述原因。
BL跳转时,LR中保存的是执行BL跳转指令的下一条指令的地址,考虑流水线的情况,即当前的PC-4。
LR用来在需要返回程序时从LR中还原程序执行的位置继续执行。
ARM内核有多少个寄存器,请列举出这些寄存器的名字和数量。
ARM有37个寄存器,(1)未分组寄存器:R0-R7,共8个;(2)分组寄存器R8-R14,其中FIQ模式下有单独的一组R8-R12共5个,另外6种模式共用一组R8-R12,共5个,USR和SYS模式共用一组R13-R14,共2个,另外5种模式下各有独自的一组R13-R14,共10个;(3)程序计数器PC即R15寄存器,共1个;(4)状态寄存器CPSR,和5个备份状态寄存器SPSR,共6个;ARM总计37个寄存器。
ARM通用寄存器中,有3个寄存器有特殊功能和作用,请写出它们的名字和作用。
(6分)R13:SP栈指针寄存器,用来保存程序执行时的栈指针位置;R14:LR返回链接寄存器,用来保存程序执行BL指令或模式切换时的返回原程序继续执行的地址;R15:PC程序计数器,保存程序执行的当前地址。
ARM的CPSR寄存器的位定义如图所示,试简述各位的功能。
(8分)标志位含义N N=1 表示运算的结果为负数;N=0 表示运算的结果为正数或零 Z Z=1 表示运算的结果为零;Z=0 表示运算的结果为非零 C C=1 表示有进位,C=0 表示没有进位 V V=1 表示符号位溢出,V=0 表示结果没有溢出 Q 在ARM vTE/J 架构支持,指示DSP 指令是否溢出J 仅ARM 5TE/J 架构支持,J = 1 表示处理器处于Jazelle 状态 I I=1 表示禁止IRQ F F=1 表示禁止FIQT 仅ARM xT 架构支持,T = 0 表示处理器处于ARM 状态,T=1 表示处理器处于Thumb 状态什么是伪指令和伪操作?在ARM汇编中有哪几种伪指令?答:在ARM汇编语言程序中有些特殊助记符,这些助记符与一般指令的助记符的不同之处在于没有相对应的操作码或者机器码,通常称这些特殊指令助记符伪指令,他们多完成的操作成为伪操作;在ARM汇编中,有如下几种伪指令:(1)符号定义伪指令;(2)数据定义伪指令;(3)汇编控制伪指令;(4)信息报告伪指令;(5)宏指令及其他伪指令。
如何定义寄存器列表,试举一个使用寄存器列表的例子,要求实现4个字的内存复制。
答:AREA EXAMPLE1,CODE,READONL YENTRYLDR R0,=0XFF ;把地址0XFF赋给R0LDR R5,=0X0F ;把地址0X0F赋给R5STARTPBLOCK RLIST {R1-R4} ;把R1-R4定义为PBLOCKLDMIA R0,PBLOCK ;把R0为首地址的内存4个字单元装载至R1到R4中STMIA R5,PBLOCK ;把R1到R4的值依次存至R5为首地址的内存字单元STOPB STOP ;死循环END如何定义一个宏,宏与子程序的区别是什么?答:宏的格式为:MARCO和MEND[$标号] 宏名[$参数1,$参数2…..]指令序列MENDMARCO表示一个宏定义的开始,MEND表示一个宏的结束,MARCO和MEND前呼后应可以将一段代码定义为一个整体,又称宏,然后在程序中就可以在程序中通过宏的名称及参数调用该段代码。
宏指令可以重复使用,这一点的使用方式与子程序有些相似,子程序可以节省存储空间,提供模块化的程序设计。
但使用子程序机构时需要保存/恢复现场,从而增加了系统的开销,因此,在代码传递的参数较多并且比较短时,可以使用宏代替子程序,宏在被调用的地方展开。
ARM汇编中如何定义一个段,段有几种属性?答:AREA用于定义一个代码段,数据段,或者特定属性的段。
段的几种属性如下:READONL Y表示只读属性;READWRITE表示本段可读写;CODE定义代码段;DATA定义数据段;ALIGN=表达式的对齐方式为2的表达式次方;;COMMON:定义一个通用段,这个段不包含用户代码和数据。
在一个汇编源文件中如何包含另一个文件中的内容?答:通常可以使用GET/INCLUDE指令,在某源文件中定义一些宏指令,用MAP和FIELD定义结构化数据结构类型,用EQU定义常量的符号名称,然后用GET/INCLUDE将这个源文件包含到其他源文件中。
1.ARM7TDMI采用了几级流水线工作方式,简要说明。
答:三级1、取指令2、译码3、执行2.ARM9采用了几级流水线工作方式,简要说明。
答:五级流水线工作方式,1.取指2.指令译码3.执行4.数据存储访问5.写寄存器3.哈佛体系结构和冯诺依曼体系结构有何不同。
答:哈佛体系结构的两套地址总线和数据总线是分开的,冯诺依曼体系结构是复用的。
1. 简述ARM发生异常时,ARM核心会自动做哪些事情?从异常返回时,我们要做哪些事情?当异常产生时, ARM core:拷贝CPSR 到SPSR_<mode>设置适当的CPSR 位:改变处理器状态进入ARM 状态改变处理器模式进入相应的异常模式设置中断禁止位禁止相应中断(如果需要)保存返回地址到LR_<mode>设置PC 为相应的异常向量返回时, 异常处理需要:从SPSR_<mode>恢复CPSR从LR_<mode>恢复PCNote:这些操作只能在ARM 态执行.2. 用ARM汇编指令写出实现64位加法和64位减法的代码段,使用的寄存器请自行分配。
假定低32位数存放在r0和r1里面,高32位数存放在r2和r3里面。
加法:ADDS r0, r0, r1 //加S是因为要让这个操作影响标志位ADC r2, r2, r3 //ADC是带进位的加法,如果上一条指令产生进位则一起加进来减法:SUBS r0, r0, r1 //加S是因为要让这个操作影响标志位SBC r2, r2, r3 // SBC是带进位的减法指令3. 请列举ARM处理器的模式和异常,并说明各个发生异常时ARM处理器所处的模式异常:ResetData AbortFIQIRQPrefetch AbortSWIUndefined instruction处理器模式User : 非特权模式,大部分任务执行在这种模式}FIQ : 当一个高优先级(fast)}中断产生时将会进入这种模式IRQ : 当一个低优先级(normal) 中断产生时将会进入这种模式}Supervisor} :当复位或软中断指令执行时将会进入这种模式Abort : 当存取异常时将会进入这种模式}Undef :}当执行未定义指令时会进入这种模式System : 使用和User模式相同寄存器集的特权模式}4. FIQ的什么特点使得它处理的速度比IRQ快?1)FIQ优先级比IRQ高,不会被中断2)FIQ有自己的专属寄存器:r8~r12,不用对通用寄存器入栈保护,可以加快速度3)FIQ位于异常向量表的末尾0x1c,故无需跳转,可以在这里直接放置异常处理函数5. 什么指令可以放在中断向量表?跳转指令,给PC赋值的指令B,LDR,MOV6. ARM处理器中断向量表位于存储器的什么位置?默认:0x0也可以配置成:0Xffff00007. 下列ARM 指令将做什么?a) LDRH r0,[r1,#6]b) LDR r0, =0x999a:将r1寄存器的值加上6,然后把以这个值为地址的内存单元里的值取半字(低16位)赋给r0b:将立即数0x999赋给r0,注意这是一个伪指令8. SWP 指令的优势是什么?用来实现什么功能?功能:在寄存器和存储器之间,由一次存储器读和一次存储器写组成的原子操作。