微機原理與接口技術(shù)試題庫_第1頁
微機原理與接口技術(shù)試題庫_第2頁
微機原理與接口技術(shù)試題庫_第3頁
微機原理與接口技術(shù)試題庫_第4頁
微機原理與接口技術(shù)試題庫_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、三、選擇題1、在計算機內(nèi)部,一切信息的存取、處理和傳送都是以 D 形式進行的。A)EBCDIC碼 B)ASCII碼 C)十六進制編碼 D)二進制編碼2、與十進制數(shù)56等值的二進制數(shù)是 A 。A) B) C) D)四、是非判斷題1、在第三代計算機期間出現(xiàn)了操作系統(tǒng)。 ( )2、對于種類不同的計算機,其機器指令系統(tǒng)都是相同的。( )3、在計算機中,數(shù)據(jù)單位bit的意思是字節(jié)。 ( )1. 微處理器,微型計算機和微型計算機系統(tǒng)三者之間有何區(qū)別?答:微處理器即CPU,它包括運算器、控制器、寄存器陣列和內(nèi)部總線等部分,用于實現(xiàn)微型計算機的運算和控制功能,是微型計算機的核心;一臺微型計算機由微處理器、內(nèi)存

2、儲器、I/O接口電路以及總線構(gòu)成;微型計算機系統(tǒng)則包括硬件系統(tǒng)和軟件系統(tǒng)兩大部分,其中硬件系統(tǒng)又包括微型計算機和外圍設(shè)備;由此可見,微處理器是微型計算機的重要組成部分,而微型計算機系統(tǒng)又主要由微型計算機作為其硬件構(gòu)成。2. CPU在內(nèi)部結(jié)構(gòu)上由哪幾部分構(gòu)成?CPU應(yīng)具備哪些主要功能?答:CPU在內(nèi)部結(jié)構(gòu)上由運算器、控制器、寄存器陣列和內(nèi)部總線等各部分構(gòu)成,其主要功能是完成各種算數(shù)及邏輯運算,并實現(xiàn)對整個微型計算機控制,為此,其內(nèi)部又必須具備傳遞和暫存數(shù)據(jù)的功能。3. 累加器和其它通用寄存器相比有何不同?答:累加器是通用寄存器之一,但累加器和其它通用寄存器相比又有其獨特之處。累加器除了可用做通用

3、寄存器存放數(shù)據(jù)外,對某些操作,一般操作前累加器用于存放一個操作數(shù),操作后,累加器用于存放結(jié)果。 4. 微型計算機的總線有哪幾類?總線結(jié)構(gòu)的特點是什么?答:微型計算機的總線包括地址總線、數(shù)據(jù)總線和控制總線三類,總線結(jié)構(gòu)的特點是結(jié)構(gòu)簡單、可靠性高、易于設(shè)計生產(chǎn)和維護,更主要的是便于擴充。 6. 計算機I/O接口有何用途?試列出8個I/O接口。答:計算機I/O接口是連接計算機和外部設(shè)備的紐帶和橋梁,它主要用于協(xié)調(diào)和控制計算機與外設(shè)之間的信息流通和交換。例如:串行通訊口(COM口)、并行打印機口、軟盤驅(qū)動器接口、硬盤驅(qū)動器接口、光驅(qū)接口、顯示器接口、音響設(shè)備接口、其它通用設(shè)備接口(USB、SCSI等)

4、。7. 現(xiàn)在,計算機主板上一般都包括哪些I/O接口?I/O接口卡如何與主板相連?答:現(xiàn)在,計算機主板上一般包括串行通訊口、并行打印口、軟盤驅(qū)動器接口、硬盤驅(qū)動器接口、光驅(qū)接口、USB接口等。象顯示器適配器、網(wǎng)卡、modem卡等I/O接口卡一般通過總線插槽與主板相連。8. 簡述系統(tǒng)總線,AGP總線,PCI總線及ISA總線的作用。答:系統(tǒng)總線是CPU與存儲器及橋接器之間傳遞信息的通道,AGP總線專門用與連接CPU與顯示器適配器,PCI總線一般用于連接一些高速外設(shè)接口作為高速外設(shè)與CPU或內(nèi)存交換信息的通道,而ISA總線一般用于連接一些非高速外設(shè)接口作為非高速外設(shè)與CPU或內(nèi)存交換信息的通道。9.

5、試說明計算機用戶,計算機軟件,計算機硬件三者的相互關(guān)系。答:計算機用戶,計算機軟件系統(tǒng),計算機硬件系統(tǒng)共同構(gòu)成一個計算機應(yīng)用系統(tǒng),三者在該系統(tǒng)中處于三個不同的層次。計算機用戶處于最高層,計算機軟件處于中間層,計算機硬件系統(tǒng)處于最下層。在這里計算機用戶是系統(tǒng)的主宰,他們通過軟件系統(tǒng)與硬件系統(tǒng)發(fā)生關(guān)系,指揮計算機硬件完成指定的任務(wù)。即,計算機用戶使用程序設(shè)計語言編制應(yīng)用程序,在系統(tǒng)軟件的干預(yù)下使用硬件系統(tǒng)進行工作。11. 存儲單元的選擇由什么信號控制?讀、寫靠什么信號區(qū)分?答:存儲單元的選擇由地址信號控制,而對存儲單元進行讀操作還是寫操作則要靠讀、寫信號區(qū)分。4.若用一個字節(jié)來表示帶符號數(shù),判斷下

