ARM汇编基础—伪指令和伪操作

一、伪指令
伪指令的概念:伪指令和指令一样都是会生成机器码的指令,但伪指令与指令的区别是:每条汇编指令都有对应的唯一一条机器码,而伪指令可以有很多一条机器码,也可以理解为伪指令是有很多一条汇编指令组合而成。
在这里插入图片描述
二、伪操作
伪操作:告诉编译器怎么去编译指令,而它本身不生成机器码(类似于C中的宏)@@而对于不同的编译器下所对应的伪操作都是不同的@@这里说的是基于GUN(GCC)下的伪操作
@@伪操作一般以’ . '开头类似于C中的‘ # ’

	@@伪操作
	@.glabl symbol
	
	@@把SYMBOL字符声明为全局  同一工程下的.S也可以使用	
		@.local symbol
	
	@@把symbol字符声明为局部
	
	@@.eql DATA, 0X123
	
	@类似于宏定义 #define DATA 0X123 @调用的时候MOV R1 ,#DATA
	
	@@函数封装
	@.macro FUNC
		@mov r1,#0x12
		@mov r2,#0x34
	@.endm
	@这样就相当于写了一个FUNC的函数,下次就可以直接调用
	
	@条件编译
	@.if 0
		@.....
		@.....
	@.endif
	
	@重复操作
	@@.rept 3
	@mov r1,#0x12
	@mov r2,#0x34
	@endr
	@@重复MOV 3次
	
	@.weak FUN
	@@弱化FUN,即没有定义FUN也不要管他 相当于NOP 操作
	
	@在当前空间申请空间并初始化
	@.baty @.word
	@使用.baty要重新字节对齐 
	@字节对齐.align 2
	@按2的2次方对齐
	
	@.arm
	@使用ARM指令
	@.thumb
	@使用thunmb指令
	
	@.TEXT
	@.END	

STOP:
B STOP

.end @汇编程序结束

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值