【实验】ARM系统结构实验之Arm分支指令




南阳理工学院ARM系统结构实验之Arm分支指令

 
 

课程名称:

ARM系统结构

实验学期:

2011-2012第二学期



实验目的和要求

1.掌握分支指令的使用。
2.掌握汇编语言分支程序的设计方式。  


实验内容与分析设计

1.已知两个32位的数,分别存放在存储器的地址为0x90010、0x90014中,要求实现对这两个数求和,并把结果存放在寄存器R0中。
2.要求将一个32位数存放在存储器的地址0x90010中,同时判断该32位的大小,若大于等于0,则将其复制到寄存器R0中,否则将该数的取负,把负数复制到寄存器R0中。
(注意:题目中的数可以自己任意取值。)  


实验步骤与调试过程

(1)打开软件MDK,创建文件名实验4,创建汇编程序名4-1,4-2
(2)选择CPU
(3)分别编写汇编程序,检查无误后调试
(4)单步调试,查看寄存器变化
(5)观察结果,并截图。整理数据,填写实验报告册
//Test1.s
	area reset,code,readonly
	entry
	code32
	mov r1,#1
backword sub r1,r1,#1
		 cmp r1,#0
		 beq forward
		 sub r1,r2,#3
		 sub r1,r1,#1
forward add r1,r2,#3
		add r1,r3,#2
		b backword
		end






//test2.s

	preserve8
	area reset,code,readonly
	entry
	code32
start mov r0,#0					  ;设置参数
	  mov r1,#3
	  mov r2,#2
	  bl arithfunc			   		;调用子程序

arithfunc
	  add r0,r1,r2
	  mov pc,lr
	  end





//Test3.s

	preserve8
	area reset,code,readonly
	entry
	code32
start adr r0,thumb1+1
	  mov lr,pc
	  bx r0
	  add r1,r2,#2
	  b arm1
	  code16
thumb1 add r1,r3,#1
	   add r0,r0,#08
	   bx lr
	   end






实验结果



疑难小结:

主要算法和程序清单:


代码已经上传:点击打开链接

实验源代码:点击打开链接


------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
您还可以通过新浪微博@南阳理工微博校园 联系到我:点击上图即可.
我的博客:CSDN:关于iOS与嵌入式的专栏
 


你可能感兴趣的:(其他)