ARM嵌入式系统基础教程复习
嵌入式复习课整理

第1章复习提纲1、嵌入式系统的定义2、嵌入式系统的分类,简述你所学过的嵌入式系统3、几种常见的嵌入式操作系统WindowsCE、uC/OSII、uCLinux、VxWorks、Palm OS等4、嵌入式系统的应用领域信息家电、移动计算设备、汽车电子、工业控制、机器人、军事领域等。
、第2章嵌入式系统体系结构2、目前应用比较广泛ARM处理器系列是:ARM7、ARM9、ARM9E、ARM10,各系列特点……3、ARM920TDMI命名含义4、ARM指令集和Thumb指令集特点5、ARM920T微处理器的指令流水采用了典型的RISC五级流水线结构,将指令执行过程分为取指、译码、执行、访存和写回5个步骤。
6、ARM处理器支持下列数据类型:字节8位;半字16位(占用两个字节)、字32位(占用4个字节)。
7、ARM处理器的7种工作模式8、ARM9的存储组织结构:32位长的地址,它把存储器看成是0地址开始的字节的线性组合,即一个地址对应于一个存储字节,其范围是232个字节(8位二进制数)。
9、ARM9处理器的内部总共有37个32位的寄存器,其中31个用作通用寄存器,6个用作状态寄存器,每个状态寄存器只使用了其中的12位。
这37个寄存器根据处理器的状态及其工作模式的不同而被安排成不同的组。
10、几个重要的寄存器:R13—堆栈指针、 R14—链接寄存器 R15—程序计数器、 CPSR -状态寄存器 SPSR —备份的状态寄存器 11、CPSR12、什么是异常13、什么是异常向量表异常出现后处理器强制从异常类型所对应的固定存储器地址开始执行程序,这些存储器地址称为异常向量表。
14、进入异常时,ARM9内核完成以下动作:(1)将下一条指令的地址保存在相应的LR 寄存器中。
(2)将CPSR 复制到相应的SPSR 中。
(3)迫使CPSR 模式位M[4:0]的值设置成对应的异常模式值 (4)迫使PC 从相关的异常向量取下一条指令。
ARM嵌入式系统复习资料

嵌入式系统1、嵌入式系统的定义:嵌入到对象体系中的专用计算机应用系统。
特点:嵌入性、内含计算机、专用性。
2、嵌入式系统的分类:嵌入式微处理器、嵌入式微控制器、嵌入式DSP处理器、嵌入式片上系统(SOC)。
3、常见的嵌入式操作系统:嵌入式Linux、Win CE、VxWorks、μC/OS-II4、常用的ARM处理系统:Cortex—M3处理器、Cortex—R4、Cortex—R4F、Cortex—A85、ARM7TDMI含义:T—支持高密度16位的Thumb指令集;D—支持片上调试;M—支持64位乘法;I—支持EmbededICE观察硬件;6、存储器的字与半字:从偶数地址开始的连续2个字节构成一个半字;以能被4整除的地址开始的连续4个字节构成一个字;ARM指令的长度刚好是一个字,Thumb指令的长度刚好是一个半字。
7、三级流水线:取指、译码、执行。
8、ARM处理器状态:ARM状态:32位,处理器执行字方式的ARM指令,处理器默认为此状态;Thumb状态:16位,处理器执行半字方式的Thumb指令。
切换状态:地址最低位为0,表示切换到ARM状态,执行完BX指令,处理器切换到ARM状态,开始执行ARM指令。
地址最低位为1,表示切换到Thumb状态,执行完BX 指令,处理器切换到Thumb状态,开始执行Thumb指令。
9、ARM处理器7种模式:(1)用户模式(2)特权模式:a、系统模式b、异常模式(快中断模式、中断模式、管理模式、中止模式、未定义模式)。
10、ARM状态下的特殊用途寄存器:R13(堆栈指针SP,主要用于保护/恢复现场)、R14(链接寄存器LR,用于保存程序返回地址)、R15(程序计数器PC)11、当前状态寄存器(CPSR):4个条件代码标志(负标志N、零标志Z、进位标志C和溢出标志V )负标志N:运算结果的第31位值,记录标志设置操作的结果;零标志Z:如果标志设置的操作为0,则置位;进位标志C:记录无符号加法溢出,减法无借位,循环移位;溢出标志V:记录标志设置操作的有符号溢出。
【良心出品】《ARM嵌入式系统基础教程》复习

