转载用于收藏学习,原文地址 http://t.csdn.cn/AiyKN
项目 | AT&T(苹果模拟器) | intel | 说明 |
---|---|---|---|
寄存器命名 | %rax | rax | |
操作数顺序 | movq %rax, %rdx | mov rdx, rax | 将rax 的值赋值给rdx |
常数\立即数 | movq $3, %rax movq $0x10, %rax | mov rax, 3mov rax, 0x10 | 将3赋值给rax将0x10赋值给rax |
内存赋值 | movq $0xa, 0x1ff7(%rip) | mov qword ptr [rip+0x1ff7], 0xa | 将0xa赋值给地址为rip +0x1ff7的内存空间 |
取内存地址 | leaq -0x18(%rbp), %rax | lea rax, [rbp – 0x18] | 将rbp – 0x18这个地址值赋值给rax |
jmp指令 | jmp *%rdx jmp 0x4001002 jmp *(%rax) | jmp rdx jmp 0x4001002 jmp [rax] | call和jmp写法类似 |
操作数长度 | movl %eax, %edx movb $0x10, %al leaw 0x10(%dx), %a | mov edx, eax mov al,0x10 lea ax, [dx + 0x10] | b = byte (8-bit) s = short (16-bit integer or 32-bit floating point) w = word (16-bit) l = long (32-bit integer or 64-bit floating point) q = quad (64 bit) t = ten bytes (80-bit floating point) |
————————————————
版权声明:本文为CSDN博主「~废弃回忆 �༄」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/eastWind1101/article/details/122507926