-
關(guān)于數(shù)據(jù)處理的兩個重要問題
- 要處理的數(shù)據(jù)在什么地方?
- 要處理的數(shù)據(jù)有多長(字節(jié))?
-
bx, bp, bi, si
- 在8086CPU中,只有這四個寄存器可以使用
[...]
- 這四個寄存器可以單個出現(xiàn),或者能以四種組合出現(xiàn):
[bx+si], [bx+di], [bp+si], [bp+di]
- 在8086CPU中,只有這四個寄存器可以使用
其中當(dāng)使用
bx
時,段地址默認(rèn)是ds
,使用bp
時,段地址默認(rèn)為ss
-
機(jī)器指令處理的數(shù)據(jù)在什么地方
- 內(nèi)存單元
- 寄存器
- 端口(本文暫不介紹)
mov ax, [bx] ;內(nèi)存單元 mov ax, bx ;寄存器 mov ax, idata ;指令緩沖期
-
匯編語言中數(shù)據(jù)位置的表達(dá)
- 立即數(shù)(idata)
- 寄存器
- SA:EA
尋址方式
尋址方式 | 常用格式舉例 |
---|---|
[bx], [si], [di], [bp] | [bx] |
[bx+idata],[bp+idata],[si+idata],[di+idata] | 用于結(jié)構(gòu)體: [bx].idata;用于數(shù)組: idata[bx];用于二維數(shù)組: [bx][idata] |
[bx+si],[bx+di],[bp+si],[bp+di] | 用于二維數(shù)組: [bx][si] |
[bx+si+idata], [bx+di+idata], [bp+si+idata], [bp+di+idata] | 用于結(jié)構(gòu)體的數(shù)組: [bx].idata[si]; 用于二維數(shù)組: idata[bx][si] |
-
div指令
形式如下: div reg 或者 div 內(nèi)存單元- 除數(shù)為8位,被除數(shù)為16位,則被除數(shù)默認(rèn)在AX
余數(shù)存在AH,商存在AL - 除數(shù)為16為,被除數(shù)為32位,則被除數(shù)的高位在DX,低位在AL,
余數(shù)存在DX,商存在AX
余高,低商
- 除數(shù)為8位,被除數(shù)為16位,則被除數(shù)默認(rèn)在AX
dd、 dup
dd:用來定義雙字型數(shù)據(jù), 32位→4字節(jié)→2字→1雙字
dup:用來設(shè)置數(shù)據(jù)的重復(fù),形如: 類型 重復(fù)的次數(shù) dup (要重復(fù)的數(shù)據(jù))