1. 程式人生 > >Intelx86資料手冊讀書筆記---1

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. 異常

    異常是當指令引發錯誤、斷點停止、中斷處理的一個事件。