嵌入式系统中大端和小端格式机油能不能混用用

嵌入式系统基础知识_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
文档贡献者
评价文档:
暂无相关推荐文档
嵌入式系统基础知识
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
大小:402.50KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢java 二进制数据大端转小端 - X-Man的修行路 - 51Testing软件测试网 51Testing软件测试网-中国软件测试人的精神家园
java 二进制数据大端转小端
& 10:54:28
/ 个人分类:
前段时间参与的一个项目中部分子系统是由C++实现的(文中将其称为系统A),过程中需要为系统A准备测试数据,该数据存储在MongoDB中,其中两个字段为二进制类型分别是字段F和字段G,这两个字段内容均包含两个long型一个float型一个float数组,用之前写好的代码往MongoDB中插入测试数据,A系统读取字段F和字段G时解析错误,经排查发现是由于java字节序与C++字节序格式不一致导致java语言插入的数据C++解析出的内容错误,无奈的是我不会C++,当时想到两个方案:1.用python写个脚本插入数据,python的字节序应该和C++一致的,但python不太熟,为了赶时间放弃此方案2.修改java代码,增加大端转小端的功能,觉得此方案花费时间不多,靠谱点!于是写了所谓的第一版,就是想通过将数据写入ByteArrayOutputStream中后调用其toArray方法转换为二进制数组后再将此数据顺序颠倒后插入中,现在想想此方法挺傻B的,单纯的认为转化下位置就OK了,写到一半觉得很麻烦,于是想到万能的,搜索后发现有人推荐使用ByteBuffer,但没找到合适的例子,于是研究了下ByteBuffer的方法终于成功了,字节序转换部分的代码示例如下:/**&* 字段包含两个long型(长度16),一个float型(长度4),一个长度为5的float数组(长度20)&* 即总长度=16+4+20&* 初始化一个ByteBuffer,长度为40,且字节序设置为小端,然后将要插入的数据放到ByteBuffer中*/ByteBuffer buffer=ByteBuffer.allocate(40).order(ByteOrder.LITTLE_ENDIAN);buffer.putLong(IID);buffer.putLong(GID);buffer.putFloat(similarity);buffer.putFloat(f[0]);buffer.putFloat(f[1]);buffer.putFloat(f[2]);buffer.putFloat(f[3]);buffer.putFloat(f[4]);//此方法并非真的清空,只是重新的位置设为0buffer.clear();//将ByteBuffer中的数据通过get方法写入一个二进制数据,将此数组插入数据库中即可buffer.get(gfresult);一、填空 1. 嵌入式系统在硬件设计、操作系统的选择、以及软件的设计上都要遵 循“面向应用、量体裁衣、够用为度”的原则。 2. 嵌入式处理器是嵌入式系统的核心部件,是控制、辅助系统运行的硬 件单元。 3. 试列举三种以上主流的通用处理器:ARM/StrongARM、MIPS、 PowerPC、X86、68K/Coldfire。 4. ARM 处理器共有 37 个寄存器
,其中包括 31 个通用寄存器和 6 个状 态寄存器。 5. ARM 处理器有 7 种不同的处理器模式,在每一种处理器模式下均有 一组相应的寄存器与之对应。即在任意一种处理器模式下,可访问的寄存器包括 15 个通用寄存器(R0~R14)、一至二个状态寄存器和程序计数器。 6. 寄存器 R13 在 ARM 指令中常用作堆栈指针。R14 也称作子程序连接 寄存器或连接寄存器 LR,当发生中断或异常时,对应的分组寄存器 R14_svc、 R14_irq、R14_fiq、R14_abt 和 R14_und 用来保存 R15 的返回值。 7. ARM 微处理器的在较新的体系结构中支持两种指令集:ARM 指令集 (指令长度为 32 位)和 Thumb 指令集(指令长度为 16 位)。 8. 寄存器 R15 用作程序计数器(PC)。该寄存器在 ARM 状态下,位[1:0] 为 0,位[31:2]用于保存 PC;在 Thumb 状态下,位[0]为 0,位[31:1]用于保存 PC。 9. 寄存器 R16 用作 CPSR(当前程序状态寄存器),CPSR 可在任何运行模 式下被访问。每一种运行模式下又都有一个专用的物理状态寄存器,称为 SPSR (备份的程序状态寄存器)。 10. Thumb 状态下的寄存器集是 ARM 状态下寄存器集的一个子集,程序 可以直接访问 8 个通用寄存器 (R7~R0) 、程序计数器 (PC) 、堆栈指针 (SP) 、 连接寄存器(LR)和 CPSR。 11. 每一条 ARM 指令包含的条件码位于指令的最高 4([31:28])位,每种 条件码可用两个字符表示,可以添加在指令助记符的后面和指令同时使用。 12. 函数的参数传递方法有两种:R0~R3 寄存器和堆栈。13. 处理器有五种地址空间:寄存器地址空间、程序存储器地址空间、内 部数据存储器地址空间、外部数据存储器地址空间、IO 地址空间。每种处理器 有其中的一种或几种地址空间。 14. 试列举三种以上常见的嵌入式操作系统:Xinu、uC/OS-II、eCOS、 LynxOS、pSOS+、QNX、VRTX、Linux、VxWorks、Nucleus、WinCE。 15. 某计算机的时钟频率为 400MHz,测试该计算机的程序使用 4 种类型 的指令。每种指令的数量及所需指令时钟数(CPI)如下表所示,则该计算机的 指令平均时钟数为 1.93;该计算机的运算速度约为 207.3 MIPS。 指令 指令数目 每条指令需时 类型 1 2 3 4(条) 00 钟数 1 2 4 816. 某幅图像具有 640× 480 个像素点,若每个像素具有 8 位的颜色深度, 则可表示 256 种不同的颜色,经 5:1 压缩后,其图像数据需占用 61440(Byte) 的存储空间。 17. 在一个单 CPU 的计算机系统中,采用可剥夺式(也称抢占式)优先级 的进程调度方案,且所有任务可以并行使用 I/O 设备。下表列出了三个任务 T1、T2、T3 的优先级、独立运行时占用 CPU 和 I/O 设备的时间。如果操作系 统的开销忽略不计,这三个任务从同时启动到全部结束的总时间为 58ms,CPU 的空闲时间共有 13ms。 务 任 优 先级 T 1 T 2 T 3 18. RS422 标准是平衡式的,传输一个信号用两条线,逻辑信号用两条线 的电平差表示,双线传输的主要优点是抗干扰能力增强。 19、一般而言,嵌入式系统的构架可以分为 4 个部分:处理器、 ( 器 ) 、输入/输出和软件,一般软件亦分为( 操作系统 存储 )和应用 低 中 5ms 高 每个任务独立运行时所需的时间 对每个任务: 占用 CPU 10ms,I/O 13ms,再占用 CPU软件两个主要部分。 20、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为( 嵌入式 微控制器 ) ,嵌入式 DSP, ( 嵌入式微处理器 ) 以及片上系统。 21、操作系统是联接硬件与应用程序的系统程序,其基本功能有进程管理、 ( 进程间通信 )( 、 内存管理 ) 、I/O 资源管理。 分 )和软 硬实时操作系统 22、 从嵌入式操作系统特点可以将嵌入式操作系统分为实时操作系统和( 时操作系统 实时系统。 23、内核负责管理各个任务,或者为每个任务分配 CPU 时间,并且负责任务之 ) ,其中实时系统亦可分为( 间的( 一般是指( ( (通信) ,内核的基本服务是( 宿主机/目标机方式 ) 。 分开 PC 机或者台式机 )的内核架构。 3任务调度) 。24、嵌入式开发一般采用()方式,其中宿主机 ) ,ARM920T 采用25、哈佛体系结构数据空间和地址空间( 哈佛体系 5 26. ARM7TDMI 采用( )级流水线。 分时)级流水线结构,ARM920TDMI 采用27 .按操作系统的分类可知,Dos 操作系统属于顺序执行操作系统,Unix 操作系 统属于( 操作系统。 28、ARM7TDMI 中,T 表示支持 16 位 Thumb 指令集,D 表示( 试 ) ,M 表示内嵌乘法器 Multiplier,I 表示( 嵌入式 ICE 在片可调 ) ,支 )操作系统,VxWorks 属于( 实时嵌入式 )持在线断点和调试。 30.ARM7TDMI 与 ARM720T 的一个重要区别在于后者有______、______。 (存储空间管理单元(MMU)和 8K Cache 片内缓存(提高 CPU 性能) ) 31.ARM 芯片主要封装有______、______、______、______、______、______ 等形式。 (QFP、TQFP、PQFP、LQFP、BGA、LBGA) 33.ARM 体系结构可用两种方法存储字数据,具体为_____、______。 (大端格式和小端格式) 35.ARM 微处理器在较新的体系结构中支持两种指令集:______、______。 (ARM 指令集、Thumb 指令集) 36. ARM 处理器有 9 种基本寻址方式, 分别是: ______、 ______、 ______、 ______、 ______、______、______、______、______。 (寄存器寻址、立即寻址、寄存器 偏移寻址、寄存器间接寻址、基址寻址、多寄存器寻址、堆栈寻址、块拷贝寻址、 相对寻址) 37.ARM 指令集可以分为 6 类,分别是:______、______、______、______、 ______、______。 (跳转指令、数据处理指令、程序状态寄存器(PSR)传输指令、Load/Store 指 令、协处理器指令、异常中断产生指令) 38. ARM 的汇编程序中, 在 有如下几种伪指令: _____、 ______、 ______、 ______、 ______。 (符号定义伪指令、数据定义伪指令、汇编控制伪指令、宏指令、其他伪指令) 39. 汇编语言与 C/C++的混合编程通常有以下几种方式: _____、 ______、 ______。 (在 C/C++代码中嵌入汇编指令;从汇编程序中访问 C 程序变量;汇编程序、 C/C++程序间的相互调用) 40.ARM C/C++编译器支持和产生以下几种格式的文件:_____、____、____、 ______、______。 (filename.c 源文件、filename.h 头文件、filename.o 目标文件、filename.s 汇编代 码文件、filename.lst 列表文件) 41.在线仿真包括 3 个过程:_____、______、______。 (装载映像文件、程序执行、查看寄存器和内存空间) 45.JTAG 调试接口的结构由____、______、______及______组成。 (测试访问端口 TAP(Test Access Port)控制器、旁路(bypass)寄存器、指令 寄存器和数据寄存器、ARM 架构处理器) 46.ARM 嵌入式系统主要由______、______和______构成。 (嵌入式处理器、相关支撑硬件、嵌入式软件系统) 47.常用的嵌入式外围设备有______、______和______三类。 (存储设备、通信设备、显示设备) 48.总线通常包括______、______和______。 (数据总线、地址总线、控制总线) 50.嵌入式操作系统的调试一般包括:_________调试和_________调试。 (操作系统、应用程序) 51.电子设备电源系统包括:______电源和______电源。 (交流、直流) 52.ARM 处理器工作状态主要有______、______和______模式。 (运行、睡眠、空闲) 53.IC 芯片工作一般供电电压有:______、______、______、______。 (5V、3.3V、2.5V、1.8V) 54.布线时,电源线、信号线、地线线宽大小一般为:______>______>______。 (地线、电源线、信号线) 55.作为高速缓存的存储器主要有______、______和______。 (SRAM、DRAM、Flash ROM) 56.动态 RAM 有______和______。 (SDRAM、DDR) 57.ARM 有从外部______启动的外启动和从片上______启动的内启动两种启动 方式。 (SDRAM、ROM) 58. Nand-Flash 闪存每个块的最大擦写次数是______万次,而 Nor 的擦写次数 是______万次。 (100、10) 59.MTD 核心层分为:______层、______层和______层。 (用户模块接口、MTD 抽象、MTD 设备驱动模块) 60.Nor-Flash 常用于存放______,而 Nand-Flash 存放______。 (系统代码、用户信息) 61.Linux 设备可分为______、______和______三种。 (字符设备、块设备、网络设备) 62.GPIO 支持______、______和______三种数据传输方式。 (中断、查询、DMA) 63.GPIO 驱动可以以两种方式编译:一种是______,另一种是______。 (静态编译进内核、编译成模块动态加载) 64.ARM 内核支持 7 种中断,分别是:_____、_____、_____、_____、______、 ______和______。 (复位、未定义指令、软件中断、指令预取中止、数据中止、外部中断请求、快 速中断请求) 66.ARM 硬件中断主要有:______、______、______、______等 4 种。 (定时器中断、串口输入/输出中断、接口中断、链路中断) 68.按复位信号是否与时钟信号同步,可分为:______复位和______复位。 (同步、异步) 71.A/D 转换可分为 4 个阶段,分别是:______、______、______、______。 (采样、保持、量化、编码) 72.黑白 LCD 每像素 2 位相当于______级灰度,每像素 4 位相当于______级灰 度;彩色液晶屏 LCD 每像素 8 位相当于______级颜色。 (4、16、256) 75.液晶像素的两电极是:______电极和______电极。 (行、列) 76.常用键盘接口可分为______、______和______,其中 PC 键盘上常用的是 ______。 (独立式按键接口、行列式接口、专用芯片式接口,行列式接口) 77.软件实现按键接口设计的方式有:______和______。 (中断、查询) 78.从广义的角度来说,数据通信方式可以分为______和______两大类,相应的 通信线路分别称为______和______。 (并行通信、串行通信;并行总线、串行总线) 79.串行通信的两种基本工作方式为:______和______。标准异步串行通信 (UART)接口有:______、______和______。 (异步串行通信、同步串行通信;RS-232C、RS-422、RS-485) 80.UART 串行通信接口标准是__________,它采用_______逻辑来进行电平传 输。 (RS-232C、负) 81.I2C 采用两根 I/O 线是:______和______。 (SCL 串行时钟线、SDA 串行数据线) 82.I2C 数据传输速率标准模式下为_____bps,快速模式下为_____bps,高速模 式下为______bps。 (100K、100K、3.4M) 83.串行存储器一般具有两种写入方式:______和______。 (字节写入方式、页写入方式) 84.以太网接口电路主要由______和______两大部分构成。 (MAC 控制器、物理层接口) 86.以太网口的复位包括硬件复位和软件复位,第一次复位必须是______。 (硬件复位) 87.USB 系统包括______、______和______三部分。 (USB 互连、USB 从端口、USB 主端口) 89.USB1.1 支持______bps 的传输速率,2.0 标准支持______bps 的传输速率。 (1.5~12、120~240) 90.USB 支持______、______、______和______等四种传输模式。 (同步、中断、控制、批量) 92.每个以太网口上都有一个唯一的______位 MAC 地址与之对应。 (48) 95.Boot-loadere 两种不同的操作模式是______模式和______模式。 (启动加载、下载) 96. Boot-loader 通过串口与 PC 进行传输, 传输协议通常是______、 _____和_____ 协议之一。 (xmodem、ymodem、zmodem) 97.Boot-loader 目标代码是*. ______格式的文件。 (bin) 98. ARM Linux 移植主要工作是把编译生成的______、______和______,并烧 写到 Flash 中。 (Boot-loader、Kernel Image、Root File) 99.在 PC 上编译 ARM 运行的程序,需要______编译器。 (交叉) 100.Linux 移植类型包括基于______的移值和基于______的移值。 (处理器、平台) 101.建立 ARM 编译环境的主要开发工具有______、______和______。 (binutils、gcc、glibc) 102.Linux 支持多种文件系统,包括:______、______、______和______。 (Romfs、Cramfs、JFFS、JFFS2) 103.JFFS2 在 Linux 中一种是作为______,另一种是作为______在系统启动后 被挂载。 (根文件系统、普通文件系统) 106. 常用的 GUI 图形开发界面主要有______、 ______、 ______、 ______、 ______ 和______。 (X Window、MicroWindows、OpenGUI、Qt/Embedded、MiniGUI、PicoGUI) 113.TFTP 简单文件传输协议基于______传输层协议。 (UDP) 119.传输语音的格式一般有:______和______。 (IIS 总线格式、MSB-Justified 格式) 120.IIS 总线传输方式一般有:______、______和______。 (正常传输模式、DMA 传输模式、发送/接收模式) 121. 标准 VGA 显示器接口是______针______型接口, 由______、 ______、 ______ 三色模拟信号线和______同步、______同步两个数字信号构成。 (5、D、R、G、B、行、场) 128、ARM 处理器中断有两种处理模式,分别为快速中断模式和外部中断模式。 129、嵌入式系统中按照总线的传送的信息类型,可以分为数据总线、地址总线 和控制总线 131、 ARM 微处理器有 7 种工作模式, 它们分为两类 非特权模式 、 特权模式 。其中用户模式属于 非特权模式 132、ARM 支持两个指令集, ARM 核因运行的指令集不同,分别有两个状态 ARM 、 Thumb ,状态寄存器 CPSR 的 T 位反映了处理 器运行不同指令的当前状态 133、ARM 核有多个寄存器,其中大部分用于通用寄存器,有小部分作为专用 寄存器, R15 寄存器用于存储 PC,R13 通常用来存储 SP 134、ARM 微处理器复位后,PC 的地址通常是 0x0 ,初始的工作模式是 Supervisor 。 135、计算机有 CISC 和 RISC 两种类型,以 ARM 微处理器为核心的计算机属 于 RISC、 类型,其指令长度是 定长的 。 139、ARM 处理器有两种总线架构,数据和指令使用同一接口的是 冯诺依 曼 ,数据和指令分开使用不同接口的是 哈佛结构 140.目前,嵌入式处理器种类繁多。按照类型大致可以分为嵌入式微处理器 EMPU 、嵌入式微控制器 MCU 、嵌入式数字信号处理器 EDSP 和片上可编程系统 SOPC 。 141.BootLoader 就是在 操作系统内核 运行前执行的一小段程序,用于 引导加载程序 以及 系统内核 。 142.BootLoader 是依赖于硬件平台的,不同的 嵌入式处理器 和 嵌入式系统 需要不同的 BootLoader 来引导。 145.按照系统对相应时间的敏感程度,嵌入式操作系统可以分为三类, 硬实 时 系统、 软实时 系统和 非实时 系统。 146.VxWorks 操作系统是美国 WindRiver 公司于 1983 年设计开发的 一种嵌入式实时操作系统(RTOS) ,是嵌入式开发环境的关键组成部分。 147. Windows CE 是微软旗下的一个 32 位嵌入式操作系统。 Windows 在 CE 中,C 代表 袖珍(Compact) 、消费(Consumer) 、通信能力(Connectivity) 和伴侣(Companion) ,E 代表 电子产品(Electronics) 。目前 最新的 Windows CE 为 Windows CE 6.0 。 148. μC/OS-II 是一种 开源但不免费 的实时操作系统,具有 可剥 夺实时 内核。 150.RISC 以 CISC 为基础,重点优化 计算机结构 ,使 其更加简单合理地提高运算速度。 152.ARM7 内核为低功耗的 32 位 RISC 处理器,其采用 冯?诺依曼 体系结构,数据和指令使用同一条总线。ARM7 内核有一条 3 级 流水线, 执行 ARMv4 指令集,最适合用于对价位和功耗要求较高的消费类应 用。 153、 ARM10E 内核为 32 位 RISC 处理器, 具有高性能、 低功耗的特点。 ARM10E 采用了新的体系结构,与同等的 ARM9 器件相比较,在同样的时钟频 率下,性能提高了 近 50% 。 155、 ARM RealView MDK 是 ARM 公司和深圳英倍特公司合作开了 本土化的 ARM 开发平台。 156、嵌入式系统是以应用中心,以计算机技术为基础,软件硬件可裁剪,适应 应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 157、嵌入式系统软件的要求与台式机有所不同,其特点主要包括:软件要求固 化存储;软件代码要求高效率、高可靠性;系统软件有较高的实时性要求。 158、ARM9 的工作模式有 7 种,包括:用户模式、系统模式、管理模式、中止 模式、未定义模式、IRQ 模式、FIQ 模式。其中除用户模式外的其他 6 种模式 称为特权模式。 159、 ARM 处理器中 CPSR 和 SPSR 的中文名称分别为:当前程序状态寄存器和 保存程序状态寄存器。 160、S3C2410 芯片外部寻址空间是 1G,被分成___8____个存储块,每块 __128__MB。SDRAM 存储器应连接到第 ___6 或 7__个存储块。 161、S3C2410 涉及 DMA 的操作模式有三类:DMA 请求模式、DMA 传输模式 和_DMA 服务模式。 162、 S3C2410 芯片共有____8____个 I/O 端口,每个端口都有相应的控制寄存器 和数据寄存器,其中控制寄存器的主要功能是设置_I/O 引脚的功能_,数据寄存 器的功能是__从寄存器读取数据或者向寄存器写入数据__ 166、嵌入式系统中,微处理器控制 I/O 端口或部件的数据传送方式有 2 种:_ 中断方式 和_程序查询方式 。 167、中断优先级通常用硬件电路实现,较常用的中断优先级电路有两种:_菊 花链 中断优先级电路和_中断优先级编码 电路。 170、S3C2410 芯片共有 117 个输入输出引脚,分属于 8 个 I/O 端口。 172、在嵌入式系统设计过程中,需求分析包括:功能性需求分析和非功能性需 求分析。 173、ARM 字数据存储格式有:大端格式和小端格式。 175、RS-232C 的帧格式由四部分组成,包括:起始位、数据位、奇偶校验位和 停止位。 176、I/O 接口电路数据传送方式有:查询、中断、DMA、I/O 通道和 I/O 处理机 方式。 177、I/O 接口编址方式有两种,分别是:统一编址和独立编址。 178、Boot loader 主要功能是:系统初始化、加载和运行内核程序。 180、嵌入式系统的设计过程包括:需求分析、规格说明、体系结构设计、构件 设计、系统集成和系统测试。 181、ARM 系列微处理器支持的边界对齐格式有:字节对齐、半字对齐和字对 齐。 182、RAM 存储器有两种,分别是:SRAM 和 DRAM。 183、嵌入式操作系统的内核构成包括:系统初始化、多任务管理和内存管理。 184、在宿主机上使用编译器软件将嵌入式应用。嵌入式操作系统编译成为可以 在目标机上运行代码的过程,称为交叉编译,而采用的编译器称为交叉编译 器。 186、.ARM 体系结构所支持的最大寻址空间为 4GB; 二、 选择 1、下面哪种操作系统不属于商用操作系统。( B A. windows xp A. 内核精简 A. Reset B. Linux B. 专用性强 B. 数据中止 C. VxWorks ( C 2. 下面哪点不是嵌入式操作系统的特点。) D. WinCE ) D. 高实时性 A D. IRQ D ) )C. 功能强大 C. FIQ4. 在嵌入式 ARM 处理器中,下面哪种中断方式优先级最高。( 5. NAND FLASH 和 NOR FLASH 的区别正确的是。 ( A. NOR 的读速度比 NAND 稍慢一些 C. NAND 的擦除速度远比 NOR 的慢 8、以下哪种方式不属于文件系统的格式 (A) FAT (C) NTFS (A) 串行通信方式B. NAND 的写入速度比 NOR 慢很多 D.大多数写入操作需要先进行擦除操作 。( B ) (B)DOS (D)EXT B ) (B)不可热拨插10、下面哪个特点不属于 USB 设备的特点。((C) 分 HOST、DEVICE 和 HUB (D)通信速率比 RS232 快 11、下面不符合嵌入式操作系统特点的是(B) A、实时性 B、不可定制 C、微型化 D、可移植性 12、嵌入式处理器指令的执行周期包括(D) A.启动 运行 退出 B.取指令 指令译码 执行指令 存储 C.启动 运行 挂起 退出 D.取指令 指令译码 执行指令 13.Embedded Visual Studio 是(B) A.嵌入式硬件开发工具 B.嵌入式软件开发工具 C.嵌入式调试工具 D.嵌入式编译工具 14.JTAG 的引脚 TCK 的主要功能是(C) A.嵌入式硬件开发工具 B.嵌入式软件开发工具 C.嵌入式调试工具 D.嵌入式编译工具 15、以下叙述中,不符合 RICS 特征的是(B ) A. 指令长度固定,种类少 B. 寻址方式丰富,指令功能尽量增强 C.设置大量通用寄存器,访问存储器指令简单 D. 选取使用频率较高的指令 16、在下列 ARM 处理器模式中, (D)模式有自己独立的 R8-R14 寄存器。 A.系统模式 B.终止模式 C.中断模式 D.快速中断模式 17、按照 ARM 过程调用标准(APCS) ,栈指针使用(B)寄存器 A.R0 B.R13 C.R14 D.R15 18、嵌入式系统应用软件一般在宿主机上开发,在目标机上运行,因此需要一个 (B)环境。 A.交互操作系统 B.交叉编译 C.交互平台 D.分布式计算 选择题:下列哪个不是合法的立即数:0xFF, 0x104, 0x39C00, 0x1FE800 23、ARM 分支指令 选择题:下列哪条指令是带状态切换的跳转指令 B BL BX BLX 24、已知有变量 data1 定义如下: (c) Union data { C F }data1; 则变量 data1 所占的内存存储空间可表示为。 A.sizeof(int) B.sizeof(char) C.sizeof(float) D.sizeof(int)+ sizeof(char)+ sizeof(float) 25、以下说法不正确的是(B ) 。 A、任务可以有类型说明 B、任务可以返回一个数值 C、任务可以有形参变量 D、任务是一个无限循环 26、下列描述不属于 RISC 计算机的特点的是(C) 。 A.流水线每周期前进一步。 B.更多通用寄存器。 C.指令长度不固定,执行需要多个周期。 D.独立的 Load 和 Store 指令完成数据在寄存器和外部存储器之间的传输。 27 存储一个 32 位数 0x2168465 到 2000H~2003H 四个字节单元中, 若以大端模 式存储,则 2000H 存储单元的内容为( D) 。 A、0x21 B、0x68 C、0x65 D、0x02 29、 RS232-C 串口通信中,表示逻辑 1 的电平是(D ) 。 A、0v B、3.3v C、+5v~+15v D、-5v~-15v 30、 ARM 汇编语句“ADD R0, R2, R3, LSL#1”的作用是(A) 。 A. R0 = R2 + (R3 && 1) B. R0 =( R2&& 1) + R3 C. R3= R0+ (R2 && 1) D. (R3 && 1)= R0+ R2 31、IRQ 中断的入口地址是( C) 。FIQ 的入口地址为 0x0000001C A、0x B、0x C、0x D、0x、 S3C2420X I/O 口常用的控制器是(D) 。 (1)端口控制寄存器(GPACON-GPHCON) 。 (2)端口数据寄存器(GPADAT-GPHDAT) 。 (3)外部中断控制寄存器(EXTINTN) 。 (4)以上都是。 33、 实时操作系统中,两个任务并发执行,一个任务要等待其合作伙伴发来信 息,或建立某个条件后再向前执行,这种制约性合作关系被成为(A) 。 A. 同步 B. 互斥 C. 调度 D. 执行 34、 和 PC 系统机相比嵌入式系统不具备以下哪个特点( C) 。 A、系统内核小 B、专用性强 C、可执行多任务 D、系统精简 35、 、ADD R0,R1,#3 属于(A)寻址方式。 A. 立即寻址 B. 多寄存器寻址 C. 寄存器直接寻址 D. 相对寻址 36、GET 伪指令的含义是( A) A. 包含一个外部文件 B. 定义程序的入口 C. 定义一个宏 D. 声明一个变 量 37、存储一个 32 位数 0x876165 到 2000H~2003H 四个字节单元中,若以小端模 式存 储,则 2000H 存储单元的内容为( C) 。 A、0x00 B、0x87 C、0x65 D、0x61 39、若 R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令 LDR R0 , [R1,#8]!后 R0 的值为(D ) 。 A. 0x2000 B. 0x86 C. 0x2008 D. 0x39 40、寄存器 R13 除了可以做通用寄存器外,还可以做(C ) 。 A、程序计数器 B、链接寄存器 C、栈指针寄存器 D、 基址寄存器 41、FIQ 中断的入口地址是( A) 。 A、0x0000001C B、0x C、0x D、0x、ARM 指令集和 Thumb 指令集分别是(D )位的。 A. 8 位,16 位 B. 16 位,32 位 C. 16 位,16 位 D. 32 位,16 位 43、ARM 寄存器组有(D )个寄存器。 A、7 B、32 C、6 D、37 44、若 R1=2000H,(2000H)=0x28,(2008H)=0x87,则执行指令 LDR R0 , [R1,#8]!后 R0 的值为(D ) 。 A. 0x2000 B. 0x28 C. 0x2008 D. 0x87 45、寄存器 R15 除了可以做通用寄存器外,还可以做( A) A. 程序计数器 B. 链接寄存器 C. 堆栈指针寄存器 D. 基址寄存器 46、嵌入式系统有硬件和软件部分构成,以下(C)不属于嵌入式系统软件。 A. 系统软件 B. 驱动 C. FPGA 编程软件 D. 嵌入式中间件 47、假设 R1=0x31,R2=0x2 则执行指令 ADD R0,R1,R2 LSL #3 后,R0 的值 是( C) A. 0x33 B. 0x34 C. 0x39 D. 0x38 48、和 PC 机系统相比下列哪个不是嵌入式系统独具的特点(C) A、系统内核小 B、专用性强 C、可执行多任务 D、系统精简 50 、Cache 用于存放主存数据的部分拷贝,主存单元地址与 Cache 单元地址之 间的转换用(A)完成。 A.硬件 B. 软件 C. 用户 D. 程序员 52、每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是 (D) 。 A. 嵌入式 Linux 提供了完善的网络技术支持; B. ?CLinux 是专门为没有 MMU 的 ARM 芯片开发的; C. ?C/OS-Ⅱ操作系统是一种实时操作系统(RTOS) ; D. WinCE 提供完全开放的源代码。 53、下列关于存储管理单元(MMU)说法错误的是(B) 。 A. MMU 提供的一个关键服务是使各个任务作为各自独立的程序在其自己的私 有存储空间中运行。 B. 在带 MMU 的操作系统控制下,运行的任务必须知道其他与之无关的任务的 存储需求情况,这就简化了各个任务的设计。 C. MMU 提供了一些资源以允许使用虚拟存储器。 D. MMU 作为转换器,将程序和数据的虚拟地址(编译时的连接地址)转换成实 际的物理地址,即在物理主存中的地址。 54、下列 CPSR 寄存器标志位的作用说法错误的是(D) 。 A. N:负数 B. Z: 零 C. C: 进位 D. V: 借位 55、S3C2410X 处理器为用户进行应用设计提供了支持多主总线的 IIC 接口。处 理器提供符合 IIC 协议的设备连接的串行连接线为(C) 。 A. SCL 和 RTX B. RTX 和 RCX C. SCL 和 SDA D. SDA 和 RCX 56、RQ 中断的优先级别是( D ) 。 A. 1 B. 2 C. 3 D. 4 57、LDR R2,[R3,#128] 的寻址方式是( C ) 。 A. 寄存器寻址 B. 寄存器移位 C. 变址寻址 D. 间接寻址 58、S3C2410 有( B )个 USB 接口。 A. 1 B. 2 C.3 D. 4 59、ARM 处理器的工作模式有( C )种。 A. 5 B.6 C. 7 D.8 60.下面那个不是嵌入式操作系统的特点( B ) 。 A.高了系统的可靠性 B.体积庞大 C.系统配置灵活 D. 充分发挥了 32 位 CPU 的多任务 潜力 62.下面那个不是 Windows CE 嵌入式操作系统的特点( D ) 。 A.继承了传统 Windows 图形界面 B.灵活的电源管理功能 C.优秀的线程响应能力 D.极小的系统内核 63.下面那个不是嵌入式 Linux 操作系统的特点( D ) 。 A.源代码公开 B.遵循 GPL 协议 C.高性能、可裁剪的内核 D.具有 Windows 风格的图形界面 64.以下哪个表述不正确( D ) 。 A.ARM 是一个公司的名称 B.ARM 是对一类微处理器的通称 C.ARM 是一种技术的名字 D.ARM 是一款芯片的名称 65.下列哪个不是 RealView MDK 开发环境的特点( D ) 。 A.Windows 风格 B.兼容的 Keil μVision 界面 C.全面的 ARM 处理器支持 D.体积庞大 66、下面关于哈佛结构描述正确的是( A ) 。 A、程序存储空间与数据存储空间分离 B、存储空间与 IO 空间分离 C、程序存储空间与数据存储空间合并 D、存储空间与 IO 空间合并 67、下面哪一种工作模式不属于 ARM 特权模式( A ) 。 A、用户模式 式 68、ARM9TDMI 的工作状态包括( A、测试状态和运行状态 C、就绪状态和运行状态 D ) 。 B、挂起状态和就绪状态 D、ARM 状态和 Thumb 状态 C ) 。 B、管理模式 C、软中断模式 D、FIQ 模69、指令“LDMIA R0!, {R1, R2, R3, R4}”的寻址方式为( A、立即寻址 C、多寄存器寻址B、寄存器间接寻址 D、堆栈寻址70、对寄存器 R1 的内容乘以 4 的正确指令是( C )。 A、LSR R1,#2 C、MOV R1,R1, LSL #2 B、LSL R1,#2 D、MOV R1,R1, LSR #271、下面指令执行后,改变 R1 寄存器内容的指令是( D )。 A、TST R1,#2 C、CMP R1,#2 B、ORR R1,R1,R1 D、EOR R1,R1,R1 D )72、下面哪一种功能单元不属于 I/O 接口电路。 ( A、USB 控制器 C、以太网控制器B、UART 控制器 D、LED73、下面哪个操作系统是嵌入式操作系统。 B ) ( A、Red-hat LinuxB、?CLinuxC、Ubuntu LinuxD、SUSE Linux74、使用 Host-Target 联合开发嵌入式应用, ( A、宿主机 C、目标机B )不是必须的。B、银河麒麟操作系统 D、交叉编译器 D ) 。 B、GPS 接收机 D、“天河一号”计算机系统75、下面哪个系统不属于嵌入式系统( A、MP3 播放器 C、“银河玉衡”核心路由器76. RS232-C 串口通信中,表示逻辑 1 的电平是( D ) A、0V B、3.3V C、+5V~+15V D、-5V~-15V77. 下列不属于 RISC 计算机特点的是(C) 。 A、流水线每周期前进一步。 B、 更多通用寄存器。C、指令长度不固定,执行需要多个周期。 D、独立的 Load 和 Store 指令完成数据在寄存器和外部存储器之间的传输。 78. 存储一个 32 位数 0x2168465 到 H 四个字节单元中, 若以大端模 式存储,则 20000H 存储单元内容为(D) A、 0x21 B、 0x68 C、0x65 D、0x0279. S3C2410 I/O 口常用的控制器是(D) A、端口控制寄存器(GPACON-GPHCON) B、端口数据寄存器(GADAT-GPHDAT) C、外部中断控制寄存器(EXTINTN) 。 D 、以上都不是 80. 寄存器 R13 除了可以做通用寄存器外,还可以做(C) A、程序计数器 存器 81. ARM 指令集和 Thumb 指令集分别是(D)位的。 A、8 位,16 位 位,16 位 82. 寄存器 R15 除可做通用寄存器外,还可以做(A) B、16 位,32 位 C、16 位,16 位 D、32 B、 链接寄存器 C、栈指针寄存器 D、基址寄 A、程序计数器 器B、链接寄存器C、栈指针寄存器D、基址寄存83、S3C2410 芯片的寄存器组有(D)个寄存器 A、7 B、32 C、6 D、3784. 下列 CPSR 寄存器标志位的作用说法错误的是(D) A、N:负数 B、Z:零 C、C:进位 D、V:借位85、S3C2410 提供的符合 IIC 协议的设备连接串行连接线为(C) A、SCL 和 RTX 和 RCX 86、S3C2410 有(B)个 USB 接口 87、USB 接口移动硬盘最合适的传输类型为( B ) 。 A、控制传输 B、批量传输 C、中断传输 D、等时传输 B、RTX 和 RCX C、SCL 和 SDA D、SDA88、在嵌入式系统设计中,嵌入式处理器选型是在进行( C )时完成。 A、需求分析 B、系统集成 C、体系结构设计 D、软硬件设计89、下面哪一类嵌入式处理器最适合用于工业控制( B ) 。 A、嵌入式微处理器 B、微控制器 C、DSP D、以上都不合适 B ) 。90、关于 ARM 子程序和 Thumb 子程序互相调用描述正确的是(A、系统初始化之后,ARM 处理器只能工作在一种状态,不存在互相调用。 B、只要遵循一定调用的规则,Thumb 子程序和 ARM 子程序就可以互相调 用。 C、只要遵循一定调用的规则,仅能 Thumb 子程序调用 ARM 子程序。 D、只要遵循一定调用的规则,仅能 ARM 子程序调用 Thumb 子程序。 91、关于 ARM 处理器的异常的描述不正确的是( A、复位属于异常 C、所有异常都要返回 93、USB 总线采用的通信方式为( A、轮询方式 方式 B、中断方式 C ) 。B、除数为零会引起异常 D、外部中断会引起异常 A ) 。 C、DMA 方式 D、 通道 I/O 94、嵌入式系统最常用的数据传送方式是( A、查询 机 B、中断B ) 。 C、DMA D、 处理 I/O95、?Clinux 与标准 Linux 最大的区别在于( B ) 。 A、文件系统 B、内存管理 C、任务调度算法 D、应用开发模式 96、嵌入式操作系统一般通过( 性的问题。 A、使用可定制的操作系统A )手段来解决代码体积与嵌入式应用多样B、将操作系统分布在多个处理器上运行 C、增大嵌入式设备的存储容量 D、使用压缩软件对操作系统进行压缩 97、无符号二进制数左移一位,则数值( A ) 。 A、增大一倍 B、减小一倍 C、增大 10 倍 D、不变 98、执行两个补码数的减法时,对产生溢出的正确叙述为( D ) 。 A、结果的最高位有借位则产生溢出 B、结果的符号位为 0 则产生溢出 C、结果的符号位为 1 则产生溢出 D、结果与被减数的符号位相反,但与减数的符号位相同,则溢出 99、遵循“程序存储与控制原理”的计算机属于( ①A )机。按其思想,计算机 将要执行的程序(包括代码和数据)应安排在计算机的( ②B )部件中。 ①A 冯.诺依曼 B 图灵 C 规约 D 数据流 ②A 硬盘 B 内存 C 寄存器 D 端口 100、以下对于 RISC 机器来说正确的是( D )。 A、指令编码不等长 B、寻址方式多 C、不能访问存储器 D、运算类指令只使用寄存器 101、某微处理器的结构之所以称为超标量结构,是因为该微处理器( B ) 。 A、不仅能进行 32 位运算,也能进行 64 位运算 B、内部含有多条指令流水线和多个执行部件 C、数据传输速度很快,每个总线周期最高能传送 4 个 64 位数据 D、芯片内部集成的晶体管数超过 100 万个,功耗很大 102、微处理器地址总线宽度为 32 位,则其内部数据总线的宽度( D ) 。 A、16 位 B、32 位 C、64 位 D、与地址总线没有必然联系 103、下面关于 Cache 的描述中正确的是(A) 。 A、Cache 中存放的是主存储器中一部分信息的映像 B、用户可以直接访问 Cache C、片内 Cache 要比二级 Cache 的容量大得多 D、二级 Cache 要比片内 Cache 的速度快得多 104、通常把用符号表示计算机指令的语言称为( ①B ) ,计算机能真正执行的 是(②A ) 。 A、机器语言 B、汇编语言 C、高级语言 D、仿真语言 105、计算机系统中的四级存储器,其存取速度从高到低的顺序是( C ) 。 A、主存储器,Cache,寄存器,辅存 B、快存,主存储器,寄存器,辅存 C、寄存器,Cache,主存储器,辅存 D、寄存器,主存储器,Cache,辅存 106、 计算机通常用 MB (兆字节) 作为主存容量的计量单位, 这里 1MB 等于 B ) ( 字节。 A、210 B、220 C、230 D、106 11 程序计数器 PC 通常用于存放( D ) 。 A、数据 B、指令 C、正在执行的指令地址 D、待取指的指令地址 107、微处理器内部标志寄存器的主要作用是( C ) 。 A、检查当前指令执行的正确与否 B、纠正当前指令执行的结果 C、产生影响或控制某些后续指令所需的标志 D、决定 CPU 是否继续工作 108、指令寻址方式通常是指寻找( B )的方式。 A、操作码 B、操作数 C、I/O 端口 D、内存单元 109、以下主存设计中属于计算机系统结构考虑的是( C ) 。 A、采用 MOS 还是 TTL B、采用单体还是多体交叉 C、容量和编址方式 D、频宽 110、总线是一种( ① ,由系统中各部件所共享,在( ② A) C)的控制之下将 信息准确地传送给(③ 。 E) A、公共信号通道 B、专用地信号连线 C、主设备 D、中断源 E、从设备 F、信号源 111、在外设接口中,状态寄存器的作用是存放(C) 。 A、CPU 给外设的命令 B、外设给 CPU 的命令 C、外设的工作状态 D、CPU 的工作状态 112、为提高主存的访存速度和性价比,应(A) A、引入 cache 存储器 B、直接提高主存速度 C、引入虚拟存储器 D、主存采用多体结构 113、下面关于总线的叙述中,错误的是(C)。 A、总线位宽指的是总线能同时传送的最大数据位数 B、总线标准是指总线传送信息时应遵守的一些协议与规范 C、PCI 总线不支持突发成组传送 D、总线带宽是指单位时间内总线上可传送的最大数据量 114、计算机系统中,一个外设的接口至少应具备一个(①A)端口,最多可以 有(②D)个端口。 ①A、数据 B、状态 C、控制 D、其他 ②A、1 B、3 C、6 D、不定 115、若定时/计数器 8253 某通道的输入时钟为 1MHz,则该通道在 BCD 码计数 方式下的最大定时时间为( B )毫秒。 A、1 B、10 C、100 D、、下列各种方式的数据传输过程中,无需 CPU 执行指令的方式是( C )传 输。 A、无条件 B、查询 C、DMA D、中断 117、74138 译码器通常用于产生片选信号,其译码输入端应与系统的( A ) 总线相连。 A、地址 B、数据 C、控制 D、串行 118、按总线共享原则,为避免信号逻辑的混乱和器件的损坏, (D)一个以上的 输出引脚共享一条信号线。 A、禁止 B、允许 C、当引脚较少时允许 D、当输出引脚有三态功能时 允许 119、构造一个 40 键的矩阵键盘,最少需要( B )条 I/O 线。 A、12 B、13 C、14 D、20 120、通常寄存器直接寻址方式下的操作数就在(A)中。 A、指定寄存器 B、寄存器所指的存储单元 C、栈顶单元 D、栈底单元 121、计算机系统中,给 1 个输入数据端口和 1 个输出数据端口分配同一个地址 后(C) 。 A、在输出时会出现问题 B、在输入时会出现问题 C、不会出现问题 D、根本不 能用 122、下图所示半导体存储芯片的容量为(C) 。A0-A11 CS RD WR D0-D3 VCC GNDA、1K× 4 B、1K× 8 C、2K× D、2K× 4 8 123、设异步串行接口电路中波特率因子为 64,则接收端在确定起始位后应每隔 (D)个时钟周期对串行数据接收线采样一次。 A、8 B、16 C、32 D、64 124、CPU 对存储器或 I/O 端口完成一次读/写操作所需的时间称为一个(B) 。 A、指令周期 B、总线周期 C、时钟周期 D、传输周期 125、某显示器最高分辨率为 1024× 768、24 位真彩,其所需最小缓存是(C) 。 A、1MB B、2MB C、3MB D、4MB 126、与存储器映像编制方式相比,I/O 端口的独立编址方式具有(B)特点。 A、 地址码较长 B、 需专用的 I/O 命令 C、 只需存储器存取指令 D、 译码电路较简单 127、 计算机系统中软硬件在逻辑上是等效的, 提高软件功能实现的比例将会(B)。 A、提高解题速度 B、提高系统灵活性 C、增加成本 D、减少所需存 储容量 128、计算机系统中,中断向量通常是指(A) 。 A、中断服务程序的入口地址 B、中断的优先级 C、中断发生的先后顺序 D、中 断的类型编号 129、以下对动态 RAM 描述正确的是(C) 。 A、速度高于静态 RAM B、不需要刷新电路 C、集成度高于静态 RAM D、一 般用于存放程序代码 130、微机系统中,地址锁存器的输出信号的特性是( B ) 。 A:单向双态 B:单向三态 C:双向双态 D:双向三态 131、若某 CPU 具有 4GB 的寻址能力,则该 CPU 的地址总线宽度为( C ) 。 A:64 B:36 C:32 D:24 132、微处理器与外设传送数据的过程中,可只由硬件完成而不需要软件支持的 传送方式是( D ) 。 A、无条件 B、查询 C、中断 D、DMA 134、若某系统中一个输入端口和一个输出端口占用同一地址,则( B ) 。 A、输出时会出现问题 B、不会出现问题 C、输入时会出现问题 D、根本不 能用 135、若
为 8 位二进制补码数,则该数的十进制真值为( D ) 。 A.+206 B.-206 C.+50 D.-50 136、CPU 的字长通常与其( C )一致。 A.寄存器个数 B.IO 端口数 C. 数据线宽度 D.地址线宽度 137、8 位二进制补码定点整数能表示的数值范围是(A) 。 A、-128~+127 B、-127~+127 C、0~+127 D、0~+255 三、 判断 1、所有的电子设备都属于嵌入式设备。 2、CISC 将被 RISC 所取代。 . 3、嵌入式 linux 操作系统属于免费的操作系统。( ( (X X ? ?) ) ) )4、 移植操作系统时需要修改操作系统中与处理器直接相关的程序 (5、嵌入式开发需要专门的软件和硬件设备。 ( ? ) 6、 程序运行过程中的资源可以是显示器、 键盘, 但不可以是一个数组或变量 (X) 7、在 μCOS-II 操作系统中,已知 Task1 的优先级为 12,Task2 的优先级为 26。 假如在 Task2 运行过程中发生键盘中断,在执行中断服务程序时 Task1 进入就绪 状态,则中断返回时 Task1 得到 CPU 的使用权。 ) (√ 8、若定义任务 task1 的优先级为 12, 则不能再定义其他任务的优先级也为 12 (√ ) 9、任务创建后即开始调度(X) 10、 液晶工作在文本模式下时,既可以显示英文字符也可以显示汉字(X) 11、 处于就绪状态的任务只能切换到运行状态(X) 12、 等待消息函数 WaitMessage(0)中的“0”表示此函数的超时等待时间为 0 秒(X) 13、 若 OSTaskSuspend (prio)函数把正在延时的任务挂起, 则调用一次对应的 唤醒函数即可使该任务切换到就绪状态。 (X) 14、 调试程序时,需要停止程序运行后才可查看变量内容(√ ) 15、 μCOS-II 操作系统中移植成功后即可使用文件系统(X) 16、 将模拟信号转换成数字信号的电路是 DA 转换器。 ) (× 17、 IIC 是同步串行数据总线,(√) 。 18、 S3C2410 的处理器对内存的访问只能通过 Load/Store 指令来实现。 (√) 19、 Nand Flash 比 Nor Flash 成本高,可靠性差。 ) (× 20、 C 语言程序可以嵌套加入汇编程序模块。 (√) 21、 运算放大器的输出电压范围一般大于电源电压的范围。 ) (× 22、 由于 CPU 内部寄存器的访问速度较高,根据 ATPC 标准,应尽可能使函数 的参数控制在 4 个以下。 (√) 23、 ARM 处理器结构体系中具有 T 变种处理器核可以工作在 ARM 状态和 Thumb 状态。 (√) 四、 简答 6.嵌入式 RISC 处理器“ARM7TMDI”中 TDMI 的基本含义是什么?答:ARM7TMDI 是目前使用最广泛的 32 位嵌入式 RISC 处理器,属低端 ARM 处理器核。TDMI 的基本含义为:T:支持 16 为压缩指令集 Thumb;D: 支持片上 Debug;M:内嵌硬件乘法器(Multiplier)I:嵌入式 ICE,支持片上断 点和调试点; 7. ARM 微处理器内核是如何进行异常处理的? 答:1)当异常产生时,ARM 内核拷贝 CPSR 到 SPSR_&mode&,设置适当 的 CPSR 位:改变处理器状态进入 ARM 态,改变处理器模式进入相应的异常模 式,设置中断禁止位禁止相应中断(如果需要);保存返回地址到 LR_&mode&,设 置 PC 为相应的异常向量 2) 。 返回时 异常处理需要从 SPSR_&mode&恢复 CPSR, , 从 LR_&mode&恢复 PC,注意:这些操作只能在 ARM 态执行。 15、什么是嵌入式系统?其特点有些什么? 答: 嵌入式系统是“以应用为中心、 以计算机技术为基础、 软件硬件可裁剪、 功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。” 特点:1)是专用的计算机系统,用于特定的任务; 2)资源较少,可以裁减; 3) 功耗低,体积小,集成度高,成本低; 4)使用实时操作系统; 5) 可靠性要求更高,具有系统测试和可靠性评估体系; 6)运行环境差异大 7)大部分程序固化在 ROM 中; 8) 较长的生命周期; 9)嵌入式微处理器通常包含专用调试电路 17、目前嵌入式操作系统有哪些? 答:1)?C/OS-II 嵌入式操作系统内核;2)VxWorks 嵌入式实时操作系统; 3)WinCE 操作系统;4)Linux 操作系统 ;5)Symbian 操作系统 19、嵌入式系统开发的基本流程? 答:1)系统定义与需求分析; 2)系统设计方案的初步确立; 3)初步设计方案性价比评估与方案评审论证; 4)完善初步方案、初步方案实施; 5)软硬件集成测试; 6)系统功能性能测试及可靠性测试。 20、什么是可编程片上系统? 答:用可编程逻辑技术把整个系统放到一块硅片上,称作可编程片上系统 SOPC.它是一种特殊的嵌入式系统,首先它是 SOC,即由单个芯片实现整个 系统的主要逻辑功能,具有一般 SOC 基本属性;其次,它又具备软硬件在 系统可编程的功能,是可编程系统,具有可裁剪、可扩充、可升级等灵活的 设计方式。 21、有时要使用 Thumb 技术的原因 答: (Thumb 指令集是把 32 位的 ARM 指令集的一个子集重新编码后形成的 一个特殊的 16 位指令集。 )在性能和代码大小之间取得平衡,在需要较低的 存储代码时采用 Thumb 指令系统用 Thumb 指令编写最小代码量的程序(能 够很好的解决代码长度的问题) 却取得以 ARM 代码执行的最好性能, , 可以 带来低功耗,小体积,低成本。 22、ARM 处理器的工作模式有哪几种? 答:1)正常用户模式(usr) ; 2)快速中断模式(fiq) ; 3)普通中断模式(irq) ; 4)操作系统保护模式(svc)或 管理模式 ; 5)数据访问中止模式(abt) ; 6)处理未定义指令的未定义模式(und) ; 7)运行特权级的操作系统任务的系统模式(sys) 。 23、寄存器 R13,R14,R15 的专用功能各是什么? 答:1)寄存器 R13 保存堆栈指针 SP;2)寄存器 R14 用作子程序链接寄存 器,也称为 LR ,用以保存返回地址;3)R15(PC)用作程序计数器。 24、寄存器 CPSR,SPSR 的功能各是什么? 答:1)CPSR 包含条件码标志、中断禁止位、当前处理器模式以及其它状态 和控制信息。所有处理器模式下都可以访问当前的程序状态寄存器 CPSR。 2)在每种异常模式下都有一个对应的物理寄存器――程序状态保存寄存器 SPSR。当异常出现时,SPSR 用于保存 CPSR 的状态,以便异常返回后恢复异常发生时的工作状态。 25、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----&未定义指令(包括缺协处理器) 。26、什么是小端和大端存储器组织?答:1)小端存储器组织是较高的有效字节存放在较高的存储器地址,较低的 有效字节存放在较低的存储器地址。 2) 大端存储器组织是较高的有效字节 存放在较低的存储器地址,较低的有效字节存放在较高的存储器地址。28、ARM 核现在有哪几种?答:ARM7、 ARM9、ARM9E 、ARM10E,、SecurCore 、ARM1143.通用寄存器包括 R0~R15,可以分为具体哪三类?答:通用寄存器包括 R0~R15,可以分为三类: (1)未分组寄存器 R0~R7; (2)分组寄存器 R8~R14; (3)程序计数器 PC(R15) 。47、表示递增和递减的满堆栈和空堆栈有哪几种组合,请比较它们的特点。答:有 4 种类型的堆栈,表示递增和递减的满堆栈和空堆栈的各种组合。 ? 满递增:堆栈通过增大存储器的地址向上增长,堆栈指针指向内含有效数据项 的最高地址。指令如 LDMFA,STMFA 等。 ? 空递增:堆栈通过增大存储器的地址向上增长,堆栈指针指向堆栈上的第一个 空地址。指令如 LDMEA,STMEA 等。 ? 满递减:堆栈通过减小存储器的地址向下增长,堆栈指针指向内含有效数据项 的最低地址。指令如 LDMFD,STMFD 等。 ? 空递增:堆栈通过减小存储器的地址向下增长,堆栈指针指向堆栈下的第一个 空地址。指令如 LDMED,STMED 等。49.常见的符号定义伪指令,具体有哪几种?答:常见的符号定义伪指令有如下几种。 ? 用于定义全局变量的 GBLA、GBLL 和 GBLS。 ? 用于定义局部变量的 LCLA、LCLL 和 LCLS。 ? 用于对变量赋值的 SETA、SETL、SETS。 ? 为通用寄存器列表定义名称的 RLIST。51、可执行映像文件通常由几部分构成,它们有什么特点?答:可执行映像文件通常由以下几部分构成。 ? 一个或多个代码段,代码段的属性为只读。 ? 零个或多个包含初始化数据的数据段,数据段的属性为可读写。 ? 零个或多个不包含初始化数据的数据段,数据段的属性为可读写。57.嵌入式 Linux 与其他嵌入式操作系统相比,有哪些优点和缺点?答:嵌入式 Linux 作为嵌入式操作系统,与其他嵌入式操作系统相比,优点有: 开放源代码、免费、开发周期短等;缺点是实时性较差。60.软启动状态对 ARM 处理器有什么作用?答: .软启动时,处理器被复位,但是 SDRAM 里面的内容仍旧保持。61.在 ARM 硬件系统中,最耗电的模块是什么?答:显示设备的耗电最多,如 TFT LCD/LED。62.数字接地与模拟接地一般如何区分开和相连?答:系统中的模拟电源一般由数字电源产生,可以通过: (1)数字电源与模拟电源,以及数字地与模拟地之间加铁氧体磁珠或电感构成 无源滤波电路; (2)采用多路稳压器的方法将模拟地和数字地连接。63.简述 SDRAM 在 ARM 系统中的主要作用。答:SDRAM 具有高速、大容量等优点,是一种具有同步接口的高速动态随机存 储器,在 ARM 系统中主要用作程序的运行空间、数据及堆栈区。64.区别 ARM 外启动方式和内启动方式的不同。答:外启动方式下,ARM 从外部程序存储器取指令执行;内启动时,ARM 运行 片上 ROM 中固化的启动程序。65.简述嵌入式设备中程序运行方式。答:嵌入式设备中程序运行方式有两种:一种是将程序加载到 SDRAM 中运行, 另一种是程序直接在其所在的 ROM/Flash 存储器中运行。66.与 SDRAM 相比,Flash 在 ARM 系统中的主要作用是什么?答:Flash 存储器常当作硬盘使用,而 SDRAM 则类似内存,Flash 用于存放程序 代码、常量表,以及一些在系统掉电后需要保存的用户数据等。67、在读写数据速度上,Nor-Flash 与 Nand-Flash 有什么区别?答:Nor-Flash 的读取速度比 Nand-Flash 快; Nand-Flash 的写入速度和擦除速度 比 Nor-Flash 快。73.简要叙述复位控制器的功能。答:复位控制器的功能是确定复位原因,同步复位模块,并且复位相应片内的逻 辑模块。74.如何确保复位电路的可靠复位?答:一方面复位低电平时间足够长(20ms 以上) ,保证 ARM 可靠复位;另一方 面保证复位电路稳定性良好,防止 ARM 误复位。80.简述键盘扫描的过程。答:键盘扫描的过程是将列线逐列置成低电平,然后读取行线状态,直到行线中 出现低电平,可知那一列是低电平,然后将行线与列线的状态装入键码寄存器, 进行按键译码,得到按下的按键的相应编码,完成按键扫描。84.简述 I2C I/O 的主要功能。答: 串行时钟 SCL 用于产生器件所有数据发送或接收的时钟; 串行数据/地址 SDA 用于传送地址和所有数据的发送或接收。93.简述 ARM Linux 内核启动三个阶段的功能。答:第一阶段主要是进行 CPU 和体系结构的检查、CPU 本身的初始化,以及页 表的建立等。初始化是从内核入口 Entry 开始到 start_kernel 前结束。 第二阶段主要是对系统中的一些基础设施进行初始化。 最后是更高层次的初始化,如根设备和外部设备的初始化。97.简述 ARM Linux 三种主要编译开发工具的作用。答: 二进制文件处理工具 binutils 主要应用于移植调试操作系统初期的辅助开发; 编译工具 gcc 用于编译内核代码;glibc 用于链接和运行库文件。102.在嵌入式系统中对 GUI 的基本要求是什么?答: (1)占用的存储空间以及运行时占用资源少。 (2)运行速度以及响应速度快。 (3)可靠性高。 (4)便于移植和定制。113、嵌入式系统的应用领域答:工业控制领域:工控设备、智能仪表、汽车电子 消费电子领域:信息家电、智能玩具、通信设备、移动存储设备 网络技术:网络设备、电子商务 军事国防:军事电子、航海航天114、嵌入式技术的发展趋势答:嵌入式设备进入网络互联是未来的发展趋势 优化嵌入式系统软硬件内核,提高系统运行速度,降低功耗和硬件成本 指令级的并行计算技术将引入嵌入式微处理器 嵌入式微处理器将会向多核技术发展 嵌入式技术将引领信息时代116、ARM 处理器的工作模式答:用户模式、FIQ 模式、IRQ 模式、SVC 模式、中止模式、未定义指令异常模 式、系统模式118、 ARM 有 15 个通用寄存器、 一个或两个状态寄存器和 PC, 有些模式共用同一个寄存器, 一共具有 37 个寄存器。 119、R12 一般在子程序连接代码中使用,作为子程序间的中间结果寄存器;R13 通常被用 做栈指针,也称做 SP;R14 又被称为连接寄存器 LR 120、寄存器 R14 的两种特殊用途存放当前子程序的返回地址;当发生异常中断的时候,该模式下的特定物理 R14 被设置成该异常模式将要返回的地址。124、ARM7 采用的是三级流水技术,指令分为三个阶段执行:取指、译码、执行;ARM9采用的是五级流水技术,指令分为三个阶段执行:取指、译码、执行、存储器访 问、寄存器写操作;126、Thumb 指令与 ARM 指令性能比较,分别有什么优缺点。答:Thumb 代码所需的存储空间约为 ARM 代码的 60%~70% Thumb 代码使用的指令数比 ARM 代码多 30%~40% 若使用 32 位的存储器,ARM 代码比 Thumb 代码快约 40% 若使用 16 位的存储器,Thumb 代码比 ARM 代码快约 40%~50% 在 ARM 代码相比较,使用 Thumb 代码,存储器的功耗会降低约 30%127、什么是交叉编译,为什么要采用交叉编译(5 分)答: 所谓交叉编译, 是指在一个平台上编译生成在另一个平台上运行的可执行程 序。 (3 分)之所以采用交叉编译,是因为目标平台上不具备直接运行开发环境 的条件(2 分) 。128、在 ARM 系统中,函数调用的时候,参数是通过哪种方式传递的? 参考答案:应用程序中使用中间寄存器和数据栈来传递参数。在 ARM 汇编中,如果第 1-4个参数通过 R0-R4 来传递, 超过 4 个的使用数据栈进行传递, 输出函数 R0 传递。129、中断(interrupt,如键盘中断)与异常(exception,如除 0 异常)有什么区别?参考答案:所谓的中断应该是指外部硬件产生的一个电信号,从 cpu 的中断引脚 进入,打断 cpu 当前的运行。 所谓异常,是指软件运行中发生了一些必须作出处理的事件,cpu 自动产生一个 陷入来打断当前运行,转入异常处理流程。131、搭建嵌入式开发环境,连接目标板,一般使用什么通信接口连接?在 Windows 主机上 使用什么软件建立连接?在 Linux 主机上使用什么软件建立连接?答:RS-232,以太网口、并口 在 Windows 主机上使用超级终端软件 在 Linux 主机上使用 Minicom 软件132、嵌入式开发环境主要包括哪些组件?嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括 ? ? ? ? ? 宿主机 目标机(评估电路板) 基于 JTAG 的 ICD 仿真器、或调试监控软件、或在线仿真器 ICE 运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境 嵌入式操作系统 137.嵌入式系统与通用计算机之间的区别。答:通用计算机系统采用标准化、模块化的设计,其技术要求是高速、海量的信 息处理,技术发展方向是处理速度、总线宽度、存储容量的无限提升。而嵌入式 系统怎采用针对性较强的专业化设计,技术要求是满足具体应用,技术发展方向 是在保证应用系统的技术要求和可靠性的前提下, 尽可能减小成本、 体积和功耗。138.嵌入式处理器的分类答:1 嵌入式微处理器 MPU 2 嵌入式微控制器 MCU 3 嵌入式 DSP 处理器 4 嵌入式片上系统 SOC 5 嵌入式可编程片上系统 SOPC139. 嵌入式操作系统的作用是什么?请举出 3 种常见的操作系统。答:用于管理存储器分配、中断处理、任务间通信和定时器响应,以及提供多任 务处理等功能。嵌入式操作系统,大大地提高了嵌入式系统硬件工作效率,并为 应用软件开发提供了极大的便利。 种常见的操作系统: 3 WinCE、 Vxworks、 uClinux140.嵌入式系统开发流程答:嵌入式系统开发流程一般可分为 4 个阶段:需求分析阶段、硬件开发阶段、 软件开发阶段和程序固化阶段。142.在 ARM 系列中,ARM7, ARM9 分别是什么体系结构。ARM7 是冯? 诺依曼体系结构ARM9 是哈佛体系结构145.ARM 处理器数据存储格式有哪几种?各自的特点?能否举例进行说明。答:ARM 存储器有大端格式和小端。大端格式中,字数据的高字节存储在低 地址中,而字数据的低字节则存放在高地址中;小端格式则相反。146.ARM 处理器数据类型包括哪些?各自特点。答:字(Word) :在 ARM 体系结构中,字的长度为 32 位,而在 8 位/16 位处 理器体系结构中,字的长度一般为 16 位。 半字(Half-Word) :在 ARM 体系结构中,半字的长度为 16 位,而在 8 位/16 位处理器体系结构中字的长度一致。 字节(Byte) :在 ARM 体系结构和 8 位/16 位处理器体系结构中,字的长度 均为 8 位。 由于一个字数据占用地址空间中的 4 个字节的地址,因此其地址总是 4 的倍 数,在二进制计数中,字数据的地址低 2 位总为 0,称为地址 4 字节对齐(地 址的低两位为 0) ;同理,半字需要 2 字节对齐(地址的最低位为 0)148.ARM 处理器共有多少个 32 位寄存器,多少个为通用寄存器,多少个状态寄存器。答:共有 37 个 32 位寄存器,其中 31 个为通用寄存器,可用于累加操作,6 个为状态寄存器。149. 在 ARM 指令中,R13 寄存器常用?R14 寄存器被称为?,R15 寄存器?答:R13 常用做堆栈指针,R14 被称为子程序连接寄存器或连接寄存器。 R15 寄存器用于保存程序计数器(PC)。R15 一般不作为通用寄存器使用151.ARM 指令的寻址方式。(1)寄存器寻址; (3)寄存器偏移寻址; (5)基址变址寻址; (7)堆栈寻址; (9)相对寻址。154.最小系统的组成(2)立即寻址; (4)寄存器间接寻址; (6)多寄存器寻址; (8)块拷贝(复制)寻址;S3C4510B 最小系统包含处理器电路、电源电路、晶体振荡器电路、复位电路和 存储器电路。156.开发环境的建立建立主机 Linux 平台 建立交叉开发环境的第一步,是建立一个 Linux 平台来对应用程序和内核进 行编译,通常使用虚拟软件 VMware 和 Red Hat Linux 来搭建一个在 Windows 环 境下运行的 Linux 平台。步骤如下: 1)在 PC 机上安装并运行 VMware 2)安装 Red Hat Linux 操作系统158.什么是交叉编译工具。答: 交叉编译是一个平台上生成另外一个平台上的可执行代码。使用交叉编译工 具有很多种原因, 有时是因为目标平台上不允许或不能够安装所需的编译器;有 时是因为目标平台资源贫乏, 无法运行所需编译器;有时是因为目标平台还没有 建立,连操作系统都没有,根本无法运行编译器。161.简述嵌入式系统的开发过程。答:嵌入式系统的开发过程主要包括 6 个方面:芯片选择、配置硬件平台、 Bootloader 移植、操作系统裁减、操作系统移植和应用程序开发。163.简述如何成为嵌入式开发人员。 答:嵌入式开发人员提应该牢记“博、专、实践”的原则。 ? 博:要求设计者不但需要掌握嵌入式处理器的使用,还需要通晓各种外 围电路的实现。软件上还需要掌握 Bootloader 的移植、嵌入式操作系统 的移植和裁减、驱动程序的开发以及应用程序的开发。 ? 专:一个优秀的嵌入式开发人员,不可能嵌入式开发过程中的每一个领 域都精通。但需要嵌入式开发人员对其中的某些方面具有很深的造诣, 这样可以提高竞争力。 ? 实践:嵌入式开发人员应该多练习、多交流、多实践。这样,一方面可 以在实践中排查错误、完善系统的稳定性,另一方面也可以巩固所学的 知识、不断深化技术造诣。164.简述嵌入式操作系统与通用操作系统的区别。答:通用操作系统是一种通用的操作系统,可运行在不同的硬件平台。而嵌入式 操作系统与一般的 Windows 操作系统不同,其是一种专用、可定制的特点。165、多寄存器加载/存储指令(LDM/STM)一般用在哪些方面?举例说明答: 多寄存器加载/存储指令可以实现在一组寄存器和一块连续的内存单元 之间传输数据。LDM 为加载多个寄存器;STM 为存储多个寄存器。允许一 条指令传送 16 个寄存器的任何子集或所有寄存器。 它们主要用于现场保护、 数据复制、常数传递等。175. 简述 S3C2410 的存储空间是如何分配的?答:S3C2410 芯片采用的是 ARM920T 核,地址空间总共为 4G。其中,1GB 地址空间用于支持外部存储器的链接,此部分被分成 8 个存储块,每块 128MB。 另外的空间有一小部分用于 I/O 端口或部件的寻址,其他的地址空间没有用到。179. 简述看门狗定时器的作用及必要性。答:当系统程序出现功能错乱,引起系统程序死循环时,能中断该系统程序 的不正常运行,恢复系统程序的正常运行。嵌入式系统由于运行环境的复杂,及 所处环境有较强的干扰信号, 或系统程序本身的不完善,不能排除系统程序不会 出现死循环现象。在系统中加入看门狗部件,当系统程序出现死循环时,看门狗 定时器产生一个具有一定时间宽度的复位信号,迫使系统复位,恢复系统正常运 行。181. 简述 Boot loader 的作用系统初始化、加载和运行内核程序 Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小 程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件 环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。 大多数 Boot Loader 都包含两种不同的操作模式:“启动加载”模式和“下载” 模式 : 启动加载(Boot loading)模式:Boot Loader 从目标机上的某个固态存储设备上 将操作系统加载到 RAM 中运行,整个过程并没有用户的介入。 下载(Downloading)模式:Boot Loader 将通过串口连接或网络连接等通信手段 从主机(Host)下载文件,比如:下载内核映像和根文件系统映像等。182. ARM 常见的寻址方式有哪些?寻址方式是根据指令中给出的地址码字段来实现寻找真实操作数地址的方 式。 ARM 处理器具有 9 种基本寻址方式。 1.立即寻址; 2.寄存器寻址; 3.寄存器移位寻址;4.寄存器间接寻址; 5.变址寻址; 6.多寄存器寻址;7.堆栈寻址 8.块拷贝寻址 9.相对寻址191.中断源的识别方法有哪些?描述各种方法的思想?中断源识别一般采用中断向量识别方法: 中断向量即外设提供的中断程序入口地址。 微处理器根据中断向量转移到对 应中断服务程序执行事物处理。194.什么叫波特率?S3C2410 芯片的 UART 部件的波特率如何计算?写出波特率的计算公 式。答:波特率等于每秒钟传输的数据位数, 波特率产生器的的时钟源可选择 S3C2410 内部系统时钟或外部时钟 UCLK。 波特率通过把源时钟除以波特率除数寄存器(16 位数据)产生的。 除数=(PCLK/(波特率*16))-1 五、 应用 1、程序解释 AREA COPYBS,CODE,READONLY ;定义一个代码段 ENTRY ;程序入口 LDR RO,=SRC ;取得原数据表的表头 LDR R1,=DST ; 取得目标数据表的表头 MOV R2,#20 ;R2 作为循环控制 BCOPY MOVS R3,R2,LSR,#3 ; R3=R2 &&3 逻辑右移 3 位 BEQ CWORD ;若 Z=1,跳转到 CWORD OCOPY LDMIA R0!,{R4-R11} ; 加载 R0 指向的地址上的多字 数据,保存到 R4~R11 中,R0 值更新 STMIA R1!,{R4-R11} ; R4-R11 的数据存储到 R1 将 指向的地址上,R1 值更新 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 …… …… 4、写出完成下列操作的指令 (1)R0=16 MOV R0,#16; (2)R1=R0*4 MUL R1,R0,#4; (3)R0=R1/16 MOV R0,R1,LSL#4; (4)R1=R2*7 MUL R1,R2,#7; 5、下列指令完成什么操作 (1)ADDS R0,R1,R1,LSL #2 (2)RSB R2,R1,#0 (3)ADD R0,R1,R1,LSL #1 (4)SUB R0,R0,R1,LSL #4 (5)ADD R0,R0,R1,LSL #7 (6)MLA R0,R1,R2 (7)SMULL R0,R1,R2,R3R0=R1+(R1× 4); R2=R1-0 R0=R1+(R1× 2) R0=R0-(R1× 16) R0=R0+(R1× 128) R0=R1× R2(8)BL LABEL 时将当前的 PC 值保存到 R14 中R0=(R2× R3)的低 32 位 R1=(R2× R3)的高 32 位 当程序无条件跳转到标号 LABEL 处执行时,同7、先对内存地址 0x3000 开始的 100 个内存单元填入 0xx 字数据,然后将每个字单元进行 64 位累加结果保存于[R9:R8](R9 中存放高 32 位) AREA Fctrl, CODE, READONLY ENTRY CODE32 STARY MOV R0, #3000 MOV R1, #0x MOV R2, #0x100 LOOP_1 STR R1,[R0],#4 ADD R1, R1, #1 SUBS R2,R2, #1 BNE LOOP_1 MOV MOV MOV MOV LOOP_2 LDR ADDS R0, #0x3000 R2, #0x100 R9, #0 R8, #0 R1, [R0], #4 R8, R1, R8ADC R9, R9,#0 SUBS R2, R2 ,#1 BNE STOPLOOP_2B STOP END 8、8421 码是一种十进制数,它采用 4 个 bit 位表示一个十进制位,分别用
表示十进制的 0~9。 设计汇编程序将一个可以表示 8 位十进制的 8421 码数据转换成等价的整数形数据。 AREA Dec, CODE, READONLY ENTRY CODE32 LDR R0,=0x Dec2int MOV R1, #0 MOV R2, #8 MOV R5,#10 Dec2int_l1 MUL R4, R1, R5 MOV R0, R0, ROR #28 AND R3, R0, #0Xf ADD R1, R4, R3 SUBS R2, R2, #1 BNE Dec2int_l1 STOP B STOP END 12、说明指令 STMIA r12!, {r0-r11}的操作功能。 分) (4 将 R0-R11 十二个寄存器中的 32 位数据,存储到 R12 地址指针为起始地址的内 存中,地址的操作方式是先操作、后增加,并更新地址。 14、 这是一个由源程序 strtest.c 和 scopy.s 组成的混合程序项目, 通过调用 strcopy 完成字符串复制,程序代码如下。要求阅读程序,在程序中的注释符“//”后, 说明该句程序的作用,并说明 extern 和 EXPORT 伪指令的在程序中的作用。 (8 分) strtest.c #include &stdio.h& extern void strcopy(char *d, const char *s); int main() { const char *srcstr = &First string - source&; char dststr[] = &Second string - destination&; printf(&Before copying:\n&); printf(& '%s'\n '%s'\n&,srcstr,dststr); // strcopy(dststr,srcstr); // printf(&After copying:\n&); printf(& '%s'\n '%s'\n&,srcstr,dststr);// return 0; } scopy.s AREASCopy, CODE, READONLY EXPORT strcopystrcopy LDRB STRB CMP BNE MOV END //输出源串和目标串 (8 分) //调用 strcopy 函数 //输出复制后的源串和目标串 ;r1 指向源串,从源串载入一个字节的字符到 r2,并更新 r1=r1+1 ;r0 指向目标串,从 r2 保存一个字节的字符到目标串,并更新 r0=r0+1 ;测试串尾标志\0 ;非零转标号 strcopy ;返回 16、有如下程序段,画出程序流程图,并回答执行程序以后 R0 的值是多少。 (8 分) num EQU 2 start MOV r0, #0 MOV r1, #5 MOV r2, #2 BL func stop B stop func CMP r0, #num MOVHS pc, lr ADR r3, JumpTable LDR pc, [r3,r0,LSL#2] JumpTable DCD DoA DCD DoS r2, [r1],#1 r2, [r0],#1 r2, #0 strcopy pc,lr ; ; ; ; ; DoA ADD MOV DoS SUB MOV END r0, r1, r2 pc,lr r0, r1, r2 pc, lr答: 为 0 调用 DoA, 为 1 调用 DoS, 大于 2 直接返回, R0 R0 R0 流程图略。 R0=7 20、已知 R0=8,R2=5,执行 MOV R0,R2,LSL #2 后,r0=20,r2=5 21、已知 r0=0x=0x, men32[0xx,mem32[0xx 问执行以下指令后,r1,r0 的情况 1) ldr r0,[r1,#0x4]! ;r0=0x=0x) Ldr r0, [r1,#0x4] ;r0=0x=0x) Ldr r0,[r1], #0x4 ;r0=0x=0x、已知 men32[0x8, men32[0x8, men32[0x8,r0=0x, r1=0x=0x=0x 问执行 ldmia r0!,{r1-r3}后,r0,r1,r2,r3 的情况 r1=0x01,r2=0x02,r3=0x03,r0=0x80018 23、已知 r1=0x=0x,sp=0x, 问执行 stmfd sp!,{r1,r4}后, r1,r4,sp 的情况 r1=0x, r4=0x,sp=0x、已知 r0=0x0,cpsr=0xd3, 执行以下指令后 r0 的情况 Mrs r0, r0=0xd3 Bic r0,r0,#0x80 ; r0=0x53 25、 ARM 处理器寄存器 R0 中的数据内容为 0xAABBCCDD,将其存放到内存地 址 0x10000 开始的内存单元中,分别采用小端对齐存储格式和大端对齐格式存 储,试分析内存地址 0x10000 字节单元的内容。 答:小端模式:0x03 中依次存放的数据是 0x DD 0x CC 0x BB 0xAA 大端模式:0x03 中依次存放的数据是 0xAA 0x BB 0x CC 0x DD 26、ARM 系统中的堆栈有四种,如下图。请按图标出四种堆栈的类型。ATPCS 编程规范约定使用的堆栈是哪一种?栈 空 间 的 增 长 方 向Lo Address栈 空 间 的 增 长 方 向Lo AddressSP。。。SP栈 空 间 的 增 长 方SPSP栈 空 间 的 增 长 方地 址 的 增 长 方 向 答:FD、FA、ED、EA。ATPCS 编程规范约定使用的堆栈是 FD 七、待定
大学课程嵌入式系统习题集―汇集和整理大量word文档,专业文献,应用文书,考试资料,教学教材,办公文档,教程攻略,文档搜索下载下载,拥有海量中文文档库,关注高价值的实用信息,我们一直在努力,争取提供更多下载资源。}

我要回帖

更多关于 大端小端 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信