Linux汇编教程04:寻址方式
2015-05-09 11:48
225 查看
这一节,我们主要来讨论寻址方式,这一点十分重要。
我们上一节有稍微提了一下,内存地址引用的通用格式:
地址或偏移(%基址寄存器, %索引寄存器, 比例因子 )
结果地址 = 地址或偏移 + %基址寄存器 + 比例因子 + %索引寄存器
地址或偏移和比例因子必须是常数,剩下的那两个必须是寄存器,在缺省的情况下,都用0来代替。
立即寻址方式
直接将值加载到目地位置中
movl $221, %eax
直接寻址方式
通过使用地址或偏移来实现
movl ADDRESS, %eax
索引寻址方式
通过地址或偏移以及%索引寄存器部分实现。你可以将任何通用寄存器用作索引寄存器。
movl data_items( , %ebx, 4 ), %eax
间接寻址方式
以寄存器中的值作为地址,获得这个地址里的值。
movl (%eax), %ebx
基址寻址方式
和间接寻址类似,但多了一个常量和寄存器中的地址相加,
movl 4(%eax), %ebx
寄存器寻址方式
就是数据的移入移出
这些方式大家要理解他们的特点,了解原理,到时候讲到堆栈之类的方便多了。
补充:
我们之前有讲过,32位寄存器都以e开头开头哦,%eax是我们的扩展寄存器,这种命名实现对以前的兼容,以前使用%ax的16位寄存器,当然32位寄存器也可以使用%ax,%ax是%eax最低有效字(数值的后半部分),同理%ax还可以封出一字节的%ah和%al。%ah是%ax中最高有效半字,%al是最低有效半字
版权声明
Moriarty_221为本文的CSDN博客如未注明,均为原创,转载请注明出处
转载请注明:coskimo » Linux汇编教程04:寻址方式
版权所有 © 科斯基摩 | 本网站采用cc by-nc-sa 3.0协议进行授权
相关文章推荐
- Linux汇编教程04:寻址方式
- 汇编语言寻址方式(Linux)
- Linux下汇编学习-3寻址方式
- 网易云课堂《Linux内和分析》汇编分析和寻址方式小结(一)
- 汇编语言基础教程-寻址方式
- 8086汇编寻址方式教程
- 汇编寻址方式总结
- 8086汇编5:更灵活的寻址方式
- 汇编--学习笔记(二)-寻址方式
- 关于OD破解汇编基础知识(二)--寻址方式
- 16位汇编 使用word ptr和byte ptr的寻址方式
- 【学习笔记】汇编:如何区分寻址方式
- Linux的进程/线程间通信方式总结 04
- 王爽 汇编语言 第二版 实验七 寻址方式在结构化数据访问中的使用 源码
- ARM汇编编程基础之三 —— 基本寻址方式与基本指令
- [鸟哥linux视频教程整理]01_04_linux操作系统基础
- linux 内核源代码情景分析——Intel X86 CPU 系列的寻址方式
- linux下的C语言开发(AT&T 汇编语言) 04
- CentOS 7 中以命令行方式安装 MySQL 5.7.11 for Linux Generic 二进制版本教程详解
- 汇编语言——寻址方式的综合应用及转移指令的原理