6、列各運算在機內(nèi)進行時是否會產(chǎn)生溢出,寫出判斷過程。 A. 5BH+32H; B. -08H-15H; C. -51H+(-3DH); D. 2DH+3CH答:A. 產(chǎn)生溢出, 5BH=B其補碼表示的機器數(shù)為: 32H=B其補碼表示的機器數(shù)為: 相加的結(jié)果為:數(shù)值最高位向符號位進位,但符號位向前無進位,故產(chǎn)生溢出。B. 不產(chǎn)生溢出, -08H=-B其補碼表示的機器數(shù)為: -15H=-B其補碼表示的機器數(shù)為: 相加的結(jié)果為: 數(shù)值最高位向符號位進位,符號位同時也向前進位,故不產(chǎn)生溢出. C.產(chǎn)生溢出,-51H=-B其補碼表示的機器數(shù)為: -3DH=-B其補碼表示的機器數(shù)為: 相加的結(jié)果為: 數(shù)值最

7、高位向符號位無進位,但符號位向前進位,故產(chǎn)生溢出. D.不產(chǎn)生溢出,2DH=B其補碼表示的機器數(shù)為: 3CH=B其補碼表示的機器數(shù)為: 相加的結(jié)果為: 數(shù)值最高位向符號位無進位,符號位向前也無進位,故不產(chǎn)生溢出。6.詳細敘述總線緩沖器的作用。答:總線緩沖器的作用主要是控制各路數(shù)據(jù)在總線上的交叉?zhèn)魉捅苊庀嗷_突,當幾路數(shù)據(jù)都要向總線上傳送時,就通過各路的緩沖器來解決,當一路傳送時,緩沖器使其它各路數(shù)據(jù)與總線斷開。7.鎖存器和寄存器有什么不同?答:鎖存器與寄存器都是用來暫存數(shù)據(jù)的器件,在本質(zhì)上沒有區(qū)別,不過寄存器的輸出端平時不隨輸入端的變化而變化,只有在時鐘有效時才將輸入端的數(shù)據(jù)送輸出端(打入寄存

8、器),而鎖存器的輸出端平時總隨輸入端變化而變化,只有當鎖存器信號到達時,才將輸出端的狀態(tài)鎖存起來,使其不再隨輸入端的變化而變化。1.8086從功能上分成了EU和BIU兩部分。這樣設(shè)計的優(yōu)點是什么?答:傳統(tǒng)計算機在執(zhí)行程序時,CPU總是相繼地完成取指令和執(zhí)行指令的動作,即,指令的提取和執(zhí)行是串行進行的。而8086CPU 在功能上分成了EU和BIU兩部分,BIU負責取指令,EU負責指令的執(zhí)行,它們之間既互相獨立又互相配合,使得8086可以在執(zhí)行指令的同時進行取指令的操作,即實現(xiàn)了取指令和執(zhí)行指令的并行工作,大大提高了CPU和總線的利用率,從而提高了指令的處理速度。2.8086 CPU中地址加法器的

9、重要性體現(xiàn)在哪里?答:地址加法器是8086 CPU的總線接口單元中的一個器件,在8086存儲器分段組織方式中它是實現(xiàn)存儲器尋址的一個關(guān)鍵器件,地址加法器將兩個16位寄存器中的邏輯地址移位相加,得到一個20位的實際地址,把存儲器尋址空間從64K擴大到1M,極大地擴大了微型計算機的程序存儲空間,從而大大提高了程序運行效率。3.8086 CPU中有哪些寄存器?分組說明用途。哪些寄存器用來指示存儲器單元的偏移地址?答:8086 CPU中有8個通用寄存器AX、BX、CX、DX、SP、BP、SI、DI;兩個控制寄存器IP、FL;四個段寄存器CS、DS、SS、ES。8個通用寄存器都可以用來暫存參加運算的數(shù)據(jù)

10、或中間結(jié)果,但又有各自的專門用途。例如,AX專用做累加器,某些指令指定用它存放操作數(shù)和運算結(jié)果;CX為計數(shù)寄存器,在某些指令中做計數(shù)器使用;DX為數(shù)據(jù)寄存器;BX為基址寄存器,BP為基址指針,SI為源變址寄存器,DI為目的變址寄存器,這4個寄存器在數(shù)據(jù)尋址中用來存放段內(nèi)偏移地址(有效地址)或段內(nèi)偏移地址的一部分;SP為堆棧指示器,用來存放棧頂有效地址。兩個控制寄存器用來存放有關(guān)的狀態(tài)信息和控制信息。例如,標志寄存器FL用來存放狀態(tài)標志和控制標志;而指令指針用來存放下一條要取指令的有效地址。四個段寄存器用來存放段地址。例如,CS寄存器用來存放代碼段的段地址;DS寄存器用來存放數(shù)據(jù)段的段地址;SS

