ARM汇编程序语言程序设计的学习小节_1

本文是作者学习ARM汇编程序设计的笔记,通过《汇编语言程序设计——基于ARM体系结构》一书的实例,讲解了存储器变量的加法、简单分支结构和多分支结构的实现,探讨了程序的寻址方式和分支指令的运用,强调了流水线执行和程序跳转的原理。
摘要由CSDN通过智能技术生成

此篇是本人学习ARM汇编程序设计的小节,记录了我在调试课本实例过程中的感想,新手妄言还请高手斧正!

文章以课本实例为主线,每个实例标有归属的章节,有些注释不完善毕竟是小程序相信大家一定能明白,如有任何不详细或者差误欢迎大家和我交流!

本文依据课本为:

《汇编语言程序设计——基于ARM体系结构》     文全钢著 北京航空航天大学出版社   2007

 


 

实例1.(4.4.2简单程序设计)

实现存放在存储器的两个32位变量X、Y的加法,它们分别保存在0x90010、0x90014,结果Z也保存在存储器、其地址为0x90018。

             AREA EX4_41,CODE,READONLY      ;定义段属性伪指令 标志了此段程序名字为EX4_41为代码段(CODE)只读属性
             ENTRY                                      ;程序入口
             CODE32                                    ;32位ARM程序段
START    LDR R0,=0X90010                        ;将地址保存到R0中
             LDR R1,[R0],#4
             LDR R2,[R0],#4                           ;后索引 立即数寻址 每次取值后会自动修改寄存器+4 依次提取到寄存器中的值载入R1、R2
                                                            ;最终R0指向0x90018存放结果Z
             ADD R1,R1,R2                             ;加法指令R1+R2保存到R1中 ARM体系只能对寄存器操作
             STR R1,[R0]                               ;保存到R0所指向的存储器空间 此时的R0经过了两次修改
             B START                                    ;分支语句 无条件跳回到START标号处
             END                                           ;程序结束

 程序采取后索引方式寻址,后索引

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值