IA-32常用指令類型

1.傳送指令

-通用數據傳送指令

      MOV:一般傳送,movb、movw、movl等(b是8位,w是16位,l是32位)。

     MOVS:符號擴展傳送,movsbw(比如把char型賦值給int型,高8位就用char型變量第一位的符號進行擴展)、movswl。

     MOVZ:零擴展傳送,movzwl、movzbl等。

     XCHG:數據交換

    PUSH/POP:出棧/入棧,pushl、popw等

 

-地址傳送指令

   LEA:加載有效地址,leal(%edx,%eax),%eax的功能是把eax基址寄存器內容加上eax變址寄存器內容傳給eax。

 

2.定點算法運算指令

 

3.控制轉移指令

-無條件轉移指令

    JMP DST:無條件轉移到目標指令DST 處執行

-條件轉移

   Jcc DST:cc爲條件碼

-調用和返回指令

  CALL DST:返回地址RA入棧,轉DST處執行

  RET:從棧中取出返回地址RA,轉到RA處執行

  1. CF(進位標誌) =1 算術操作最高位產生了進位或借位 =0 最高位無進位或借位 ;

  2. PF(奇偶標誌) =1 數據最低8位中1的個數爲偶數 =0 數據最低8位中1的個數爲奇數;

  3. AF(輔助進位標誌) =1 D3→D4位產生了進位或借位 =0 D3→D4位無進位或借位;

  4. ZF(零標誌) =1 操作結果爲0 =0 結果不爲0;

  5. SF(符號標誌) =1 結果最高位爲1 =0 結果最高位爲0;

  6. OF(溢出標誌) =1 此次運算髮生了溢出 =0 無溢出。

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章