ARM复习课后题答案(完整版)知识讲解
- 格式:doc
- 大小:66.00 KB
- 文档页数:19
第1章嵌入式系统概述(1)举出3个本书中未提到的嵌入式系统的例子。
答:键盘、鼠标、扫描仪。
(2)什么叫嵌入式系统?答:嵌入到对象体系中的专用计算机应用系统。
(3)什么叫嵌入式处理器?嵌入式处理器分为哪几类?答:嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。
分为3类:1.注重尺寸、能耗和价格;2.关注性能;3.关注全部4个需求——性能、尺寸、能耗和价格。
(4)什么是嵌入式操作系统?为何要使用嵌入式操作系统?答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的基础上加入符合嵌入式系统要求的元素发展而来的。
原因:1.提高了系统的可靠性;2.提高了开发效率,缩短了开发周期。
3.充分发挥了32位CPU的多任务潜力。
第2章 ARM7体系结构1.基础知识(1)ARM7TDMI中的T、D、M、I的含义是什么?答:T:高密度16位Thumb指令集扩展;D:支持片上调试;M:64位乘法指令;I:Embedded ICE硬件仿真功能模块。
(2)ARM7TDMI采用几级流水线?使用何种存储器编址方式?答:3级;冯·诺依曼结构。
(3)ARM处理器模式和ARM处理器状态有何区别?答:ARM处理器模式体现在不同寄存器的使用上;ARM处理器状态体现在不同指令的使用上。
(4)分别列举ARM的处理器模式和状态?答:ARM的处理器模式:用户模式、系统模式、管理模式、中止模式、未定义模式、中断模式、快速模式;ARM的处理器状态:ARM状态、Thumb状态。
(5)PC和LR分别使用哪个寄存器?答:PC:R15;LR:R14。
(6)R13寄存器的通用功能是什么?答:堆栈指针SP。
(7)CPSR寄存器中哪些位用来定义处理器状态?答:位31~28:N、Z、C、V,条件代码标志位;27~8:保留位;7~0:I、F、T、M4~0,控制标志位。
(8)描述一下如何禁止IRQ和FIQ的中断。
答:当控制位I置位时,IRQ中断被禁止,否则允许IRQ中断使能;当控制位F置位时,FIQ 中断被禁止,否则允许FIQ中断使能。
《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个基本要素。
第一章思考与练习1、举出3个书本中未提到的嵌入式系统的例子。
答:红绿灯控制,数字空调,机顶盒2、什么叫嵌入式系统嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
3、什么叫嵌入式处理器嵌入式处理器分为哪几类嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。
嵌入式微处理器(Embedded Microprocessor Unit, EMPU)嵌入式微控制器(Microcontroller Unit, MCU)嵌入式DSP 处理器(Embedded Digital Signal Processor, EDSP)嵌入式片上系统(System On Chip)4、什么是嵌入式操作系统为何要使用嵌入式操作系统是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。
其次,提高了开发效率,缩短了开发周期。
再次,嵌入式实时操作系统充分发挥了 32 位 CPU 的多任务潜力。
第二章1、嵌入式系统项目开发的生命周期分哪几个阶段各自的具体任务是什么项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4 个阶段。
识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。
提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。
执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展,分析项目偏差,采取必要措施以实现目标。
结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。
2、为何要进行风险分析嵌入式项目主要有哪些方面的风险在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。
需求风险;时间风险;资金风险;项目管理风险3、何谓系统规范制定系统规范的目的是什么规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。
课后题答案:第一章1.写出下列英文缩写的英文原文及中文含义。
RAM随机存储器 DRAM动态随机存储器 ROM只读存储器PROM可编程只读存储器 EPROM可插除可编程只读存储器 CANCAN总线RTOS实时操作系统 SOPC片上可编程系统 ICE硬件调试器 FI快速终端请求EEPROM电可插除可编程只读存储器 API应用程序接 DMA直接内存存取RISC精简指令集计算机 SPI串行万维指令 MMU存储管理单元UART异步接受发送装置 ARM先进RISC存储器 SWI软件终端指令2、什么是嵌入式系统? P3嵌入式系统是用于检测、控制、辅助、操作机械设备的装置。
以应用为中心,一计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
3、是比较嵌入式系统与通用PC的区别。
P3(1)嵌入式系统是专用的计算机系统,而PC是通用的计算机系统。
(2)技术要求不同,通用PC追求高速、海量的数据运算;嵌入式要求对象体系的智能化控制。
(3)发展方向不同,PC追求总线速度的不断提升,存储容量不断扩大;嵌入式追求特定对象系统的智能性,嵌入式,专用性。
4、嵌入式体统有哪些部分组成?简单说明各部分的功能与作用(1)硬件层是整个核心控制模块(由嵌入式微处理器、存储系统、通信模块、人机接口、其他I/O 接口以及电源组成),嵌入式系统的硬件层以嵌入式微处理器为核心,在嵌入式微处理器基础上增加电源电路、时钟电路、和存储器电路(RAM和ROM等),这就构成了一个嵌入式核心控制模块,操作系统和应用程序都可以固化在ROM中。
(2)中间层把系统软件与底层硬件部分隔离,使得系统的底层设备驱动程序与硬件无关。
一般包括硬件抽象层(Hardware Abstract Layer,HAL)和板级支持包(Board Support Package,BSP)。
(3)软件层由实时操作系统(Real Time Operating System,RTOS)、文件系统、图形用户接口(Graphical User Interfaces,GUI)、网络组件组成。
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道及答案解析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(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架构在物联网领域有广泛的应用。
ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版arm嵌入式系统结构与编程习题答案清华大学出版社最详细版一《arm嵌入式系统结构与编程》习题答案第一章为绪论1.国内嵌入式系统行业对“嵌入式系统”的定义是什么?如何理解?答:国内嵌入式行业普遍接受的定义是:以应用为中心,以计算机技术为基础,软硬件可定制,满足应用系统在功能、可靠性、成本、体积和功耗等方面的严格要求的专业计算机系统。
从这个定义可以看出,嵌入式系统与应用紧密结合,具有很强的特殊性。
它必须根据实际系统需求进行合理定制和使用。
因此,嵌入式系统是“为特定的人定制的”。
2.嵌入式系统是从何时产生的,简述其发展历程。
答:从20世纪70年代单片机的出现到目前各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了30多年的发展历史。
嵌入式系统的出现最初是基于单片机的。
英特尔于1971年开发了第一款4位总线结构的微处理器4004,可以说是嵌入式系统的雏形。
80年代初的8051是单片机历史上值得纪念的一页。
20世纪80年代初,出现了一种商业化的“实时操作系统内核”。
在实时内核下编写应用软件,可以加快新产品的开发速度,节约资金。
在20世纪90年代,实时内核发展为实时多任务操作系统。
进入21世纪以来,嵌入式系统得到了极大的发展。
在硬件方面,单片机的性能有了很大的提高,尤其是ARM技术的出现和改进,为嵌入式操作系统提供了强大的硬件载体,将嵌入式系统推向了一个新的阶段。
3.当前最常用的源码开放的嵌入式操作系统有哪些,请举出两例,并分析其特点。
答:主要有嵌入式linux和嵌入式实时操作内核uc/os-ii嵌入式Linux操作系统是一种针对嵌入式微控制器的特点而定制的Linux操作系统,包括通用的嵌入式通信协议和通用驱动程序,并支持多种文件系统。
它主要具有以下特点:开源、易移植、内核小、功能强大、运行稳定、效率高。
uc/os是源码工卡的实时嵌入式系统内核,主要有以下特点:源码公开,可移植性强,可固化,可剪裁,占先式,多任务,可确定性,提供系统服务等。
第一章思考与练习1、举出3个书本中未提到的嵌入式系统的例子。
答:红绿灯控制,数字空调,机顶盒2、什么叫嵌入式系统?嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
3、什么叫嵌入式处理器?嵌入式处理器分为哪几类?嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。
嵌入式微处理器(Embedded Microprocessor Unit, EMPU)嵌入式微控制器(Microcontroller Unit, MCU)嵌入式DSP 处理器(Embedded Digital Signal Processor, EDSP)嵌入式片上系统(System On Chip)4、什么是嵌入式操作系统?为何要使用嵌入式操作系统?是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。
其次,提高了开发效率,缩短了开发周期。
再次,嵌入式实时操作系统充分发挥了 32 位CPU 的多任务潜力。
第二章1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务是什么?项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4 个阶段。
识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。
提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。
执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展,分析项目偏差,采取必要措施以实现目标。
结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。
2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险?在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。
需求风险;时间风险;资金风险;项目管理风险3、何谓系统规范?制定系统规范的目的是什么?规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。
第1章嵌入式系统概述(1)举出3个本书中未提到的嵌入式系统的例子。
答:键盘、鼠标、扫描仪。
(2)什么叫嵌入式系统答:嵌入到对象体系中的专用计算机应用系统。
(3)什么叫嵌入式处理器嵌入式处理器分为哪几类答:嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。
分为3类:1.注重尺寸、能耗和价格;2.关注性能;3.关注全部4个需求——性能、尺寸、能耗和价格。
(4)什么是嵌入式操作系统为何要使用嵌入式操作系统答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的基础上加入符合嵌入式系统要求的元素发展而来的。
原因:1.提高了系统的可靠性;2.提高了开发效率,缩短了开发周期。
3.充分发挥了32位CPU的多任务潜力。
第2章 ARM7体系结构1.基础知识(1)ARM7TDMI中的T、D、M、I的含义是什么答:T:高密度16位Thumb指令集扩展;D:支持片上调试;M:64位乘法指令;I:Embedded ICE硬件仿真功能模块。
(2)ARM7TDMI采用几级流水线使用何种存储器编址方式答:3级;冯·诺依曼结构。
(3)ARM处理器模式和ARM处理器状态有何区别答:ARM处理器模式体现在不同寄存器的使用上;ARM处理器状态体现在不同指令的使用上。
(4)分别列举ARM的处理器模式和状态答:ARM的处理器模式:用户模式、系统模式、管理模式、中止模式、未定义模式、中断模式、快速模式;ARM的处理器状态:ARM状态、Thumb 状态。
(5)PC和LR分别使用哪个寄存器答:PC:R15;LR:R14。
(6)R13寄存器的通用功能是什么答:堆栈指针SP。
(7)CPSR寄存器中哪些位用来定义处理器状态答:位31~28:N、Z、C、V,条件代码标志位;27~8:保留位;7~0:I、F、T、M4~0,控制标志位。
(8)描述一下如何禁止IRQ和FIQ的中断。
答:当控制位I置位时,IRQ中断被禁止,否则允许IRQ中断使能;当控制位F置位时,FIQ中断被禁止,否则允许FIQ中断使能。
ARM复习课后题答案(完整版) 精品资料
仅供学习与交流,如有侵权请联系网站删除 谢谢2 1. 国内嵌入式系统行业对嵌入式系统的定义是什么?如何理解 答: 以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 从这个定义看以看出嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统要求进行合理的裁剪利用。因此有人把嵌入式系统比作是一个针对特定的应用而量身定做的专用计算机系统。 2. 当前最常见的源码开放的嵌入式操作系统有哪些,请举出两例,并分析其特点 答:嵌入式linux和嵌入式实时操作系统uc/os-II Linux: (1) linux是源码开放的,每一个技术细节都是透明的,易于裁剪定制。 (2) 目前嵌入式linux已经在多种嵌入式处理器芯片移植成功,有大量且不断增加的开发工具,这些工具为嵌入式系统开发提供了良好的开发环境。 (3) Linux内核小、功能强大、运作稳定、效率高。 Ucos: (1) 源代码公开 (2) 可移植性。 (3) 可固化 (4) 可裁剪 (5) 占先式 (6) 多任务 精品资料 仅供学习与交流,如有侵权请联系网站删除 谢谢3 (7) 可确定性。 (8) 系统服务
第2章ARM技术与ARM体系结构
3. arm处理器的工作模式有哪几种,其中哪些为特权模式,哪些为异常模式,并指出处理器在什么情况下进入相应的模式。 答:ARM 处理器共有7 种工作模式: 用户模式:非特权模式,也就是正常程序执行的模式,大部分任务在这种模式 下执行。在用户模式下,如果没异常发生,不允许应用程序自行改变处理器的工作 模式,如果有异常发生,处理器会自动切换工作模式 FIQ 模式:也称为快速中断模式,支持高速数据传输和通道处理,当一个高优 先级(fast)中断产生时将会进入这种模式。 IRQ 模式:也称为普通中断模式,:当一个低优先级中断产生时将会进入这种模 式。在这模式下按中断的处理器方式又分为向量中断和非向量中断两种。通常的中 断处理都在IRQ 模式下进行。 SVC 模式:称之为管理模式,它是一种操作系统保护模式。当复位或软中断指 令执行时处理器将进入这种模式。 中止模式:当存取异常时将会进入这种模式,用来处理存储器故障、实现虚拟 存储或存储保护。 未定义指令异常模式:当执行未定义指令时会进入这种模式,主要是用来处理 精品资料 仅供学习与交流,如有侵权请联系网站删除 谢谢4 未定义的指令陷阱,支持硬件协处理器的软件仿真,因为未定义指令多发生在对协 处理器的操作上。 系统模式:使用和User 模式相同寄存器组的特权模式,用来运行特权级的操作 系统任务。 在这 7 种工作模式中,除了用户模式以外,其他6 种处理器模式可以称为特权 模式,在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理 器模式的切换。在这6 种特权模式中,除了系统模式外的其他5 种特权模式又 称为异常模式
4. 分析程序状态寄存器(PSR)各位的功能描述,并说明C、Z、N、V 在什 么情况下进行置位和清零。 答:PSR 的具体格式为
V—溢出标志位
对于加/减法运算指令,当操作数和运算结果为二进制补码表示的带符号数时, V=1 表示符号位溢出,其他的指令通常不影响V 位。 C—进位或借位标志位 对于加法指令(包括比较指令 CMN),结果产生进位,则C=1,表示无符号 精品资料 仅供学习与交流,如有侵权请联系网站删除 谢谢5 数运算发生上溢出,其他情况下C=0; 在减法指令中(包括比较指令CMP),结果产生借位,则C=0,表示无符号数 运算发生下溢出,其他情况下C=1; 对于包含移位操作的非加/减法运算指令,C 中包含最后一次溢出位的数值; 对于其他非加/减法运算指令,C 位的值通常不受影响。 Z—结果为0 标志位 Z=1 表示运算结果是0,Z=0 表示运算结果不是零; 对于 CMP 指令,Z=1 表示进行比较的两个数大小相等。 N— 符号标志位 本位设置成当前指令运算结果的bit[31]的值。当两个补码表示有符号整数运算 时,N=1 表示运算的结果为负数,N=0 表示结果为正数或零。
5. 简述 ARM 处理器异常处理和程序返回的过程。 答:ARM 在异常产生时会进行以下操作: (1) 将引起异常指令的下一条指令地址保存到新的异常模式的LR 中,使异 常处理程序执行完后能根据LR 中的值正确返回; (2) 将CPSR 的内容复制到新的异常模式下的SPSR 中; (3) 根据异常类型将CPSR 模式控制位强制设定为发生异常所对应的模式 值; (4) 强制PC 指向相应的异常向量地址。 精品资料 仅供学习与交流,如有侵权请联系网站删除 谢谢6 ARM 在异常返回时 (1) 从 SPSR_恢复CPSR; (2) 从LR_恢复PC 。
6. ARM 处理器字数据的存储格式有哪两种?并指出这两种格式的区别。 答: (1) 小端存储格式(Little-Endian) 在小端存储格式中,对于地址为A 的字单元,其中字节单元由低位到高位字节地 址顺序为A,A+1,A+2,A+3;对于地址为A 的半字单元,其中字节单元由低位到高 位字节地址顺序为A,A+1; (2) 大端存储格式(Big-Endian) 在大端存储格式中,对于地址为A 的字单元,其中字节单元由高位到低位字节地 址顺序为 A,A+1,A+2,A+3;对于地址为A 的半字单元,其中字节单元由高位到低 位字节地址顺序为A,A+1。
第3章 ARM指令集寻址方式 精品资料 仅供学习与交流,如有侵权请联系网站删除 谢谢7 3. 在 ARM 指令中,什么是合法的立即数?判断下面各立即数是否合法,如果合 法则写出在指令中的编码格式(也就是8 位常数和4 位的移位数)。 0x5430 0x108 0x304 0x501 0xFB10000 0x334000 0x3FC000 0x1FE0000 0x5580000 0x7F800 0x39C000 0x1FE80000
答:计算步骤:
(1) 十六进制立即数两端0去掉 (2) 展成二进制 (3) 连续偶数个0去掉,数字中间0不去掉 (4) 剩下数字位数小于等于8可以,反之,不可以。
5. ARM 数据处理指令具体的寻址方式有哪些,如果程序计数器PC 作为目标寄存器,会产生什么结果? 答:ARM数据处理指令寻址方式有5种 1)第二操作数为立即数 2)第二操作数为寄存器 3)第二操作数为寄存器移位方式,且移位的位数为一个5位的立即数 4)第二操作数为寄存器移位方式,且移位数值放在寄存器中 5)第二操作数为寄存器进行RRX移位得到 如果程序计数器PC作为目标寄存器,会发生程序跳转。 6. 在 Load/Store 指令寻址中,字、无符号字节的Load/Store 指令寻址和半字、有 符号字节寻址,试分析它们之间的差别。 精品资料 仅供学习与交流,如有侵权请联系网站删除 谢谢8 答:字、无符号字节寻址: 1)Addressing_mode中的偏移量为立即数 2)Addressing_mode中的偏移量为寄存器的值 3)Addressing_mode中的偏移量通过寄存器移位得到 半字、有符号字节寻址: 1)Addressing_mode中的偏移量为立即数 2)Addressing_mode中的偏移量为寄存器的值
从以上分析看出:差别就在于后者没有第三项寻址方式。 7. 块拷贝 Load/Store 指令在实现寄存器组和连续的内存单元中数据传递时,地址 的变化方式有哪几种类型,并分析它们的地址变化情况。 答:批量 Load/Store 指令在实现寄存器组和连续的内存单元中数据传递时,地址的 变化方式(addr_mode)有以下4 种类型: 后增 IA (Increment After) :每次数据传送后地址加4; 先增IB (Increment Before) :每次数据传送前地址加4 ; 后减 DA (Decrement After) :每次数据传送后地址减4 ; 先减DB (Decrement Before) :每次数据传送前地址减4 。 8. 栈操作指令地址的变化方式有哪几种类型,并分析它们的地址变化情况,从而 得出栈操作指令寻址和块拷贝Load/Store 指令之间的对应关系。 答: 精品资料 仅供学习与交流,如有侵权请联系网站删除 谢谢9 (1) 四种类型的堆栈工作方式,即: 满递增堆栈FA(Empty Ascending):堆栈指针指向最后压入的数据,且由低地址 向高地址生成。 满递减堆栈FD(Full Descending):堆栈指针指向最后压入的数据,且由高地址 向低地址生成。 空递增堆栈 EA(Full Ascending):堆栈指针指向下一个将要放入数据的空位置, 且由低地址向高地址生成。 空递减堆栈 ED(Empty Descending):堆栈指针指向下一个将要放入数据的空位 置,且由高地址向低地址生成。 (2) 栈操作指令寻址和块拷贝Load/Store 指令之间的对应关系见表3-10。
第4章 ARM指令集系统 4. 分析下列每条语句的功能,并确定程序段所实现的操作。 CMP R0,#0 MOVEQ R1,#0 MOVGT R1,#1 答:分析: 当 R0 等于0 时,MOVEQ 执行,则R1 等于0;