Board logo

标题: ARM程序编写习题 [打印本页]

作者: look_w    时间: 2017-9-24 15:55     标题: ARM程序编写习题

习题 3.1  ARM7TDMI有几种寻址方式?LDR R1,[R0,#0x04]属于哪种寻址方式?
3.2  ARM指令的条件码有多少个?默认条件码是什么?
3.3  ARM指令中第二个操作数有哪几种形式?
3.4  请指出MOV指令与LDR加载指令的区别及用途.
3.5  CMP指令的功能是什么?写一个程序,判断R1的值是否大于0x30,是则将R1减去0x30
3.6  调用子程序是用B还是用BL指令?请写出返回子程序的指令。
3.7  ARM状态与Thumb状态的切换指令是什么?请举例说明。
3.8  Thumb状态与ARM状态的寄存器有区别吗?Thumb指令对哪些寄存器的访问受到一定限制?
3.9  Thumb指令集的堆栈入栈、出栈指令是哪两条?
3.10 把下面的C代码转换成汇编代码。数组ab分别存放在以0x40000x5000为起始地址的存储区内,类型为long型(32位)。
fori=0;i<8;i++
{
  a = b[7-i];
}
3.11 编写程序,将R1的高8位传送到R2的低8
3.12 编写一段64位加法运算的程序,要求满足:[R1:R0]+[R3:R2],结果存入[R1:R0]
3.13 编写程序将地址0x0000 10000x0000 1030的数据全部搬迁到0x0000 20000x0000 2030的区域中,并将源数据区清零。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0