AT&T汇编格式主要用在Unix/Linux系统中,但是国内计算机课主要是以Intel汇编为主,其实这两种汇编只是语法格式不同而已,只要知道了两者的区别,有Intel汇编基础的人能很快的看懂AT&T汇编代码。下面是两种汇编主要的区别:
1.
AT&T中会在指令结尾用一个字母来表示操作数大小。其中:“b”表示byte;“w”表示word;“l ”表示long。
Intel只是在处理内存操作数时加上BYTE PTR、WORDPTR、DWORD PTR的前缀。
例如:
AT&T
movl % eax, %ebx
movl (% ebx), %eax