《嵌入式系统基础教程》复习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基本属性;其次,它又具备软硬件在系统可编程的功能,是可编程系统,具有可裁剪、可扩充、可升级等灵活的设计方式。
ARM嵌入式系统基础复习题

ARM嵌⼊式系统基础复习题嵌⼊式系统基础复习题⼀、简答题1、什么是嵌⼊式系统?嵌⼊到对象体系中的专⽤计算机应⽤系统。
2、嵌⼊式系统的3个基本特点?嵌⼊性、专⽤性、计算机3、什么是嵌⼊式处理器,嵌⼊式处理器可以分为⼏⼤类?嵌⼊式处理器是为了完成特殊的应⽤⽽设计的特殊⽬的的处理器。
分为嵌⼊式微处理器、嵌⼊式微控制器、嵌⼊式DSP处理器、嵌⼊式⽚上系统(SOC)。
4、⼴泛使⽤的三种类型的操作系统?多道批处理操作系统、分时操作系统以及实时操作系统。
5、常见的4种嵌⼊式操作系统?嵌⼊式Linux、Win CE、VxWorks、µC/OS-II6、ARM是什么样的公司?它是⼀家微处理器⾏业的知名企业,该企业设计了⼤量⾼性能、廉价、耗能低的RISC处理器。
特点是只设计芯⽚,⽽不⽣产。
它将技术授权给世界上许多著名的半导体、软件和OEM⼚商,并提供服务。
7、什么是RISC?什么是CISC?RISC是精简指令集计算机的缩写。
CISC是复杂指令集计算机的缩写。
8、举出2个ARM公司当前应⽤⽐较多的ARM处理器核?ARM7系列、ARM9系列、ARM10系列、ARM11系列、intel的Xscale系列和MPCore系列。
9、ARM7TDMI中的T、D、S、I分别表⽰什么含义?T:⽀持⾼密度16位的Thumb指令集D:⽀持⽚上调试S:ARM7TDMI 的可综合(synthesizable)版本(软核)I:⽀持EmbededICE观察硬件M:⽀持64位乘法10、ARM7TDMI处理器采⽤什么样的体系结构,其可寻址地址空间多⼤?ARM处理器使⽤冯.诺依曼结构使⽤单个平⾯的232个8位字节地址空间。
地址空间可以看作是包含230个32位字,或231个16位半字。
11、ARM7TDMI处理器采⽤⼏级流⽔线处理,使⽤何种存储器编址⽅式?ARM7TDMI处理器采⽤三级流⽔线。
ARM处理器将存储器看做是⼀个从0开始的线性递增的字节集合。
嵌入式系统arm复习题

