X86 匯編/ASM語法

維基教科書,自由的教學讀本

x86匯編有兩種主要語法:

  • Intel 語法: 被 NASM, FASM, MASM, TASM, YASM 及 GAS採用
  • AT&T 語法: GAS默認語法, 用.intel_syntax指示Intel語法.

FASM採用Intel語法:

  • 命令參數順序: 右至左.
    命令 靶, 
    
  • 參數尺寸: 由暫存器名字決定.
    mov eax, 0x11223344
    
  • AT&T語法用特殊記號如前綴$表立即數及%表暫存器. 而Intel語法採用不同名字來區分暫存器, 恆數等.
  • 有效地址.
    mov eax, [ebx+ecx*4+内存地址]