C指针原理(5)-AT&T汇编
来源:互联网 发布:股票基本面软件 编辑:程序博客网 时间:2024/06/05 03:40
.section .data myvalue: .byte 67,68,69,70,0 mygs: .asciz "%c\n" .section .text.globl main main: #基地址(偏移地址[必须为寄存器],数据元素变址,数据元素长度[必须为寄存器],) #基地址+偏移地址+数据元素变址*数据元素长度 movl $2,%ecx movl myvalue(,%ecx,1),%ebx #将myvalue的变址为2,长度为1的数据值移到ebx中 push %ebx push $mygs call printf push $0 call exit
这段代码将输出ASCII码为69的字符“E”
有2种方式,能以变址和基址结构的方式访问内存
1)基地址(偏移地址[必须为寄存器],数据元素变址,数据元素长度[必须为寄存器],)
2)基地址+偏移地址+数据元素变址*数据元素长度
上面代码采用了第1种方式:
movl $2,%ecx
movl myvalue(,%ecx,1),%ebx
myvalue这个变量的内容是:67,68,69,70,0
%ecx寄存器的值是数据元素变址,是2,数据元素长度是1
67所在内存地址加上变址2,就是myvalue的以1个字节为单位组成的5个元素中,第3个元素的位置
movl myvalue(,%ecx,1),%ebx 将第3个元素E的ASCII码放在ebx寄存器中,然后入栈,做为printf的参数
本博客所有内容是原创,如果转载请注明来源
http://blog.csdn.net/myhaspl/
- C指针原理(5)-AT&T汇编
- C指针原理(1)-AT&T汇编
- C指针原理(2)-AT&T汇编
- C指针原理(3)-AT&T汇编
- C指针原理(4)-AT&T汇编
- C指针原理(28)-AT&T汇编
- C指针原理(29)-AT&T汇编
- C指针原理(30)-at&t汇编-快速排序
- AT&T 汇编调用C库函数
- (5)AT&T汇编笔记
- AT & T汇编简介
- AT&T 汇编参考
- AT&T汇编格式
- AT & T汇编简介
- AT&T汇编
- AT&T 汇编学习
- AT&T汇编
- AT&&T汇编格式
- qsort 的用法讲述
- 用Thymeleaf替换JSP
- HDU 1556(线段树+dfs)
- javaweb项目是最常见的http状态码
- 知识管理系统
- C指针原理(5)-AT&T汇编
- Mybatis代码自动生成插件使用
- javaI/O零碎
- 内部排序算法实现(C) [李园7舍_404]
- C指针原理(6)-C内嵌汇编
- Qt中 int ,float ,double转换为QString
- linux查找文件命令
- IOS系列——UItableview的基础使用
- MyReport报表引擎2.7.6.0与MyReport.TD套打引擎1.0.5.0