arm寻址方式实验-u球体育app下载

嵌入式 > 嵌入式开发 > 详情

arm寻址方式实验

发布时间:2024-01-16 发布时间:
|
一、实验目的
1. 理解各种寻址方式:立即数;寄存器;寄存器移位;寄存器间接寻址;变址寻址。
2. 巩固和提高在ads环境中用汇编语言进行程序设计的基本技能。

二、实验内容
1. 在ads下建立工程,并配置开发环境。
2. 创建一个汇编语言源程序,并添加到工程中,对其进行编辑、编译和链接。
3. 使用axd调试程序,观察各种寻址方式的功能。
三、实验过程(exp4_1_1.s)
area addressingmode_1,code,readonly
entry
1) mov r5,#15
2) mov r2,#0xc
3) mov r1,r5
4) add r0,r1,r2,lsr #3
5) ldr r4,=0x900600
6) str r0,[r4]
str r0,[r4,#4]
str r0,[r4,#4]!
here b here
end

1) 写出上述指令的寻址方式
2) 执行下面两条指令,改变***的内容,观看寄存器r1的变化。
mov r5,#15
mov r1,r5, *** #1
***的内容如下:
lsl:逻辑左移(logical shift left)
asl:算术左移(arithmetic shift left)
lsr:逻辑右移(logical shift right)
asr:算术右移(arithmetic shift right)
ror:循环右移(rotate right)
rrx:扩展为1的循环右移(rotate right extended by 1 place )

3) mov r5,#0xfff编译时是否会出错?有错误
4) 观察执行 mov r1,r5和add r0,r1,r2,lsr #3指令后相关的寄存器的变化。
4)观察执行ldr r4,=0x900600和str r0,[r4]指令后,相应的存储器和寄存器的变化。


寄存器 register
存储器 memory
r0 32位 0b 00000000 00000000 00000000 00000010
(8位)
0009 000000000010
0009 0001
0009 0002
0009 0003

序号执行指令指令执行后的变化情况
寄存器(值用16进制表示)存储器(值用16进制表示)
r0r1r2r3r4r5
mov r5,#15
0000015
mov r2,#0xc
00120015
mov r1,r5
015120015
add r0,r1,r2,lsr #3
2115120015
ldr r4,=0x90000
211512058982415
str r0,[r4]
211512058982415
str r0,[r4,#4]
str r0,[r4,#4]!



『本文转载自网络,u球体育app下载的版权归原作者所有,如有侵权请联系删除』

热门文章 更多
intel 独立显卡iris xe max亮相.性能超越mx450
网站地图