嵌入式系统arm复习题嵌入式系统是一种专用的计算机系统,它通常用于控制或监视某些设备或应用程序。
ARM(Advanced RISC Machine)是一种微处理器架构,广泛应用于嵌入式系统设计中。
以下是一些关于嵌入式系统和ARM的复习题,供学习者参考。
1. 嵌入式系统的定义:嵌入式系统是一种为控制或监视特定设备或应用程序而设计的计算机系统,通常具有实时性、可靠性和资源限制。
2. ARM架构的特点:ARM架构是一种RISC(Reduced Instruction Set Computer)架构,它具有指令集简单、执行速度快、功耗低等特点。
3. ARM处理器的分类:ARM处理器主要分为三类:应用处理器、微控制器和系统芯片(SoC)。
应用处理器通常用于智能手机和平板电脑,微控制器用于简单的嵌入式系统,系统芯片则集成了处理器、内存和外设接口。
4. ARM指令集:ARM指令集包括数据处理指令、分支指令、加载/存储指令和协处理器指令等。
5. 中断和异常处理:在嵌入式系统中,中断和异常处理是实现实时性的关键。
ARM处理器提供了多种中断和异常处理机制,包括IRQ(中断请求)和FIQ(快速中断请求)。
6. 内存管理:ARM处理器支持多种内存管理技术,如内存映射、虚拟内存和缓存。
理解这些技术对于优化嵌入式系统的性能至关重要。
7. 电源管理:在嵌入式系统中,电源管理是一个重要的考虑因素。
ARM处理器提供了多种电源管理技术,如睡眠模式和功耗模式,以降低系统功耗。
8. 外设接口:ARM处理器通常集成了多种外设接口,如UART(通用异步接收/传输)、SPI(串行外围设备接口)和I2C(互连集成电路)。
了解这些接口的原理和使用方法对于嵌入式系统设计至关重要。
9. 操作系统:嵌入式系统可能运行各种类型的操作系统,包括实时操作系统(RTOS)和非实时操作系统。
了解不同操作系统的特点和适用场景对于选择合适的操作系统至关重要。
10. 安全性:随着嵌入式系统在关键领域的应用,安全性变得越来越重要。
ARM嵌入式复习

ARM处理器工作模式:1、用户模式(usr)2、快速中断模式(fiq)3、外部中断模式(irq)4、管理模式(svr)5、数据访问终止模式(abt)6、系统模式(sys)7、未定义指令终止模式(und)嵌入式3个基本要素:嵌入性、专用性、计算机系统。
嵌入式系统的基本组成结构:嵌入式系统应用,嵌入式实时操作系统、嵌入式硬件平台。
ARM微处理器的应用选型:(1)ARM微处理器内核的选择。
(2)系统的工作频率。
(3)芯片内存储器的容量(4)片内外围电路的选择。
什么是交叉编译环境:交叉编译环境是嵌入式开发过程中的一种重要技术,其只要特征是某机器中执行的程序代码不是本机编译生成的。
而是由另一台机器编译生成,一般把前者称为目标机,后者称为主机。
采用交叉编译环境的原因:多数嵌入式目标系统不能提供足够的资源供编译过程使用,因而只好将编译过程转移到高性能的主机中进行,这就需要在强大的PC上建立一个用于目标机的交叉编译环境,这是一个由编译器,链接器,解释器组成的综合开发环境。
2410A处理器电源模式:(1)NORMAL MODE:耗电最大,可以通过关闭具体控制器的时钟来节电。
(2)SLOW MODE(慢速模式):在此模式下可以没有内部PLL,耗电情况依赖于外部失踪频率。
CLK SLOW 的SLOW_BIT置1进入。
(3)IDLE_MODE(空闲模式)FCLK被关断,主要由于CPU core节电。
可以通过任何外部中断唤醒。
CLKCON【2】被置1进入。
(4)Power_oFF MODE(掉电模式)除了处理器被唤醒逻辑单元外,处理器不损耗任何电量,可以通过EINT[15:0]或RTC alarm interrupt唤醒系统。
内核的移植涉及如下工作:(1)编写针对特定处理器的代码(2)编写针对特定硬件品台的引导和初始化代码。
(3)编写针对特定外设的设备驱动程序代码。
Linux内核中包含的同步机制有原子操作、信号量、读写信号量、自旋锁、大内核锁、读写锁、读复制更新和顺序锁等。
周立功-ARM嵌入式系统基础教程课后习题复习资料

一思考与练习1、举出3个书本中未提到的嵌入式系统的例子。
答:红绿灯控制,数字空调,机顶盒2、什么叫嵌入式系统嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
3、什么叫嵌入式处理器?嵌入式处理器分为哪几类?嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。
嵌入式微处理器( , )嵌入式微控制器( , )嵌入式处理器( , )嵌入式片上系统( )4、什么是嵌入式操作系统?为何要使用嵌入式操作系统?是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。
其次,提高了开发效率,缩短了开发周期。
再次,嵌入式实时操作系统充分发挥了 32 位的多任务潜力。
第二章1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务是什么?项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4 个阶段。
识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。
提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。
执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展,分析项目偏差,采取必要措施以实现目标。
结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。
2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险?在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。
需求风险;时间风险;资金风险;项目管理风险3、何谓系统规范?制定系统规范的目的是什么?规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。
4、何谓系统规划?为何要做系统规划系统规划就是拟定一个开发进程,使项目在合理的进程范围中逐渐建构完成。
ARM嵌入式技术复习总结