11、寄存器用來存放堆棧段的段地址;ES寄存器用來存放擴展段的段地址。4.8086系統(tǒng)中存儲器的邏輯地址由哪兩部分組成?物理地址由何器件生成?如何生成?每個段的邏輯地址與寄存器之間有何對應(yīng)關(guān)系?答:8086系統(tǒng)中存儲器的邏輯地址由段地址(段首址)和段內(nèi)偏移地址(有效地址)兩部分組成;存儲單元的物理地址由地址加法器生成,尋址時,CPU首先將段地址和段內(nèi)偏移地址送入地址加法器,地址加法器將段地址左移4位并與段內(nèi)偏移地址相加,得到一個20位的物理地址。數(shù)據(jù)段的段地址在DS寄存器中,段內(nèi)偏移地址可能在BX、BP、SI或DI寄存器中。代碼段的段地址在CS寄存器中,段內(nèi)偏移地址在IP寄存器中。堆棧段的段地址在S

12、S寄存器中,段內(nèi)偏移地址在SP寄存器中。擴展段的段地址在ES寄存器中,段內(nèi)偏移地址可能在BX、BP、SI或DI寄存器中。5.設(shè)CPU中各有關(guān)寄存器的當前狀況為:SS=0a8bH、DS=17ceH、CS=dc54H、BX=394bH、IP=2f39H、SP=1200H,BX 給出的是某操作數(shù)的有效地址,請分別寫出該操作數(shù)、下一條要取的指令及當前棧頂?shù)倪壿嫷刂泛臀锢淼刂?。答:該操作?shù)的邏輯地址為DS:BX=17CE:394BH,物理地址=17CEH*10H+394BH=1B62BH;下一條要取的指令的邏輯地址為CS:IP=DC54:2F39H,物理地址=DC54H*10H+2F39H=DF479H

13、;當前棧頂?shù)倪壿嫷刂?SS:SP=0A8B:1200H,物理地址=0A8BH*10H+1200H=0BAB0H。6.若DS=157DH時,某操作數(shù)的物理地址是215FAH,當DS=18DEH時,該操作數(shù)的物理地址是多少?答:該操作數(shù)的段內(nèi)偏移地址=該操作數(shù)的物理地址-DS=215FAH-157D0H=BE2AH, 故當DS=18DEH時,該操作數(shù)的物理地址=DS*10H+BE2AH=18DE0H+BE2AH=24C0AH7.設(shè) AX=2875H、BX=34DFH、SS=1307H、SP=8H,依此執(zhí)行 PUSH AX、PUSH BX、POP AX、POP CX后棧頂指針變?yōu)槎嗌伲緼X=? BX

14、=? CX=?答:當前棧頂指針=SS*10H+SP=13070H+8H=13078H,依此執(zhí)行PUSH AX、PUSH BX、POP AX、POP CX后棧頂指針仍為13078H。但AX=34DFH,BX=34DFH,CX=2875H。1. 假定(BX)=637DH,(SI)=2A9BH,位移量D=3237H,試確定在以下各種尋址方式下的有效地址是什么?(1)立即尋址(2)直接尋址(3)使用BX的寄存器尋址(4)使用BX的間接尋址(5)使用BX的寄存器相對尋址(6)基址變址尋址(7)相對基址變址尋址 答:(1)立即數(shù)尋址的有效地址是當前IP的內(nèi)容;(2)直接尋址,若使用位移量D=3237H進行

15、,則有效地址為3237H;(3)使用BX的寄存器尋址時,操作數(shù)在BX寄存器中,因此無有效地址;(4)使用BX的間接尋址時,有效地址在BX寄存器中,即有效地址=637DH;(5)使用BX的寄存器相對尋址的有效地址=(BX)+D=637DH+3237H=95B4H;(6)基址變址尋址的有效地址=(BX)+(SI)=637DH+2A9BH=8E18H;(7)相對基址變址尋址的有效地址=(BX)+(SI)+D=C050H; 2. 寫出把首地址為BLOCK的字數(shù)組的第6個字送到DX寄存器的指令。要求使用以下幾種尋址方式:(1)寄存器間接尋址(2)寄存器相對尋址(3)基址變址尋址答:(1)使用寄存器間接尋

16、址,把首地址為BLOCK的字數(shù)組的第6個字送到DX寄存器的指令為: MOV BX,BLOCK ADD BX,12 MOV DX,BX(2)使用寄存器相對尋址,把首地址為BLOCK的字數(shù)組的第6個字送到DX寄存器的指令為: MOV BX,BLOCK MOV DX,BX+12(3)使用基址變址尋址,把首地址為BLOCK的字數(shù)組的第6個字送到DX寄存器的指令為: MOV BX,BLOCK MOV SI,12 MOV DX,BX+SI3. 現(xiàn)有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100H)12H,(20101H)=34H,(20102H)=56H,(20103H)=

17、78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65H,試說明下列各條指令執(zhí)行完后AX寄存器的內(nèi)容。(1)MOV AX,1200H(2)MOV AX,BX(3)MOV AX,1200H(4)MOV AX,BX(5)MOV AX,BX+1100(6)MOV AX,BX+SI(7)MOV AX,BX+SI+1100答:(1)指令MOV AX,1200H執(zhí)行完后AX寄存器的內(nèi)容為1200H; (2)指令MOV AX,BX執(zhí)行完后AX寄存器的內(nèi)容為0100H; (3)指令MOV AX,1200H是將從物理地址=(DS)*10H+1200H=212

