Intelx86資料手冊讀書筆記---1
1. 第一章
a. 符號約定
a1. 位元組順序
a2. 保留的位元位和軟體相容性
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. 異常
異常是當指令引發錯誤、斷點停止、中斷處理的一個事件。