匯編指令復(fù)習(xí)題_第1頁
匯編指令復(fù)習(xí)題_第2頁
匯編指令復(fù)習(xí)題_第3頁
匯編指令復(fù)習(xí)題_第4頁
匯編指令復(fù)習(xí)題_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

本文格式為Word版,下載可任意編輯——匯編指令復(fù)習(xí)題1.將1234h賦給cxMovcx,1234h

2.將bh的內(nèi)容設(shè)置成和bl一致。Movbl,bh

3.執(zhí)行moval,-5h后,al里是什么內(nèi)容?(二進(jìn)制表示)11111011

4.將dl里的內(nèi)容存到1000h單元。Mov[1000h],dl

5.將地址為1000h的存儲單元里的字節(jié)內(nèi)容拷貝到地址為2000h單元。Movdh,[1000h]Mov[2000h],dh

6.將地址為1000h的存儲單元里的字內(nèi)容拷貝到地址為2000h單元。Movsi,[1000h]Mov[2000h],si7.將ds的值賦給es。Movax,dsMoves,ax

8.將1234h賦給ds。Movbx,1234hMovds,bx

9.將66h(字節(jié))賦給地址為2000h的單元。Movbyteptr[2000h],66h

10.將66h(字)賦給地址為3000h的單元。Movwordptr[3000h],66h二.堆棧指令練習(xí)pushpop1.將ax入棧。Pushax

2.將1000h單元里的內(nèi)容入棧。Push[1000h]3.將al入棧。Pushax

4.將1234h入棧。Movax,1234hPushax

5.將出棧數(shù)據(jù)存入bx。Popbx

6.將出棧數(shù)據(jù)存入20h單元。Pop[20h]

7.用三種方法實現(xiàn)將ax、bx數(shù)據(jù)交換。A..movcx,ax

Movax,bxMovbx,cxB.PushaxPushbx

PopaxPopbx

C.Xchgax,bx

8.已知全班匯編語言成績表存放在以mark為首地址的存儲區(qū)內(nèi),根據(jù)學(xué)生編號(從0號開始)查詢該生成績。算術(shù)運算類指令練習(xí)

Movbx,offsetmark(在前面加offset意思是把分?jǐn)?shù)取出)Moval,num(num是給學(xué)生編號)Xlat(查表指令)

9.ax和內(nèi)存單元y相加,結(jié)果存于yAddy,ax

10.ah和al相加,結(jié)果存于ahAddah,al

11.內(nèi)存單元x和內(nèi)存單元y相加,結(jié)果存于xMovax,yMovx,ax12.求bx減100Subbx,100

13.求ax、si、進(jìn)位位之和,結(jié)果存于axAdcax,si

14.求ax減si,并減去借位位,結(jié)果存于axSbbax,si

15.將內(nèi)存單元x加1,寫出兩種指令,有何異同?Addx,1

Incx(inc是只增指令,直接加1,不影響cf標(biāo)志)16.將內(nèi)存單元y減1,寫出兩種指令。Suby,1Decy

17.求dx的相反數(shù)。Negdx18.比較si和di

Cmpsi,di(si對于di,即將si-di來進(jìn)行比較)19.求ax和bx的乘積(有符號數(shù)乘法)Imulbx

20.設(shè)x、y為字節(jié)單元,求x*y(無符號數(shù)乘法),積存于字單元z中。Moval,xMulyMovz,ax21.將al擴展到ax

Cbw(cbw只認(rèn)al到ax,其他的都不行,可以和14比較)22.將bh擴展到bxMoval,bhCbw

Movbx,ax

23.將ax擴展到dx:ax

Cwd(cwd也只擴展到dx:ax)24.規(guī)律運算指令練習(xí)已知有內(nèi)存變量:

X1=12h,x2=34h,x3=56h,x4=78h,x5=9ah,x6=0bch,x7=0deh,

y1=12h,y2=34h,y3=56h,y4=78h,y5=9ah,y6=0bch,y7=0deh,另設(shè)(al)=0abh,求:求x1與al求x2或al求x3異或al求x4位相反數(shù)將x5的高四位清零將x6的低三位置1

將x7的第0、2、4、6位取反測試al是否為偶數(shù)?將y1規(guī)律左移2位將y2規(guī)律右移3位將y3算術(shù)左移1位將y4算術(shù)右移4位將y5循環(huán)右移2位將y6循環(huán)左移1位將y7帶進(jìn)位循環(huán)右移1解:datasegment

X1db12hX2db34hX3db56hX4db37h~~

Y7db0dehDataendsCodesegment

Assumecs:code,ds:dataStart:movax,dataMovds,axMoval,0abh

Andx1,al(求x1和al)Orx2,al(求x2或al)Xorx3,al(求x3異或al)Notx4(x4的相反數(shù))

Andx5,0fh(將x5的高四位清空)

Orx6,00000111b(將x3的低三位置1)Xorx7,01010101b(將x7的0,2,4,6,8位相反)Testal,1(測試al是否為偶數(shù))

Shly1,2(規(guī)律左移2位)Shry2,3(規(guī)律右移3位)Saly3,1(算術(shù)左移1位)Sary4,4(算術(shù)右移4位)Rory5,2(循環(huán)右移2位)Roly6,1(循環(huán)左移1位)

Rcry7,1(將y7帶進(jìn)位循環(huán)右移1位)

三.

1.按要求完成進(jìn)制轉(zhuǎn)換

(1)78ch=011110111100b=1980d(2)562q=101110010b=370d(3)90d=01011010b=5ah

(4)1110100.111b=164.7q=74.eh