18、00H開始的兩個單元內(nèi)容送AX,執(zhí)行完后AX寄存器的內(nèi)容為4C2AH; (4)指令MOV AX,BX是將從物理地址=(DS)*10H+(BX)=20100H開始的兩個單元內(nèi)容送AX,故執(zhí)行完后AX寄存器的內(nèi)容為3412H; (5)指令MOV AX,BX+1100是將從物理地址=(DS)*10H+(BX)+1100H=21200H開始的兩個單元內(nèi)容送AX,故執(zhí)行完后AX寄存器的內(nèi)容為4C2AH; (6)指令MOV AX,BX+SI是將從物理地址=(DS)*10H+(BX)+(SI)=20102H開始的兩個單元內(nèi)容送AX,故執(zhí)行完后AX寄存器的內(nèi)容為7856H; (7)指令MOV AX,BX+SI

19、+1100是將從物理地址=(DS)*10H+(BX)+(SI)+1100H=21202H開始的兩個單元內(nèi)容送AX,故執(zhí)行完后AX寄存器的內(nèi)容為65B7H;4.假設(shè)已知(DS)=2900H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)= 0100H,(BP)=0010H,數(shù)據(jù)段中變量名VAL的偏移地址值為0050H,試指出下列源操作數(shù)字段的尋址方式是什么?其物理地址值是多少? (1) MOV AX,0ABH (2) MOV AX,BX (3) MOV AX,100H (4) MOV AX,VAL (5) MOV AX,BX (6) MOV AX,ES:BX (7)

20、MOV AX,BP (8) MOV AX,SI (9) MOV AX,BX+10 (10) MOV AX,VALBX (11) MOV AX,BXSI (12) MOV AX,BPSI答:(1)在指令 MOV AX,0ABH 中,源操作數(shù)字段的尋址方式是立即數(shù)尋址,其物理地址值=(CS)*10H+(IP); (2)在指令 MOV AX,BX 中,源操作數(shù)字段的尋址方式是寄存器尋址,操作數(shù)在BX中,無物理地址; (3)在指令 MOV AX,100H 中,源操作數(shù)字段的尋址方式是直接尋址,其物理地址值=(DS)*10H+100 =29000H+100H=29100; (4)在指令 MOV AX,V

21、AL 中,源操作數(shù)字段的尋址方式是直接尋址,其物理地址值=(DS)*10H+50H =29000H+50H=29050H; (5)在指令 MOV AX,BX 中,源操作數(shù)字段的尋址方式是寄存器間接尋址,其物理地址值=(DS)*10H +(BX)=29000H+100H=29100H; (6)在指令 MOV AX,ES:BX 中,源操作數(shù)字段的尋址方式是寄存器間接尋址,其物理地址值=(ES)*10H+(BX)=21000H+100H=21100H; (7)在指令 MOV AX,BP 中,源操作數(shù)字段的尋址方式是寄存器間接尋址,其物理地址值=(SS)*10H +(BP)=15000H+10H=15

22、010H; (8)在指令 MOV AX,SI 中,源操作數(shù)字段的尋址方式是寄存器間接尋址,其物理地址值=(DS)*10H +(SI)=29000H+0A0H=290A0H; (9)在指令 MOV AX,BX+10 中,源操作數(shù)字段的尋址方式是寄存器相對尋址,其物理地址值=(DS)*10H+(BX)+0AH= 29000H+100H+0AH =2910AH; (10)在指令 MOV AX,VALBX 中,源操作數(shù)字段的尋址方式是寄存器相對尋址,其物理地址值=(DS)*10H+(BX)+50H= 29000H+100H+50H= 29150H; (11)在指令 MOV AX,BXSI 中,源操作數(shù)

23、字段的尋址方式是基址變址尋址,其物理地址值=(DS)*10H+(BX)+(SI) =29000H+100H+0A0H =291A0H; (12)在指令 MOV AX,BPSI 中,源操作數(shù)字段的尋址方式是基址變址尋址,其物理地址值=(SS)*10H+(BP)+(SI)=15000H+10H+0A0H =150B0H5.分別指出下列指令中的源操作數(shù)和目的操作數(shù)的尋址方式。 (1)MOV SI,200 (2)MOV CX,DATASI (3)ADD AX,BX+DI (4)AND AX,BX (5)MOV SI,AX (6)PUSHF答:(1)目的操作數(shù)字段的尋址方式是寄存器尋址,源操作數(shù)字段的尋

24、址方式是立即數(shù)尋址;(2)目的操作數(shù)的尋址方式是寄存器尋址,源操作數(shù)的尋址方式是寄存器相對尋址;(3)目的操作數(shù)的尋址方式是寄存器尋址,源操作數(shù)的尋址方式是基址變址尋址;(4)目的操作數(shù)的尋址方式是寄存器尋址,源操作數(shù)的尋址方式也是寄存器尋址;(5)目的操作數(shù)的尋址方式是寄存器間接尋址,源操作數(shù)的尋址方式是寄存器尋址;(6)目的操作數(shù)的尋址方式是寄存器間接尋址,源操作數(shù)的尋址方式是寄存器尋址;6.試述指令MOV AX,2010H和MOV AX,DS:2010H 的區(qū)別。答:指令MOV AX,2010H是將立即數(shù)2010H送AX寄存器,而指令MOV AX,DS:2010H是將DS段有效地址為20