第一章 1.嵌入式系统定义/概念:嵌入式系统就是嵌入到对象体中的专用计算机系统。
三要素:嵌入、专用、计算机。
嵌入性:嵌入到对象体系中,有对象环境要求,专用性:软、硬件按对象要求裁减,计算机:实现对象的智能化功能。
广义的讲,一个嵌入式系统就是一个具有特定功能或用途的计算机软硬件集合体,即以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用对功能。
可靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式系统发展的最高形式——片上系统(SOC)2. 嵌入式系统的特性:a.只执行特定功能;b.以微控制器、外围器件为中心,系统构成可大可小;c.有严格的时序性和稳定性要求;d.自动操作循环,等待中断控制;e.程序被烧写在存储芯片中。
(开发时应注意的a. 嵌入式系统是面向具体应用的产品b.嵌入式软件特征:具有实时性,高质量、高可靠,程序固化c. 需要软硬件开发工具和系统软件d. 需要应用专家参与开发e. 嵌入式系统分散而不可垄断)3.嵌入式系统的分类:a.按表现形式分(硬件范畴):芯片级嵌入(含程序或算法的处理器)、模块级嵌入(系统中的某个核心模块)、系统级嵌入(完整系统并有嵌入软件)b. 按实时性要求分(软件范畴):非实时系统(PDA)、实时系统(软实时系统:消费类产品。
硬实时系统:工业和军工系统)4. 嵌入式微处理器(发展趋势:经济性、微型化、智能化)主要分类: 微控制器(MCU)(51单片机)、微处理器(MPU)(ARM、PowerPC)、数字信号处理器(DSP)(一般用在快速执行算法,做控制比较困难)、混合处理器和片上系统(SOC)(结构简洁,体积小、功耗低,可靠性高,设计生产效率高。
Smart XA)、可编程片上系统(SOPC)5. 嵌入式系统组成:粗略划分:嵌入式处理器、外围设备、嵌入式操作系统(可选)、嵌入式应用软件。
稍细划分:嵌入式处理器、外围设备、驱动程序、嵌入式操作系统、应用接口、嵌入式应用软件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《嵌入式系统基础教程》复习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)正常用户模式(user);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。
2)在每种异常模式下都有一个对应的物理寄存器——程序状态保存寄存器SPSR。
当异常出现时,SPSR用于保存CPSR的状态,以便异常返回后恢复异常发生时的工作状态。
11.ARM的异常有哪几种,各进入何种工作模式?他们退出各采用什么指令?答:1)复位(Reset)异常(管理模式);2)未定义指令(undefined instruction)异常(未定义模式);3)软件中断(SWI)异常(管理模式);4)指令预取中止(Prefect 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 、ARM1115.ARM的寻址方式有哪些?各写一条说明。
答:1)立即寻址(1)ADD R0,R0,#1/*R0←R0+1*/ R0=R0+1(2)ADD R0,R0,#0x3f/*R0←R0+0x3f*/ R0=R0+0x3f 2)寄存器寻址ADD R0,R1,R2/*R0←R1+R2*/ R0=R1+R23)寄存器间接寻址(1)LDR R0,[R1]/*R0←[R1]*/;(2)STR R0,[R1]/*[R1]←R0*/;4)基址加偏址寻址(1)LDR R0,[R1,#4] ;R0←[R1+4](2)LDR R0,[R1,#4]!;R0←[R1+4]、R1←R1+4(3)LDR R0,[R1],#4;R0←[R1]、R1←R1+45)堆栈寻址(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位二进制的两倍表示,如果立即数记作<immediate>,8位常数记作immed_8,4位的循环右移值记作rotate_imm,有效的立即数是由一个8位的立即数循环右移偶数位得到。
因此有效立即数immediate可以表示成:<immediate>=immed_8循环右移(2×rotate_imm)17.指令ADR,ADRL、LDR、NOP是如何处理地址值读入到寄存器中的?答:ADR是将基于PC或者寄存器的地址值读入到寄存器的,ADR伪指令通常被替换成一条ADD指令或SUB指令来实现该ADR指令的功能。
而ADRL伪指令与ADR指令的最大不同之处是,它可以读取更大范围内的地址,而且被编译器替换成2条数据处理指令。
LDR将一个32位的立即数或者一个地址值读取到寄存器中。
大范围的地址读取。
NOP在汇编时将被替换成ARM中的空操作。
18.指令LDR R1,=0xFFF是如何将立即数0xfff读入到R1的?答:由于需要读取的寄存器的数据超过了MOV及MVN指令可操作的范围,编译器将该常数放在数据缓冲区中,同时用一条基于PC的LDR指令读取该常数。
LDR R1,[PC,offset_to_LPOOL].............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/STRSH21.在C语言程序如何调用汇编语言程序?答:为了保证程序调用时参数的正确传递,汇编程序的设计要遵守A TPCS。
在汇编程序中需要使用EXPORT伪操作来声明,使得本程序可以被其它程序调用。
同时,在C程序调用该汇编程序之前需要在C语言程序中使用extern 关键词来声明该汇编程序。
22.汇编语言程序调用C语言程序?答:为了保证程序调用时参数的正确传递,汇编程序的设计要遵守A TPCS。
在C程序中不需要使用任何关键字来声明将被汇编语言调用的C程序,但是在汇编程序调用该C程序之前需要在汇编语言程序中使用IMPORT伪操作来声明该C程序。
在汇编程序中通过BL指令来调用子程序。
23.在嵌入式C语言程序设计中为提高程序效率的相关设计技巧。
答:1)变量定义;2)参数传递;3)循环条件;4)以空间换时间;5)数学方法解决问题;6)使用位操作;7)嵌入汇编。
24.Linux操作系统的内核、文件系统、编程接口等。
答:Linux的内核也有很多种,例如普通的Linux内核、uClinux内核、RTLinux内核等25.嵌入式Linux操作系统的特点。
答:广泛的硬件支持、内核高效稳定、开放源码,软件丰富、优秀的开发工具、完善的网络通信和文件管理机制,26.Windows CE操作系统及其特点。
答:Windows CE是一个32位、多任务、多线程的操作系统,其开放式的设计结构适用于各种各样的设备,其主要特点:一、CE是一种压缩并可升级的软件系统,即使在小内存条件下,也能提供较高的性能。
二、CE具有便于携带的优点,可以运行于多种微处理器上三、CE拥有很好的电源管理系统,能延长移动设备的电池寿命四、CE支持标准的通讯系统,可以非常方便地访问Internet,发送和接受电子邮件,浏览万维网。
***程序解释AREA COPYBS,CODE,READONL Y ;定义一个代码段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,跳转到CWORDOCOPY LDMIA R0!,{R4-R11} ;加载R0指向的地址上的多字数据,保存到R4~R11中,R0值更新STMIA R1!,{R4-R11} ;将R4-R11的数据存储到R1指向的地址上,R1值更新SUBS R3,R3,#1 ;R3=R3-1BNE OCOPY ;若Z=0,跳转到OCOPYCWORD AND R2,R2,#7 ;R2=R2&7BEQ STOP ;若Z=1,跳转到STOPWCOPY LDR R3,{R0},#4 ;将R3中的字数据读入以R0为地址的存储器中,并将新地址R0+4写入R1 STR R3,{R1},#4 ;将R3中的字数据写入以R1为地址的存储器中,并将新地址R1+4写入R1SUBS R2,R2,#1 ;R2=R2-1BNE WCOPY ;若Z=0,跳转到WCOPYSTOP …………在程序中常常需要根据一定的参数选择执行不同的子程序。