欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ARM嵌入式实验ARM微处理器指令系统

程序员文章站 2022-06-08 22:56:07
...

实验三 ARM微处理器指令系统

一、实验目的

  1. 掌握ARM微处理器指令集的书写格式;
  2. 掌握ARM指令的寻址方式;
  3. 掌握基本的ARM指令的用法;

二、实验内容

使用RealView MDK集成开发环境,编写汇编语言程序,使用基本的ARM指令以及不同寻址方式,通过查看结果掌握指令的功能。

三、实验要求

  1. 能够熟悉使用RealView MDK集成开发环境建立工程和汇编源文件;
  2. 能够编写完整的汇编语言程序段,并能够设置编译参数完成程序编译;
  3. 能够正确书写基本的指令,能够查看寄存器和存储器的内容;
  4. 至少书写10条基本的ARM指令,并记录下运行的结果。

四、示例程序

	AREA ARMex,CODE,READONLY
	ENTRY
START
	MOV R1,#0x12
	MOV R1,R1,LSL #2
	MOV R0,#0x40000000
	STR R1,[R0]
	LDR R2,[R0]
STOP
	B STOP
	END

五、实验过程及结果

一、示例程序
首先按照老师上课所讲对环境进行设置,然后按照老师所给代码运行,一开始出现了一些问题,后调整了缩进后得以成功运行,编译成功后一步步调试查看运行结果,并进行分析,理解了相应Arm指令,运行结果如下:
ARM嵌入式实验ARM微处理器指令系统
指令分析:
MOV R1,#0x12 R1=#0x12
MOV R1,R1,LSL #2 R1=R1<<2
MOV R0,#0x40000000 R0=#0x40000000
STR R1,[R0] 将R1寄存器的值,传送到地址值为R0的存储器内存中
LDR R2,[R0] 将存储器地址为R0的字数据读入寄存器R2
二、11条arm指令程序
MOV R1,#0x12 R1=#0x12
MOV R1,R1,LSL #2 R1=R1<<2
MOV R0,#0x40000000 R0=#0x40000000
STR R1,[R0] 将R1寄存器的值,传送到地址值为R0的存储器内存中
LDR R2,[R0] 将存储器地址为R0的字数据读入寄存器R2
MOV R2 #0x24 R2=#0x24
ADD R2,R1,R0 R2=R1+R0
SUB R1,R2,R0 R1=R2-R0
MUL R0,R1,R2 R0=R1*R2
MVN R1,#0 R1=0xFFFFFF
TST R0,R1 R0,R1按位与运算,并更新标志位的值
运行结果如下:
ARM嵌入式实验ARM微处理器指令系统

相关标签: 课程学习记录