25、10H的兩個單元的內(nèi)容送AX。7.寫出以下指令中內(nèi)存操作數(shù)的所在地址。 (1)MOV AL,BX+5 (2)MOV BP+5,AX (3)INC BYTE PTR SI+3 (4)MOV DL,ES:BX+DI (5)MOV BX,BX+SI+2答:(1)指令MOV AL,BX+5中內(nèi)存操作數(shù)的所在地址=(DS)*10H+(BX)+5; (2)指令MOV BP+5,AX中內(nèi)存操作數(shù)的所在地址=(SS)*10H+(BP)+5和(SS)*10H+(BP)+6; (3)指令I(lǐng)NC BYTE PTRSI+3中內(nèi)存操作數(shù)的所在地址=(DS)+(SI)+3; (4)指令MOV DL,ES:BX+DI中內(nèi)存

26、操作數(shù)的所在地址=(ES)*10H+(BX)+(DI); (5)指令MOV BX,BX+SI+2中內(nèi)存操作數(shù)的所在地址=(DS)*10H+(BX)+(SI)+2和(DS)*10H+(BX)+(SI)+3;8.判斷下列指令書寫是否正確,如有錯誤,指出錯在何處并用正確的程序段(一條或多條指令)實現(xiàn)原錯誤指令(8)、(13)除外)期望實現(xiàn)的操作。 (1)MOV AL,BX (9)MOV ES,3278H (2)MOV AL,SL (10)PUSH AL (3)INC BX (11)POP BX (4)MOV 5,AL (12)MOV 1A8H,23DH (5)MOV BX,SI (13)PUSH I

27、P (6)MOV BL,F(xiàn)5H (14)MOV AX,23DH (7)MOV DX,2000H (15)SHL AX,5 (8)POP CS (16)MUL AX,BX答:(1)MOV AL,BX 錯,源操作數(shù)為字類型,目的操作數(shù)為字節(jié)類型,二者不一致。應(yīng)改為:MOV AX,BX 或 MOV AL,BL ;(2)MOV AL,SL 錯,SI寄存器不能分為高8位和低8位使用,即沒有SL寄存器。應(yīng)改為:MOV AX,SI(3)INC BX 錯,未指定操作數(shù)的類型。應(yīng)改為:INC BYTE PTR BX (4)MOV 5,AL 錯,目的操作數(shù)使用了立即數(shù),在指令中一般不允許。應(yīng)改為:MOV DS:5

28、,AL (5)MOV BX,SI 錯,源操作數(shù)和目的操作數(shù)均為內(nèi)存單元,不允許。應(yīng)改為:MOV AX,SI MOV BX,AX(6)MOV BL,F5H 錯,源操作數(shù)錯,以AF開頭的數(shù)字前應(yīng)加0。應(yīng)改為:MOV BL,0F5H(7)MOV DX,2000H 正確。(8) POP CS 錯,不能將棧頂數(shù)據(jù)彈至CS中。 (9)MOV ES,3278H 錯,立即數(shù)不能直接送ES寄存器。應(yīng)改為:MOV AX,3278HMOV ES,AX(10)PUSH AL 錯,棧操作不能按字節(jié)進行。應(yīng)改為:PUSH AX (11)POP BX 正確。(12)MOV 1A8H,23DH 錯,源操作數(shù)是立即數(shù),目的操作

29、數(shù)必須使用寄存器指出。應(yīng)改為: MOV BX,1A8H MOV BX,23DH (13)PUSH IP 錯,不能用IP寄存器做源操作數(shù)。(14)MOV AX,23DH 錯,不能用AX寄存器間接尋址。應(yīng)改為:MOV BX,AX MOV BX,23DH(15)SHL AX,5 錯,不能用大于己于1的立即數(shù)指出移位位數(shù)。應(yīng)改為:MOV CL,5SHL AX,CL(16)MUL AX,BX 錯,目的操作數(shù)AX是隱含的,不能在指令中寫出。應(yīng)改為:MUL BX9.設(shè)堆棧指針SP的初值為2000H,AX=3000H,BX=5000H,試問: (1)執(zhí)行指令PUSH AX后 (SP)=? (2)再執(zhí)行PUSH

30、 BX及POP AX后 (SP)=?(AX)=?(BX)=?答:(1)執(zhí)行指令PUSH AX后 (SP)=2000H-2=1FFEH; (2)再執(zhí)行PUSH BX及POP AX后 (SP)=1FFEH, (AX)=5000H, (BX)=5000H10.要想完成把2000H送1000H中,用指令:MOV 1000H,2000H是否正確?如果不正確,應(yīng)用什么方法?答:把2000H送1000H中,用指令 MOV 1000H,2000H不正確,應(yīng)改為:MOV AX,2000H MOV 1000H,AX11.假如想從200中減去AL中的內(nèi)容,用SUB 200,AL是否正確?如果不正確,應(yīng)用什么方法?答

