1. 第一章架构
a. 符号约定 spa
a1. 字节顺序事件
a2. 保留的比特位和软件兼容性table
a3. 指令操做数兼容性
a4. 十六进制和二进制数软件
a5. 分段地址语法
a. 符号约定二进制
a1. 字节顺序程序
intel的32和64架构均使用小端地址模式。小端:高字节在高地址,大端:高字节在低地址。例如:数据
31 24 23 16 15 8 7 0
Byte3 | byte2 | byte1 | byte0 |
Byte0 | Byte1 | Byte2 | Byte3 |
4 小端
0 大端
a2. 保留的比特位和软件兼容性
大多数寄存器都有地址映射,某些位可能标记为保留,以便将来使用。软件应视其为未知、无效的。
使用保留位可能发生意想不到的错误,也不利于软件的兼容性。
a3. 指令操做数
指令的形式以下,标签:助记符 参数一,参数二,参数三。标签,暗示一段代码或者数据的开始,指
向代码或数据段的首地址;助记符,指令做用的符号;参数可选。
a4. 十六进制和二进制数
十六进制以H符号结尾,二进制数以B符号结尾。例如:OFB2EH为十六进制,10111B为二进制。
a5. 分段地址
处理器使用字节寻址,也就是说地址空间由一个个字节组成,不管一次访问一个或者多个字节,一个
地址只能对应于一个字节。处理器支持分段地址,有的程序的代码、数据、栈可能不在同一个段内,可
以使用下列形式访问:
DS:ffeeH
CS:EIP
a5. 新的获取CPUID、CR和MSR寄存器值的语法
经过使用CPUID指令、检查控制寄存器对应位或读模式声明寄存器获取特性标志、状态或系统信息。
a6. 异常
异常是当指令引起错误、断点中止、中断处理的一个事件。