GNU汇编

  1. 操作数方向和 Intel 语法的刚好相反。

  2. 寄存器名称有 "%" 前缀

  3. 立即数以 "$" 为前缀。

  4. 存储器操作数的大小取决于操作码名字的最后一个字符。操作码后缀 'b' 、'w'、'l' 分别指明了字节(8位)、字(16位)、长型(32位)存储器引用。

  5. 基址寄存器变为 "(" 和 ")"。另外,在 Intel 语法中, 间接内存引用"section:base + index\*scale + disp",在 AT&T中变为 "section:disp(base, index, scale)"。

  6. 需要牢记的一点是,当一个常量用于 disp 或 scale,不能添加 "$" 前缀。

Intel AT&T
mov eax,ecx movl (%ecx),%eax
mov eax,ebx+3 movl 3(%ebx),%eax
add eax,ebx+ecx\*2h addl (%ebx,%ecx,0x2),%eax
sub eax,ebx+ecx\*4h-20h subl -0x20(%ebx,%ecx,0x4),%eax
----- -----
----- -----

"="修饰符表明它是一个只读的输出操作数。

"r" 表明可以使用任一寄存器存储操作数。

参考链接:

  1. https://www.linuxprobe.com/gcc-how-to.html
  2. https://blog.csdn.net/superSmart_Dong/article/details/117573516
相关推荐
极客互动API2 天前
企业微信 iPad 协议服务搭建与 AI 回调实战
网络·汇编·人工智能·微信·企业微信·ipad
wechatbot8887 天前
极客互动企业微信 SCRM 私域运营实战效果全景
大数据·汇编·微信·自动化·企业微信·rpa
祈禾12 天前
计算机组成原理之编译、汇编、链接、解释
开发语言·汇编·笔记·学习
水饺编程14 天前
AT&T 汇编语言学习笔记开篇语
c语言·汇编·c++
iCxhust14 天前
8088单板机VScode集成开发环境使用方法二(汇编版)
汇编·单片机·微机原理·8088单板机
·薯条大王14 天前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
txg66615 天前
VULOC:基于汇编切片的漏洞定位框架,精准锁定二进制中的危险代码
汇编·人工智能·深度学习·安全·网络安全
sunburn-16 天前
Java 队列全面详解:从入门到面试实战
java·开发语言·汇编·ide·idea
wechatbot88823 天前
企业微信API开发:登录-联系人查询-消息发送完整开发流程分享
汇编·微信·自动化·企业微信·ai编程·rpa
00后程序员张24 天前
iOS加固技术路线全面解析:Bitcode模式、源码模式与汇编模式对比及爱加密优势
android·汇编·ios·小程序·uni-app·cocoa·iphone