31、:想從200中減去AL中的內(nèi)容,用SUB 200,AL不正確,應(yīng)改為: MOV BL,200 SUB BL,AL12分別寫出實現(xiàn)如下功能的程序段 (5)將數(shù)據(jù)段中以BX為偏移地址的連續(xù)四個單元的內(nèi)容顛倒過來答: (5) 將數(shù)據(jù)段中以BX為偏移地址的連續(xù)四個單元的內(nèi)容顛倒過來的程序段是:MOV AL,BX ;數(shù)據(jù)段中BX為偏移地址的字單元內(nèi)容送AXXCHG AL,BX+3 ;數(shù)據(jù)段中BX+3為偏移地址的字單元內(nèi)容與AX的內(nèi)容交換MOV BX,AL ;數(shù)據(jù)段中BX+3為偏移地址的字單元內(nèi)容送BX為偏移地址的字單元MOV AL,BX+1 ;數(shù)據(jù)段中BX+1為偏移地址的字單元內(nèi)容送AXXCHG AL,

32、BX+2 ;數(shù)據(jù)段中BX+2為偏移地址的字單元內(nèi)容與AX的內(nèi)容交換MOV BX+1,AL ;數(shù)據(jù)段中BX+2為偏移地址的字單元內(nèi)容送BX+1為偏移地址的字單元1.假設(shè)OP1,OP2是已經(jīng)用DB定義的變量, W_OP3和W_OP4是已經(jīng)用DW定義的變量,判斷下列指令書寫是否正確?如有錯誤,指出錯在何處?并寫出正確的指令(或程序段)實現(xiàn)原錯誤指令期望實現(xiàn)的操作(19)、(20)不改)。(1)PUSH OP1(2)POP W_OP4(3)MOV AX, WORD PTR SIDI(4)MOV AX,WORD PTR ES:BX(5)MOV BYTE PTR BX, 1000 (6)MOV BX, O

33、FFSET SI+200H(7)MOV OP2,BX(8)CMP HIGH W_OP3, 25(9)CMP OP1, OP2 (10)CMP AX, OP2(11)MOV W_OP3BX+4*3DI, SP(12)ADD W_OP3, W_OP4(13)MOV AX, W_OP3DX(14)MOV OP1, LOW DS(15)MOV SP, OP2BXSI(16)MOV AX, W_OP3+W_OP4(17)MOV AX,W_OP3-W_OP4+100(18)SUB AL, W_OP3+7(19)MOV AX,BX SHL 2(20)MOV BX,W_OP3 AND 8FD7H答:1. (1

34、)PUSH OP1 錯,OP1為字節(jié)類型,棧操作不能按字節(jié)進行,應(yīng)改為:PUSH WORD PTR OP1 (2)POP W_OP4 正確。 (3)MOV AX, WORD PTR SIDI 錯,源操作數(shù)尋址方式有問題。 應(yīng)改為: MOV BX, SI MOV AX, WORD PTR BXDI (4)MOV AX,WORD PTR ES:BX錯,若源操作數(shù)為寄存器尋址是不能加段說明及屬性修改的。顯然,原意應(yīng)為寄存器間接尋址,故應(yīng)改為: MOV AX,WORD PTR ES:BX(5)MOV BYTE PTR BX, 1000 錯,源操作數(shù)為字類型,目的操作數(shù)為字節(jié)類型,二者不一致。應(yīng)改為:

35、MOV WORD PTR BX, 1000 (6)MOV BX, OFFSET SI+200H 錯,OFFSET運算應(yīng)在匯編時完成,但SI+200H在執(zhí)行指令時才可獲得。應(yīng)改為: LEA BX,SI+200H (7)MOV OP2,BX 錯,源操作數(shù)和目的操作數(shù)均為內(nèi)存單元,不允許。應(yīng)改為: MOV AL, BX MOV OP2, AL (8)CMP HIGH W_OP3, 25錯,目的操作數(shù)中使用HIGH來分離存儲器操作數(shù),這是不允許的。應(yīng)改為: CMP BYTE PTR W_OP3+1,25 (9)CMP OP1, OP2錯,源操作數(shù)和目的操作數(shù)均為內(nèi)存單元,不允許。應(yīng)改為: MOV AL

36、, OP2 CMP AL, OP1 (10)CMP AX, OP2錯,源操作數(shù)為字節(jié)類型,目的操作數(shù)為字類型,二者不一致。應(yīng)改為: CMP AX, WORD PTR OP2 (11)MOV W_OP3BX+4*3DI, SP正確。(12)ADD W_OP3, W_OP4錯,源操作數(shù)和目的操作數(shù)均為內(nèi)存單元,不允許。應(yīng)改為: MOV AX, W_OP4 ADD W_OP3, AX (13)MOV AX, W_OP3DX 錯,不能用DX寄存器間接尋址。應(yīng)改為: MOV BX, DX MOV AX, W_OP3BX (14)MOV OP1, LOW DS錯,源操作數(shù)中使用LOW來分離寄存器操作數(shù),這

