第三章1(寻址方式)
- 格式:ppt
- 大小:1.72 MB
- 文档页数:52
第三章第一次作业1. ARM寻址方式有几种?举例说明ARM如何进行不同方式的寻址。
1).寄存器寻址;如MOV R1, R22).立即寻址;如MOV R0, #0xFF003).寄存器移位寻址;如MOV R0, R2, LSL #34).寄存器间接寻址;如LDR R1, [R2]5).基址加偏址寻址;如LDR R2, [R3,#0x0C]6).多寄存器寻址;如LDMIA R1!, {R2-R4,R6}7).堆栈寻址;如STMFD SP!, {R1-R7,LR}8).相对寻址。
如BL SUBR12. 简述ARM指令分类及指令格式形式。
ARM指令集可以分为6大类:数据处理指令、Load/Store指令、跳转指令、程序状态寄存器处理指令、协处理器指令和异常产生指令。
ARM指令的基本格式为:<opcode> {<cond>} {S} <Rd> ,<Rn>{,<operand2>}其中,opcode为操作码;cond为可选的条件码;S为可选后缀;Rd为目标寄存器;Rn为存放第1个操作数的寄存器;operand2为第2个操作数。
3. 假设R0的内容为0x8000,寄存器R1、R2的内容分别为0x01与0x10,存储器中所有存储单元的内容均为0xFF。
连续执行下述两条指令后,存储器及寄存器的内容如何变化?STMIB R0!, {R1, R2}LDMIA R0!, {R1, R2}存储器里内容为:R0→0x80000x80040x8008 →R10x800C →R2R0’→0x80100x8014寄存器里内容为:R0 ←0x8010R1 ←0x10R2 ←0xFF4. ARM处理器如何进入和退出Thumb指令模式?用汇编语言实现ARM状态和Thumb状态互相的切换。
进入Thumb模式:有2种方法。
一种是执行一条交换转移指令BX,将指令中的目标地址寄存器的最低位置1,并将其他位的值放入程序计数器PC,则可以进入Thumb指令。