AT&T汇编语言寻址方式

本文介绍了AT&T汇编语言的寻址方式,包括立即数寻址、寄存器寻址、直接寻址、间址寻址、基址寻址、变址寻址和比例变址寻址,并提供了相应的代码示例,帮助读者深入理解汇编语言在Linux环境中的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        现在,能够静下心来去读一段汇编代码的程序员已经不多,因为大多数人的工作中基本用不到。但是能够读懂汇编代码能够提高程序员对程序如何在机器上跑起来的理解和提高程序员的基本功。

        想要看懂汇编语言,首先就要熟悉汇编语言各种寻址方式。汇编语言不同的代码格式,本文主要介绍AT&T。Linux 内核使用的就是这样格式,linux 上的工具如gcc和objdump默认生成的代码也是AT&T格式。

        简单说一下AT&T汇编,"#"井号开头的是注释行,"."点开始的指令一般都是伪指令,"$"美元符号修饰立即数,"%"修饰寄存器。AT&T 和Intel格式的对比可以参考这篇文章 https://www.ibm.com/developerworks/cn/linux/l-assembly/


汇编语言寻址方式主要有下表几种方式:



1. 立即数寻址

把常数放到寄存器或存储器中

movl $2, %ebx  # 把2放到寄存器ebx中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值