彙編零碎知識點

條件碼:
①OF(Overflow Flag)溢出標誌,溢出時爲1,否則置0.標明一個溢出了的計算,如:結構和目標不匹配.
②SF(Sign Flag)符號標誌,結果爲負時置1,否則置0.
③ZF(Zero Flag)零標誌,運算結果爲0時置1,否則置0.
④CF(Carry Flag)進位標誌,進位時置1,否則置0.注意:Carry標誌中存放計算後最右的位.
⑤AF(Auxiliary carry Flag)輔助進位標誌,記錄運算時第3位(半個字節)產生的進位置。
    有進位時1,否則置0.
⑥PF(Parity Flag)奇偶標誌.結果操作數中1的個數爲偶數時置1,否則置0.

控制標誌位:
⑦DF(Direction Flag)方向標誌,在串處理指令中控制信息的方向。
⑧IF(Interrupt Flag)中斷標誌。
⑨TF(Trap Flag)陷井標誌。


test eax. eax

將2操作數做與操作。(如果eax值爲0,則Z標誌位置1)(test邏輯與運算結果爲零,就把ZF(零標誌)置1;)


cmp  opr, src

實質是對2操作數相減,改變標誌位ZF。opr==src則,ZF=0 (cmp 算術減法運算結果爲零,就把ZF(零標誌)置1)


所有函數或過程調用後的返回值都是存放在EAX中


00400000到00401000存儲的是PE文件的文件頭(包括MOS頭在內的各種亂七八糟的頭)


test eax eax                       ;eax爲0,設置ZF=1,否則爲0

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