第8章 數(shù)據(jù)處理的兩個(gè)基本問(wèn)題

這兩個(gè)問(wèn)題是:1、處理的數(shù)據(jù)在什么地方。2、要處理的數(shù)據(jù)有多長(zhǎng)。

在本書(shū)中

reg:register,表示非段寄存器。

sreg:segment register,表示段寄存器。

8.1

bx、si、di、bp

BX:Base

Mix,基址寄存器。

SI:

(Source index),源變址寄存器。

DI:(Destination?index),目的變址寄存器。

BP:(Base Pointer),基址指針寄存器。

只有這四個(gè)寄存器可以放在[]中用來(lái)表示偏移地址,并且它們可以組合出現(xiàn)。

[bp]默認(rèn)的段地址存放在SS(Stack Segment)中,當(dāng)然你也可以指定其他的段寄存器。

8.2機(jī)器指令處理的數(shù)據(jù)所在位置

這類(lèi)指令按照功能分為3類(lèi)——讀取、寫(xiě)入、運(yùn)算。

被處理的數(shù)據(jù)可以存放在CPU、內(nèi)存、端口。

8.3匯編語(yǔ)言中數(shù)據(jù)位置的表達(dá)

立即數(shù):直接包含在機(jī)器指令中,實(shí)際位置在CPU指令緩沖期中的數(shù)值型數(shù)據(jù),就是上面提到的idata。

寄存器:存儲(chǔ)在寄存器中的數(shù)據(jù)。

段地址和偏移地址:……

上述3個(gè)概念表達(dá)數(shù)據(jù)的位置。

8.4尋址方式

本節(jié)給出了尋址方式的概念和總結(jié),見(jiàn)表8.2。

8.5指令要處理的數(shù)據(jù)有多長(zhǎng)

8086CPU能處理的數(shù)據(jù)長(zhǎng)度只有字節(jié)和字兩種。

匯編語(yǔ)言通過(guò)如下方式指明數(shù)據(jù)長(zhǎng)度:

1、通過(guò)寄存器名。

2、X ptr指明字或者字節(jié),具體可分為word ptr和byte ptr。P163展示了它們的使用方法。

3、有些操作默認(rèn)就是字操作或者字節(jié)操作,比如說(shuō)PUSH和POP就是字操作。

8.6尋址方式的綜合應(yīng)用

[bx+idata+si]可以寫(xiě)成[bx].idata[si],[bx+idata]可以寫(xiě)成[bx].idata。

8.7

div指令

div是除法指令。

1、除數(shù),有8位和16位兩種,在一個(gè)寄存器或這內(nèi)存單元中。

2、被除數(shù),默認(rèn)放在AX,或者AX+DX。

除數(shù)是8位,被除數(shù)就應(yīng)該是16位。除數(shù)是16位被除數(shù)應(yīng)該是32位。

前者被除數(shù)存儲(chǔ)在AX中,后者高位存儲(chǔ)在DX,低位存儲(chǔ)在AX中。

3、結(jié)果,

如果除數(shù)是8位,AL存儲(chǔ)商,AH存儲(chǔ)余數(shù)。

如果除數(shù)是16位,AX存儲(chǔ)商,DX存儲(chǔ)余數(shù)。

DIV用法如下:

DIV寄存器或者內(nèi)存單元

為什么只有一個(gè)操作數(shù)呢?因?yàn)楸怀龜?shù)已經(jīng)在AX或者DX+AX中了,所以這個(gè)操作數(shù)只需要是除數(shù)即可。

P168給出了各種商和余數(shù)的計(jì)算式,很好理解,在這里我只想解釋一下下圖紅圈所示的內(nèi)容應(yīng)該如何理解:

AX是16位寄存器,DX也是16位寄存器,它們又表示一個(gè)數(shù)字,所以(dx)×10000實(shí)際上代表的是高16位。因?yàn)?進(jìn)制中每4位是一個(gè)16進(jìn)制數(shù)字,所以AX中就有4個(gè)16進(jìn)制數(shù)字,因此如果(dx)想表示高16位,那它只能用它的值×0x10000了。如果還沒(méi)反應(yīng)過(guò)來(lái),那么(es)×16也可以寫(xiě)成(es)×0x1。

8.8偽指令dd

dd:double

word,用來(lái)定義雙字型數(shù)據(jù)。

8.9

dup

dup定義了一段數(shù)據(jù),這段數(shù)據(jù)可能會(huì)被重復(fù)多次。其用法如下所示:

DUP (數(shù)據(jù))

這個(gè)數(shù)據(jù)可以是字節(jié)型、字型和雙字型,它經(jīng)常和db、dw、dd搭配使用,P170給出了具體的用法。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容