37、是不允許的。應(yīng)改為: MOV WORD PTR OP1,DS (15)MOV SP, OP2BXSI 錯,源操作數(shù)為字節(jié)類型,目的操作數(shù)為字類型,二者不一致。應(yīng)改為:MOV SP, WORD PTR OP2BXSI (16)MOV AX, W_OP3+W_OP4錯,兩個標識符相加無意義。應(yīng)改為: MOV AX, W_OP1 ADD AX, W_OP2(17)MOV AX,W_OP3-W_OP4+100正確,源操作數(shù)為兩個標識符(地址)相減再加一數(shù),匯編時得到一個數(shù)。(18)SUB AL, W_OP3+7錯,兩個操作數(shù)類型不一致。應(yīng)改為: SUB AL, BYTE PTR W_OP3+7(19)

38、MOV AX,BX SHL 2錯,SHL只能對常量進行運算,左邊不能使用寄存器(20)MOV BX,W_OP3 AND 8FD7H錯,AND只能對常量進行運算,左邊不能使用變量4.設(shè)已定義數(shù)據(jù)段 DATA SEGMENT VAR2 DW 10H,7889H VAR5 DB 20H,0 ADRR DW VAR2,VAR5 DATA ENDS為使ADRR字存儲單元中存放內(nèi)容為“0010H”,ADRR2字存儲單元中存放內(nèi)容為“0020H”,上述省略號位置應(yīng)分別填寫一條什么語句?說明理由。答:為使ADRR字存儲單元中存放內(nèi)容為“0010H”,ADRR2字存儲單元中存放內(nèi)容為“0020H”,上述省略號位

39、置應(yīng)分別填寫ORG 10H 和 ORG 20H, 或者分別填寫語句VAR1 DB 10H DUP(?) 和 VAR3 6 DUP(?)5.下面的數(shù)據(jù)段中,有數(shù)據(jù)為4100H的字存儲單元有幾個?它們的偏移量分別是多少? DATA SEGMENT DA1 DB 0 ORG 41H DA2 DB 0,A,41H,0,41H ADR DW DA1,DA2DATA ENDS答:給出的數(shù)據(jù)段中,有數(shù)據(jù)4100H的字存儲單元有3個,它們的偏移量分別是41H、 44H、47H。7.試用數(shù)據(jù)定義語句DB或DW改寫下述兩語句中的某一個,使它們在存儲器中有完全相同的存儲情況。 VAR1 DB abcdefghijV

40、AR2 DW 6162H,6364H,6566H,6768H,696AH答:將第一個偽指令語句改寫為VAR1 DW ab,cd,ef,gh,ij,第二個偽指令語句不變。或第一個偽指令語句不變,而將第二個偽指令語句改寫為:VAR2 DB 61H,62H,63H,64H,65H,66H,67H,68H,69H,6AH9.按下面的要求寫出程序的框架(1)數(shù)據(jù)段的位置從0E000H開始,數(shù)據(jù)段中定義一個100字節(jié)的數(shù)組,其類型屬性既是字又是字節(jié);(2)堆棧段從小段開始,段組名(類別名)為STACK;(3)代碼段中指定段寄存器,指定主程序從1000H開始,給有關(guān)段寄存器賦值;(4)程序結(jié)束。答:所求程序

41、框架為:Data SEGMENT AT 0E000H Arr_w LABEL WORD Arr_b DB 100 DUP(?)Data ENDSSta_seg SEGMENT PARA STACK DB 80 DUP(?) Top LABEL WORDSta_seg ENDSCode SEGMENT ASSUME CS:Code,DS:data,SS:sta_seg ORG 1000HStart: MOV AX, data MOV DS, AXMOV AX,Sta_seg MOV SS, AX MOV SP, OFFSET Top MOV AH, 4CH INT 21HCode ENDS EN

42、D Start10.編寫一個程序,要求運行時屏幕顯示BELL,同時響鈴一次(響鈴的ASCII碼為07)。答:所求程序為:Code SEGMENT ASSUME CS:codeStart: MOV DL, 42H MOV AH, 2 INT 21HMOV DL, 45H MOV AH, 2 INT 21H MOV DL, 4CH MOV AH, 2 INT 21H MOV DL, 4CH MOV AH, 2 INT 21H MOV DL, 7 MOV AH, 2 INT 21H MOV AH, 4CH INT 21HCode ENDS END Start11.假設(shè)在數(shù)據(jù)段X_SEG、附加段Y_S

43、EG和堆棧段Z_SEG中分別定義了字變量X、Y和Z,試編制一完整的程序計算 X+Y+Z,并將結(jié)果送X。答:所求程序為:X_SEG SEGMENT X DW 12eHX_SEG ENDSY_SEG SEGMENT Y DW 4d2HY_SEG ENDSZ_SEG SEGMENT STACK STACK Z DW 2CAHZ_SEG ENDSCode SEGMENT ASSUME CS:Code,DS:X_SEG,ES:Y_SEG,SS:Z_SEG Start: MOV AX, X_SEG MOV DS, AXMOV AX, Y_SEGMOV ES, AXMOV AX,ES:YADD X, AXM

44、OV BP, 0MOV AX, BP+ZADD X, AXMOV AH, 4CHINT 21HCode ENDS END Start12.寫一個完整的程序放在代碼段C_SEG中,要求把數(shù)據(jù)段D_SEG中的DADD1和附加段E_SEG中的DADD2相加,并把結(jié)果存放在D_SEG段中的SUM中。其中DADD1、DADD2和SUM均為雙字類型,DADD1賦值為98765,DADD2賦值為-15893。答:所求程序為:D_SEG SEGMENT DADD1 DD 98765 SUM DD ?D_SEG ENDSE_SEG SEGMENT DADD2 DD -15893E_SEG ENDSC_SEG S

