Chinaunix首页 | 论坛 | 博客
  • 博客访问: 73107
  • 博文数量: 14
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 126
  • 用 户 组: 普通用户
  • 注册时间: 2015-08-13 23:44
个人简介

信息安全出身、高性能流媒体服务器开发从业者、CDN、linux爱好者、HLS

文章分类

全部博文(14)

文章存档

2016年(14)

我的朋友

分类: LINUX

2016-03-05 12:53:16

Memory instructions: MOV, PUSH, POP, etc
Most instructions can take a memory address
b,w,l,q分别代表8位, 16位,32位和64位

以下是几种命令的等价方式:

pushl %eax    
    subl $4,%esp
    movl %eax, (%esp)

popl %eax
    movl (%esp), %eax
    addl %4,%esp

call 0x12345
    pushl %eip(*)
    movl $0x12345, %eip(*)?

ret  
    popl %eip(*)

enter 
    pushl %ebp
    movl %esp,%ebp

leave 
    movl %ebp,%esp
    popl %ebp


AT&T语法链接:http://www.ibm.com/developerworks/cn/linux/l-assembly/index.html
阅读(1475) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~