程序的机器级表示
IA32和X86-64(AMD)
32位和64位
ISA
instruction system architecture
重要寄存器
- 程序计数器PC %eip
- 整数寄存器 8个每个32位
有的用来记录状态,有的用来保存临时数据,局部变量,返回值
3.条件码寄存器
字 16位,双字double word, 4字
- 指针都是双字
- char short long 其他4字节
- movb movw movl
32位的寄存器
%al %ah -> %ax -> %eax
%eax %ebx %ecx %edx %edi %esi %esp %ebp
存取数
Imm(Ea,Eb,s) -> M[Imm + R[Ea] + R[Eb] * s]
只有完整的寄存器可以()
只有完整的寄存器可以()
习题
3.1
操作数 | 值 |
---|---|
%eax | 0x100 |
0x104 | 0x104 -> 0xAB |
$0x108 | 0x108 |
(%eax) | 0xFF |
4(%eax) | 0xAB |
9(%eax,%edx) | 0x11 |
260(%ecx,%edx) | ->0x13 |
0xFC(,%ecx,4) | 0 |