美文网首页
[ATT汇编]后缀字母:b字节=1字节 w字=2字节 l双字=4

[ATT汇编]后缀字母:b字节=1字节 w字=2字节 l双字=4

作者: AkuRinbu | 来源:发表于2019-04-25 16:28 被阅读0次

学习资料

AT&T Assembly Syntax
https://csiflabs.cs.ucdavis.edu/~ssdavis/50/att-syntax.htm

X86 Assembly/GAS Syntax
https://en.wikibooks.org/wiki/X86_Assembly/GAS_Syntax

POPF/POPFD/POPFQ — Pop Stack into EFLAGS Register
https://www.felixcloutier.com/x86/popf:popfd:popfq

ATT汇编 后缀字母

b 字节 = 1字节
w 字 = 2字节
l 双字 = 4字节
q 四字 = 8字节

GAS assembly instructions are generally suffixed with the letters"b", "s", "w", "l", "q" or "t"to determine what size operand is being manipulated.
ATT汇编语法使用这些字母后缀来表示操作的数据长度

ATT汇编 后缀字母

易混淆举例

出栈指令

  • ATT格式的汇编里,出栈指令是 pop + 后缀字母 比如:popq %rax

同时在Intel格式的汇编里
[010][汇编语言]栈 栈顶SS:IP 出栈pop 入栈push
https://www.jianshu.com/p/4d8ca702549d

特殊出栈 - 填充标志寄存器flags

  • ATT格式的汇编里,填充标志寄存器flags,用 POPF POPFD POPFQ
填充标志寄存器flags
POPFQ 中的POP 代表出栈F表示填充标志寄存器Q代表数据长度即四字

同时在Intel格式的汇编里
[056][汇编语言]检测点11.4 pushf 与 popf
https://www.jianshu.com/p/94461cfddbc7

记忆点

  • 只要记住popf中的f代表的是标志寄存器flags,而不是数据长度,ATT里面的后缀字母列表是没有f这个字母的;

相关文章

  • [ATT汇编]后缀字母:b字节=1字节 w字=2字节 l双字=4

    学习资料 AT&T Assembly Syntaxhttps://csiflabs.cs.ucdavis.edu/...

  • 内存

    基本类型的内存 boolean 1字节 byte 1字节 char 2字节 short 2字节 int 4字节...

  • java - 012 - IO

    mark UTF - 8 它是一种变长的字符集表示:单字节来表示字母,双字节来表示一些希腊字母,三字节来表示汉字,...

  • 字、字节等存储单位说明

    字 word字节 byte位 bit1字(1w) = 2字节(2 byte)1字节(1 byte) = 8位(8 ...

  • java 基础

    int 4字节, short 2字节, long8字节, byte 1字节, float 4字节 (F),doub...

  • JAVA 1 2 课

    (1)byte(字节型) 1字节short(短整型) 2字节int(整型) 4字节long(长整型)8字节f...

  • 数据类型(基础一)

    一个字节:八位 各类型所占字节: byte: 1字节, char:2字节 short:2字节 int: 4字节 f...

  • 第一弹

    1)字节,字,位,比特,千字节: 1比特(bit) = 1位(bit)1字(word)= 2字节(byte,B)=...

  • JAVA 字符,字符串比较

    byte(字节型) 1字节 short(短整型) 2字节 int(整型) 4字节 long(长整型)8字节 fl...

  • int char long 各占多少字节数

    java中有八种基本类型 byte 1字节 short 2字节 int 4字节 long 8字节 float 4 ...

网友评论

      本文标题:[ATT汇编]后缀字母:b字节=1字节 w字=2字节 l双字=4

      本文链接:https://www.haomeiwen.com/subject/mpuzgqtx.html