历史上的今天
今天是:2025年01月08日(星期三)
2020年01月08日 | ARM 常用汇编指令
2020-01-08 来源:eefocus
ARM 汇编程序的框架结构
.section .data
<初始化的数据>
.section.bss
<未初始化的数据>
.section .text
.global _start
_start:
<汇编代码>
注意: 一般是将上面结构进行简化
.text
.global _start
_start:
<汇编代码>
寄存器操作指令:
算术和逻辑指令:
MOV :用于将一个寄存器或被移位寄存器或一个立即数移动到目的寄存器
MOV r1 ,#8 (注意:#+数,表示一个十进制数,#+0b数,表示一个二进制数,#+0x数,表示一个十六进制数)
MVN :对源操作数取反再赋值给目的寄存器
MOV R1,#8
SUB : 将一个数减去另外一个数再存放如寄存器
SUB R1,#8,#6(8-6)
ADD:将一个数加上另外一个数后将其存放如寄存器中
ADD R1,R2,R3
AND :逻辑与
AND R1,R2,#0
BIC:位清除
BIC R1,R2,#0B1101
将R2中所与#b1101中1所对应的位清零后的结果保存在R1中
比较指令:
CMP:顾名思义,用于比较两个数的大小,比较的结果不过会放在哪个通用寄存器中而是改在程序状态寄存器中的一个标志状态位
CMP R1,#0B111010
TST:测试位,将两个数按位与
TST R1,R2
分枝指令:
B:条件跳转指令
B [条件] 标号 (注意 :中括号在编写程序时不需要写出)
BL :带连接的返回(类似于C语言中的子函数调用,调用子函数后返回主函数)
移位指令:
LSL:算术左移位
MOV R1,R1,LSL#2(将R1中的数据左移两位存入R1)
ROR:循环右移
MOV R1,R1,#ROR 2(将R1中的数据循环右移后存入R1中)
程序状态字访问指令:
上面所学指令都不能对计算机中的程序状态字中的指令进行访问和读写,所以需要专用计算机指令来将程序状态字中的数据读写到通用寄存器中,在进行修改后写入
MRS :将程序状态字中的数据搬出来
MRS R0,CPRS
MSR:将数据搬回程序状态字中
MSR CPRS, R0
存储器操作指令:
LDR :将内存中的值导出到通用寄存器中
LDR R0 ,#0XFF ‘
STR:将同用寄存器中的数据写回到内存中
STR R0 ,#0XFF
伪指令:
定义类伪指令:(1:编译时起作用2:起作用但是转化为其他机器指令)
.global 表明一个全局的符号 (注意GNU伪指令的特点在前面加上一个“.”)
.data 定义一个数据段
.ascii 定义字符串的数据
.byte 定义一个字节的数据
.word 定义一个字的数据
.data
.equ (类似于C语言中定义宏)
.align 用于字节对齐
操作类伪指令:
nop:空操作指令
具体实现:mov r0 ,r0
ldr:用于将一个大于八位的数据装入寄存器
注意:ldr r0 ,=0x1ff
这里后面是用的等号这里和其他地方有些不一样
协处理指令:(最重要是就是CP15)
作用:系统控制
mcr:
mrc:
mrc p15,0, r0 ,c0,c0,0
注意:蓝色部分是由芯片手册的cp15寄存器访问列表给出的以访问不同寄存器 。红色部分是内核内部通用寄存器
上一篇:ARM嵌入式整理
下一篇:ARM 汇编程序设计
史海拾趣
|
8. 第八章 dScope for Windows使用详解 1. 第一节 概述 1. 1. 主窗口(Mainframe Window) 可设置其它各种调试窗口,设置断点、观察点,修改地址空间,加载文件等等; 2. 2. 调试窗口(DEBUG Window) 支持用户程序的各种显示方式,可连续运行 ...… 查看全部问答> |
|
请问在wince里怎样用wifi发送特定数据 有人说就是socket编程,我没想明白,难道系统会自动调用wifi? 还请各位前辈指点迷津!… 查看全部问答> |
|
小弟在研究硬盘电机的驱动,我曾试过用小功率管9013,8050,8550等等来搭成达林顿管子,但是驱动电机的时候发热严重,而且明显有气无力...虽然能转...在网上找了很久,想用场效管IRF540N来驱动,但是不知道电路如何搭建...求各位高手,走过路过的能 ...… 查看全部问答> |
|
求助,哪位告诉能指点下, 在8962上面使用lwip 如何实现不同网段的能够连接啊???就是公司网络 192.168.1.12的电脑 可以 ping通 192.168.2.2的电脑但是我的板子 192.168.1.10 ping不同 192.168.2.2的电脑… 查看全部问答> |
|
大三嵌入式又要分方向了, ARM 、 PCL、 单片机,感觉吧....就是没感觉,有没有前辈给这三个方向的发展,优缺点,就业情况分析一下啊? 小弟先谢谢了....!!! … 查看全部问答> |




