Win32 彙編 常用暫存器的常規功能

2021-06-07 00:42:52 字數 911 閱讀 9912

通用暫存器

eax 累加(accumulator)暫存器 ax(ah、al) 常用於乘、除法和函式返回值

ebx 基址(base)暫存器 bx(bh、bl) 常做記憶體資料的指標

ecx 計數器(counter)暫存器 cx(ch、cl) 常做字串和迴圈操作中的計數器

edx 資料(data)暫存器 dx(dh、dl) 常用於乘、除法和 i/o 指標

esi **索引(source index)暫存器 si 常做記憶體資料指標和源字串指標

edi 目的索引(destination index)暫存器 di 常做記憶體資料指標和目的字串指標

esp 堆疊指標(stack point)暫存器 sp 只做堆疊的棧頂指標; 不能用於算術運算與資料傳送

ebp 基址指標(base point)暫存器 bp 只做堆疊指標, 可以訪問堆疊內任意位址; 不能用於算術運算與資料傳送

標誌暫存器 eflags 標誌(flag)暫存器: eflags 中的 32 位被分成 0-31 個二進位制位分別使用; 第 0、2、4、6、7、11 位是狀態標誌位; 第 10 位是字串操作控制標誌位; 其他標誌位一般不用或無權使用  0 cf 進製(carry)標誌 目標無法容納無符號算術運算的結果, 需要進製或借位時被設定; 可用 stc 指令設定, clc 指令取消. 1 2 pf 奇偶(parity)標誌 低 8 位中有偶數個 1 時被設定 3 4 af 輔助(auxiliary)標誌 使用 bcd 碼運算導致 3 位到 4 位產生進製時被設定 5 6 zf 零(zero)標誌 運算結果為 0 時被設定 7 sf 符號(sign)標誌 運算結果為負數時被設定 8 9 10 df 方向(direction)標誌 字串操作是從高位到低位時被設定; 可用 std 指令設定, cld 指令取消. 11 of 溢位(overflow)標誌 因有符號運算的結果太寬而導致資料丟失時被設定 ...

彙編速查 IA32暫存器組織

暫存器 描述通用暫存器 8個32位,儲存正在處理的資料 段暫存器 6個16位,處理記憶體訪問 指令指標暫存器 1個32位,指向要執行的下一條指令碼 浮點資料暫存器 8個80位,浮點資料 控制暫存器 5個32位,確定處理器的操作模式 除錯暫存器 8個32位,在除錯處理器時包含資訊 暫存器描述 eax用...

WIN32彙編的高階語法

1 條件測試語句 操作符和邏輯運算 操 作 用 途 等於變數和運算元之間的比較 不等於變數和運算元之間的比較 大於 變數和運算元之間的比較 大於等於 變數和運算元之間的比較 小於 變數和運算元之間的比較 小於等於 變數和運算元之間的比較 位測試將變數和運算元做 與 操作 邏輯取反 對變數取反或對表示...

彙編基礎 常用暫存器及其用途

通用暫存器的主要用途 暫存器的分類 暫存器主 要 用 途 通 用暫存器 資料 暫存器 ax乘 除運算,字的輸入輸出,中間結果的快取 al位元組的乘 除運算,位元組的輸入輸出,十進位制算術運算 ah位元組的乘 除運算,存放中斷的功能號 bx儲存器指標 cx串操作 迴圈控制的計數器 cl移位操作的計數器...