Chinaunix首页 | 论坛 | 博客
  • 博客访问: 222288
  • 博文数量: 253
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 3
  • 用 户 组: 普通用户
  • 注册时间: 2014-09-21 12:29
文章分类

全部博文(253)

文章存档

2014年(253)

我的朋友

分类: LINUX

2014-09-21 12:47:38

AT&T汇编是UNIX下惯用的汇编格式   
  l   ,w,b是AT&T汇编中用来表示操作属性的限定符   
    
  l是长字(4字节),   
  w是双字   
  b是一个字节   
    
  加在指令的后边   
  相当于intel中的   
  dword   ptr   
  word   ptr   
  byte   ptr   
    
    
  比如:   
  subl $8,   %esp   
  leal -792(%ebp),   %eax   
  pushl %eax   
  movl -796(%ebp),   %eax   
  sall $8,   %eax   
  addl 12(%ebp),   %eax   
  pushl %eax   
  call _strcpy   
  addl $16,   %esp   
    
  在intel   汇编中就相当于:   
            sub   esp,8   
            lea   eax,dword   ptr   [ebp-792]   
            push   eax   
            mov   eax,dword   ptr   [ebp-   796]   
            ...   
  AT&T格式的汇编和intel编的差别可以参看有关AT&T汇编的书


l就是32位的意思。
阅读(601) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~