si源變址暫存器,di目地變址暫存器, 都是變址暫存器,都是在某個位址的基礎上進行偏移變化,因此都需要基址暫存器。
(1)si di 一般與資料段暫存器ds聯用,用來確定資料段中某一儲存單元的位址。這兩個暫存器有自動增量和自動減量的功能所以用於變址是很方便的。
(2) 在串處理指令中si 和di作為隱含的源變址和目的變址暫存器,此時 si和ds聯用,di和es聯用,分別達到在資料段和附加段中定址的目的。
si(source index):源變址暫存器可用來存放相對於ds段之源變址指標;
di(destination index):目的變址暫存器,可用來存放相對於 es 段之目的變址指標。
si di是8086cpu中和bx功能相近的暫存器,si di不能夠分成兩個8位暫存器來使用.
它們只能用做16位暫存器,一般用來存放位址。在串處理指令中,si用作隱含的源串位址,預設在ds中;di用做隱含的目的串位址,預設在es中。 分別達到在資料段和附加段中定址的目的.
在8086cpu中,只有bx,si,di,bp這4個暫存器可以用在[...]中來進行記憶體單元的定址
在[...]中,這4個暫存器可以單個出現或只能以四種組合出現;bx和si,bx和di,bp和si,bp和di。
codesg segment
start:mov ax,datasg
mov ds,ax
mov si,0
mov di,16
mov cx,8
s:mov ax,[si]
mov [di],ax
add si,2
add di,2
loop s
mov ax,4c00h
int 21h
codesg ends
end start
暫存器(通用暫存器)
因為學習使用的是王爽的 組合語言 第3版 因此也只能提到8086cpo的暫存器。對於其他而言,原理都是相通的。對於8086暫存器,有14個暫存器,主要是 ax bx cx dx si di sp bp ip cs ss ds es psw。一 通用暫存器 8086的通用暫存器有ax bx cx dx...
暫存器,標誌暫存器
涉及硬體傳輸資料的,往往包含以下內容 1.資料傳輸引腳 資料放 2.控制引腳 怎麼控制 3.狀態引腳 結果如何 暫存器相當於cpu內部的儲存單元,可能是連續排列,相當於 c語言中的陣列。一 8個通用暫存器 16 bit accumulate axah alr0 count cxch clr1 dat...
CS 暫存器 和 IP 暫存器
下面將要介紹的是一組非常非常重要的暫存器,即 cs ip cs ip 兩個暫存器指示了 cpu 當前將要讀取的指令的位址,其中cs 為 段暫存器,而ip 為指令指標暫存器。什麼叫做指示了 cpu 當前將要讀取的指令呢?在 8086 cpu 中,為什麼 cpu 會自動的執行指令呢?這些指令肯定是存放在...