- 1、本文档共78页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统
--汇编及c语言程序
主要内容
ARM汇编语言的指示符
ARM汇编语言语句格式
ARM汇编语言程序格式
ARM汇编语言程序举例
ARM汇编程序设计
文件格式
汇编语言设计的意义
汇编语言程序设计更能充分发挥处理器的硬件特
性
两个优势
操作系统移植需要编写几百行底层硬件的汇编
语言程序,这是C语言不可取代的。
优化算法的时空效率,C语言的目标代码优化是
编译器完成的,而汇编语言的目标代码优化是
人工完成的。人是算法的创造者,也是编译器
的设计者,人工优化比编译器质量高。
弱点
编程效率低,开发周期长,经济代价大。
预定义寄存器名
ARM汇编器中将几十个寄存器名称作为保留
字预先给与了定义,这些预定义寄存器名都是
大小写敏感的,它们都与具体的寄存器一一对
应。
ADS预定义的寄存器名
预定义寄存器名 描述
r0-r15 and R0-R15 ARM处理器的通用寄存器
a1-a4 入口参数,处理结果,暂存寄存器;r0-r3 的同
义词
v1-v8 变量寄存器,r4-r11
sb and SB 静态基址寄存器,r9
sl and SL 栈界限寄存器,r10
fp and FP 帧指针寄存器,r11
ip and IP 内部过程调用暂存寄存器,r12
sp and SP 栈指针寄存器,r13
ADS预定义的寄存器名(续)
预定义寄存器名 描述
lr and LR 连接寄存器,r14
pc and PC 程序寄存器,r15
cpsr and CPSR 当前程序状态寄存器
spsr and SPSR 保存的程序状态寄存器
f0-f7 and F0-F7 浮点数运算加速寄存器
s0-s31 and S0-S31 单精度向量浮点数运算寄存器
d0-d15 and D0-D15 双精度向量浮点数运算寄存器
p0-p15 协处理器0-15
c0-c15 协处理器寄存器0-15
内置变量名
内置变量
ARM 汇编器所定义的内置变量如表所示。值得注
意的是内置变量的设置不能用SETA、SETL或SETS
等指示符来设置,只能用于表达式或条件语句。例
如:
IF {ARCHITECTURE} = “4T”
内置变量名清单
内置变量 描述
{PC} or . 当前指令地址
{VAR} or @ 内存区位置计数器的当前值
{TRUE} 逻辑值真
{FALSE} 逻辑值假
{CONFIG} 汇编器如果在汇编ARM指令,取值为32 ,如果汇
编Thumb指令,取值16
{ENDIAN} 如果汇编器是大端序,则取值big ;如果是小端
序
专注于经营管理类文案的拟写、润色等,本人已有10余年相关工作经验,具有扎实的文案功底,尤善于各种框架类PPT文案,并收集有数百万份各层级、各领域规范类文件。欢迎大家咨询!
文档评论(0)