2.當(dāng)字長位八位時,寫出下面各數(shù)的原碼,補碼和反碼

(1)25(2)-25(3)100(4)-100原碼:00011001100110010110010011100100反碼:00011001111001100110010010011011補碼:00011001111001110110010010011100

(真值的由來100=64+32+4=26+25+22=0*27+1*26+1*25+0*24+0*23+1*22+0*21+0*20,所以100的真值是01100100,正數(shù)的真值=原碼=補碼=反碼)3.列出數(shù)字0~9、大寫字母a~z、小寫字母a~z的ascii碼值30h~39h41h~5ah61h~7ah4.完成以下二進(jìn)制數(shù)的加減運算

(1)10101010+11110000=110011010(2)11001100+01010100=100100000(3)11011010-01010010=10001000(4)11101110-01001101=101000015.說明二進(jìn)制(bit)、字節(jié)(byte)、字(word)、雙字(doubleword)的含義及相互的關(guān)系。位(bit):一個二進(jìn)制字節(jié)(byte):8位二進(jìn)制

字(word):一般為機器字長,在8086機器中為16位二進(jìn)制,即兩個字節(jié)雙字(doubleword):雙倍字長,在8086機器中為32位二進(jìn)制6.8088微處理器中有哪些寄放器?說明它們的功能及分組狀況?

7.一臺微型計算機,數(shù)據(jù)線有8根,地址線有16根,假使采用字節(jié)編址,那么它可以訪問的最大存儲空間是多少字節(jié)?試用十六進(jìn)制數(shù)來表示該機的地址范圍?

答:216=64kb,0000h~ffffh

8.8086的寄放器中,有哪些16位寄放器可分為兩個8位寄放器來使用?答:ax(ah,al)、bx(bh,bl)、cx(ch,cl)、dx(dh,dl)

9.8086/8088的標(biāo)志寄放器f種有哪些標(biāo)志位?它們的名稱和功能是什么?答:cf—進(jìn)位標(biāo)志(carryflag)。若cf=1,表示算術(shù)運算時產(chǎn)生進(jìn)位或借位,否側(cè)cf=0.

移位指令會影響cf

pf—奇偶標(biāo)志(parityflag).若pf=1,表示操作結(jié)果中“1〞的個數(shù)為偶數(shù),否側(cè)pf=0。這個標(biāo)志主要用于檢查數(shù)據(jù)傳送過程中的錯誤。

af—輔助進(jìn)位標(biāo)志(auxiliarycarryflag).若af=1表示字節(jié)運算產(chǎn)生低半字節(jié)向高半字節(jié)的進(jìn)位或錯位,否則af=0。輔助進(jìn)位也稱半進(jìn)位標(biāo)志,主要用于bcd碼運算的十進(jìn)制調(diào)整。zf—全零標(biāo)志(zeroflag).若zf=1,表示操作結(jié)果全為零,否則zf=0.

sf—符號標(biāo)志(signflag)。若sf=1,表示符號數(shù)運算后的結(jié)果為負(fù)數(shù),否則sf=o.

of—溢出標(biāo)志(qverflowflag).若of=1,表示當(dāng)進(jìn)行算術(shù)運算時,結(jié)果超過了最大范圍,否則of=0.

if—中斷允許標(biāo)志(interruptflag).若if=1,則cpu可以響應(yīng)外部可屏蔽中斷請求;若if=0,則cpu不允許響應(yīng)中斷請求。If的狀態(tài)可由中斷指令設(shè)置。df—方向標(biāo)志(directionflag).若df=1,表示執(zhí)行字符串操作時按著從高地址向低地址方向進(jìn)行;否則df=0.df位可由指令控制。

tf—單步標(biāo)志(traceflag).又稱跟蹤標(biāo)志。該標(biāo)志位在調(diào)試程序時可直接控制cpu的工作狀態(tài)。當(dāng)tf=1時為單步操作,cpu每執(zhí)行一條指令就進(jìn)入內(nèi)部的單步中斷處理,以便對指令的執(zhí)行狀況進(jìn)行檢查;若tf=0,則cpu繼續(xù)執(zhí)行程序。

10.在8086系統(tǒng)中,段地址和偏移地址如下表示,請分別計算它們的物理地址(1)f000:0100物理地址:f0000h+0100h=f0100h(2)2350:1abc23500h+1abch=24fbc(3)3200:123432000h+1234h=33234h(4)5000:010f50000h+010eh=5010eh(5)10e0:202310e00h+2023h=12e20h(6)2023:102020230h+1020h=21120h(7)1000:100010000h+1000h=11000h(8)c0c0:c0c0c0c00h+c0c0h=cccc0h

11.8086/8088指令系統(tǒng)中操作數(shù)的類型有哪幾種?關(guān)于操作數(shù)的尋址方式有哪幾類?答:(1)馬上數(shù)、寄放器數(shù)和內(nèi)存單元數(shù)。

(2)馬上尋址、寄放器尋址、寄放器間接尋址、值接尋址、寄放器相對尋址、

基址加變址尋址、基址加變址相對尋址

12.指出段地址、偏移地址與物理地址之間的關(guān)系。有效地址ea是指什么?答:段地址左移四位加上偏移地址形成20位的物理地址。

ea是指段內(nèi)偏移地址,即表示段內(nèi)某單元相對于段起始地址的空間位置。

13.指出能用于寄放器間接尋址及變址尋址的寄放器有哪些?它們尋常與哪個段寄放器協(xié)同形成物理地址?

答:能用于寄放器間接尋址及變址尋址的寄放器有基址寄放器bx和bp,變址

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論