8086CPU的段暫存器

2021-09-30 07:40:44 字數 740 閱讀 1844

段位址由段寄存器提供。

8086cpu的段暫存器有4個,包括:cs,ds,ss,es

cs

而cs是提供**段的段位址(code segment),而偏移位址是由ip

暫存器提供。

在8086cpu中,任意時刻,設cs中的內容為m,ip中的內容為n,8086cpu將從記憶體m x 16 + n單元開始讀取一條指令並執行。

來實現修改cs和ip的值。

jmp 2ae3:3,執行後:cs=2ae3h,ip=0003h。

若只想修改ip的值,可以使用「jmp 某一合法暫存器」的指令實現,如:jmp ax 執行後 ip = ax。

8086cpu的工作過程:

(1)從cs:ip指向的記憶體單元讀取指令,讀取的指令進入指令緩衝器。

(2)ip指向下一條指令。

(3)執行指令。(從步驟(1)開始重複這個過程)

ds

mov bx, 1000h

mov ds, bx

mov al, [0]

上面的**中,「[...]」表示乙個記憶體單元,「[...]」中的0表示記憶體單元的偏移位址,而段位址就預設在ds暫存器中。

8086CPU暫存器總結

通用暫存器 ax,bx,cx,dx ax可以分成ah和al各8bit來用,bx可以分成bh和bl各8bit來用,cx可以分成ch和cl各8bit來用,dx可以分成dh和dl各8bit來用,如cs內容為m,ip內容為n,則cpu將從m 16 n位址讀取指令執行 mov bx,1000h mov ds,...

8086CPU各暫存器的用途

8086 有14個16位暫存器,這14個暫存器按其用途可分為 1 通用暫存器 2 指令指標 3 標誌暫存器和 4 段暫存器等4類。1.通用暫存器有8個,又可以分成2組,一組是資料暫存器 4個 另一組是指標暫存器及變址暫存器 4個 資料暫存器分為 ah al ax accumulator 累加暫存器,...

8086CPU 取指令 執行 暫存器 理解

問題描述 學習x86的過程中對cpu的取指 執行工作原理一直是一知半解,上網查了很多相關,發現都講的不全或者說很模糊。所以,經過自己長時間的查閱總結,終於畫出了下圖。在此之前需要說明下 cs 段暫存器 ip 指令指標暫存器 x86cpu 位址寬度20,但是cpu只能提供16位的訪問寬度,因此cpu把...