45、EGMENT ASSUME CS: C_SEG,DS:D_SEG,ES:E_SEG Start: MOV AX, D_SEG MOV DS, AX MOV AX, E_SEG MOV ES, AX MOV AX,WORD PTR DADD1 MOV BX,WORD PTR DADD1+2 ADD AX, WORD PTR ES:DADD2 ADC BX, WORD PTR ES:DADD2+2 MOV WORD PTR SUM, AX MOV WORD PTR SUM+2, BX MOV AH, 4CH INT 21HC_SEG ENDS END Start=一、填空題1、執(zhí)行部件EU的組織有

46、: 4個通用寄存器 , 4個專用寄存器 和 1個標志寄存器和算術(shù)邏輯部件 。2、8086CPU從偶地址訪問內(nèi)存1個字時需占用 1個總線 周期,而從奇地址訪問內(nèi)存1個字操作需占用 2個總線 周期。3、IBM-PC機中的內(nèi)存是按段存放信息的,一個段最大存貯空間為 64K 字節(jié)。4、8086微處理機在最小模式下,用 M/ 來控制輸出地址是訪問內(nèi)存還是訪問I/O。5、一臺計算機能執(zhí)行多少種指令,是在 設(shè)計 時確定的。二、單項選擇題1、微型計算機的性能主要由 B 來決定。 A、價錢 B、CPU C、控制器 D、其它2、對微處理器而言,它的每條指令都有一定的時序,其時序關(guān)系是 C A、一個時鐘周期包括幾個

47、機器周期,一個機器周期包括幾個指令周期。 B、一個機器周期包括幾個指令周期,一個指令周期包括幾個時鐘周期。 C、一個指令周期包括幾個機器周期,一個機器周期包括幾個時鐘周期。 D、一個指令周期包括幾個時鐘周期,一個時鐘周期包括幾個機器周期。3、屬于數(shù)據(jù)寄存器組的寄存器是 C A、AX,BX,CX,DS B、SP,DX,BP,IP C、AX,BX,CX,DX D、AL,DI,SI,AH4、微型計算機的ALU部件是包含在 D 之中。 A、存貯器 B、I/O接口 C、I/O設(shè)備 D、CPU5、在8086和8088匯編語言中,一個字能表示的有符號數(shù)的范圍是 B A、-32768n32768 B、-327

48、68n32767 C、-65535n65535 D、-65536N655356、80386微型計算機是32位機,根據(jù)是它的 D 。 A、地址線是32位 B、數(shù)據(jù)線為32位 C、寄存器是32位的 D、地址線和數(shù)據(jù)線都是32位7、某數(shù)存于內(nèi)存數(shù)據(jù)段中,已知該數(shù)據(jù)段的段地址為2000H,而數(shù)據(jù)所在單元的偏移地址為0120H,該數(shù)的在內(nèi)存的物理地址為( B ) A02120H B.20120H C.21200H D.03200H8、在存貯器讀周期時,根據(jù)程序計數(shù)器PC提供的有效地址,使用從內(nèi)存中取出( D ) A操作數(shù) B.操作數(shù)地址 C.轉(zhuǎn)移地址 D.操作碼9、8086/8088系統(tǒng)中,對存貯器進行

49、寫操作時,CPU輸出控制信號有效的是( A ) A.W/=1, =0 B. =1 C.M/=0, =0 D.=010、在8086/8088微機系統(tǒng)中,將AL內(nèi)容送到I/O接口中,使用的指令是( D ) A.IN AL,端口地址 B.MOV AL,端口地址 C.OUT AL,端口地址 D.OUT 端口地址,AL三、簡答題1. 微處理器內(nèi)部結(jié)構(gòu)由哪些部件組成? 2. 論述8086 CPU的最小方式和最大方式的區(qū)別。3. 論述指令周期、機器周期和時鐘周期間的關(guān)系。4. 8086CPU從功能上分為幾部分?各部分由什么組成?各部分的功能是什么?5. 8086系統(tǒng)中的物理地址是如何得到的?假如CS=250

50、0H,IP=2l00H,其物理地址是多少?6. 什么是最大模式?什么是最小模式?用什么方法將8086/8088置為最大模式和最小模式?7. 存儲器分段組織有何優(yōu)越性?8. 試述BHE與A0組合如何選擇數(shù)據(jù)字?9. CPU響應(yīng)中斷時,為什么要執(zhí)行兩個連續(xù)的中斷響應(yīng)周期?答案:一、填空題1、 4個通用寄存器、4個專用寄存器、1個標志寄存器和算術(shù)邏輯部件2、 1個總線、2個總線3、 64K4、 M/5、 設(shè)計二、 單項選擇題1、B 2、C 3、C 4、D 5、B 6、D 7、B 8、D 9、A 10、D 三、簡答題1、 答案:微處理器由兩部分組成,總線接口單元和執(zhí)行單元2、8086CPU的最小方式和最大方式的

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論