彙編筆記 通用暫存器及堆疊

2021-10-11 03:13:41 字數 1147 閱讀 5247

暫存器(32位)

主要用途

編號eax

累加器1

ecx計數

2edx

i/o指標

3ebx

ds段的資料指標

4esp

堆疊指標(棧底)

5ebp

ss段的資料指標(棧頂)

6esi

字串的源指標;ss段的資料指標

7edi

字串操作的目標指標;es段的資料指標

8範圍:0–0xffffffff

,位址編號(棧底)

mov [reg]

,位址編號(棧頂)

mov dword ptr ds:[reg-

4](棧頂-

4),立即數

sub [reg],4(將棧頂向上移動四位)

lea [reg]

,dword ptr ds:

[reg-

4](先移動棧頂)

mov dword ptr ds:[reg],立即數(將數值存入棧頂)

mov [reg],dword ptr ds:

[reg

(棧底)

-立即數]

[reg

(棧頂)

+立即數]

push指令:將數值「壓」入棧頂,並將棧頂編號-4/-2;

pop指令:將棧頂中的數值「彈」出到暫存器中,並將棧頂編號+4/+2;

格式:

push 立即數/

[reg]

push dword ptr ds:[記憶體編號]

word

pop [reg]
注釋:①push指令後 若為立即數或32位暫存器/記憶體,則棧頂編號-4;若為16位暫存器/記憶體,則棧頂編號-2(pop指令同理)

②不允許push8位暫存器或記憶體

將八個暫存器中的數值壓入/彈出記憶體

暫存器(通用暫存器)

因為學習使用的是王爽的 組合語言 第3版 因此也只能提到8086cpo的暫存器。對於其他而言,原理都是相通的。對於8086暫存器,有14個暫存器,主要是 ax bx cx dx si di sp bp ip cs ss ds es psw。一 通用暫存器 8086的通用暫存器有ax bx cx dx...

彙編 通用暫存器及標誌位全稱

ax accumulator 累加器 bx base 基址暫存器 cx count 計數暫存器 dx data 資料暫存器 sp stack point 堆疊指標暫存器 bp base pointer 基址指標暫存器 si source inder 源變址暫存器 di destination ind...

組合語言 通用暫存器

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