当前位置: 首页 > news >正文

汇编的伪指令

一、介绍

伪指令是用于对汇编过程进行控制的指令,该类指令并不是可执行指令,没有对应机器码,只用于汇编过程中为汇编程序提供汇编信息,帮助编译器编译。当汇编结束时,伪指令的使命也就结束了。伪操作可以实现如下功能:

  • 符号定义;
  • 数据定义和对齐;
  • 汇编控制;
  • 汇编宏;
  • 段描述;
     

二、ARM常用的伪指令

数据定义伪指令

  • .align :用来对齐或者填充数据等。
  • .byte:把 8 位数当成数据插入汇编代码中。
  •  .hword 和.short:把 16 位数当成数据插入汇编代码中。
  •  .long 和.int:这两个伪指令的作用相同,都把 32 位数当成数据插入汇编代码中。
  •  .word:把 32 位数当成数据插入汇编代码中。
  •  .quad:把 64 位数当成数据插入汇编代码中。
  •  .float:把浮点数当成数据插入汇编代码中。
  •  .ascii 和.string:把 string 当作数据插入汇编代码中,对于 ascii 伪操作定义的字符串,需要自行添加结尾字符'\0'。
  •  .asciz:类似于 ascii,在 string 后面自动插入一个结尾字符'\0'。
  •  .rept 和.endr:重复执行伪操作。
  • .equ:给符号赋值。

与函数相关的伪指令

.global:定义一个全局的符号,可以是函数的符号,也可以是全局变量的符号。
 .include:引用头文件。
.if, .else, .endif:控制语句。
 .ifdef symbol:判断 symbol 是否定义。
 .ifndef symbol:判断 symbol 是否没有定义。
 .ifc string1,string2:判断字符串 string1 和 string2 是否相等。
 .ifeq expression:判断 expression 的值是否为 0。
.ifeqs string1,string2:等同于.ifc。
.ifge expression:判断 expression 的值是否大于或等于 0。
.ifle expression:判断 expression 的值是否小于或等于 0。
 .ifne expression:判断 expression 的值是否不为 0。

与段相关的伪指令
.section name, "flags
与宏相关的伪指令
.macro macname macargs ...
 

参考:

汇编语言伪指令概览-CSDN博客

汇编五、伪指令与汇编程序结构_51单片机伪指令-CSDN博客

http://www.dtcms.com/a/59979.html

相关文章:

  • Vue3 模板引用:打破数据驱动的次元壁(附高阶玩法)
  • openwrt路由系统------lua、uci的关系
  • SAP HANA Merge
  • 【C++设计模式】第十六篇:迭代器模式(Iterator)
  • mysql进阶(五)
  • Windows控制台函数:控制台读取输入函数ReadConsoleA()
  • STM32中输入/输出有无默认电平
  • C++的内存管理
  • 单片机项目复刻需要的准备工作
  • SpringBoot参数校验:@Valid 与 @Validated 详解
  • nginx反向代理功能
  • LeetCode1871 跳跃游戏VII
  • 江协科技/江科大-51单片机入门教程——P[5-1] 模块化编程 P[5-2] LCD1602调试工具
  • 用Python写一个算24点的小程序
  • 在【k8s】中部署Jenkins的实践指南
  • CTFHub-FastCGI协议/Redis协议
  • 最新版本WebContext构造函数-避坑
  • 推理大模型的后训练增强技术-强化学习篇
  • LeetCode 哈希章节
  • Unity入门学习笔记(Day01)
  • JWT的学习
  • 探索大数据分析的无限可能:R语言的应用与实践
  • 远程登录客户端软件 CTerm 发布了 v4.0.0
  • PySide(PyQT)的contains() 方法
  • javascrip网页设计案例,SuperSlide+bootstrap+html经典组合
  • Docker中GPU的使用指南
  • 论文阅读笔记——Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware
  • 【C++指南】一文总结C++类和对象
  • Primer - 自适应学习,AI学习工具
  • 从 GitHub 批量下载项目各版本的方法