微機(jī)原理王忠民版課后問(wèn)題詳解
《微機(jī)原理王忠民版課后問(wèn)題詳解》由會(huì)員分享,可在線閱讀,更多相關(guān)《微機(jī)原理王忠民版課后問(wèn)題詳解(14頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、word 局部習(xí)題答案 第二章 計(jì)算機(jī)中的數(shù)值和編碼 1、 將十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制和十六進(jìn)制 (1) 129.75==(2) 218.8125== (3) 15.625==(4) 47.15625=10 1111.0010 1B=2F.28 H 2、 將如下二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制和十六進(jìn)制 (1) 111010 B=58 =3A H(2) 1011 1100.111B= = BC.E H (3) 0.1101 1B= =(4) 11110.01 B= = 3、完成如下二進(jìn)制數(shù)的加減法運(yùn)算 (1) 1001.11+100.01=(2) 11010101
2、10.1001-01100001.0011= (3) 00111101+10111011=11111000(4) 01011101.0110-101101.1011= 4、完成如下十六進(jìn)制數(shù)的加減法運(yùn)算 (1)745CH+56DFH=D14B H(2) ABF.8H-EF6.AH=9C28.E H (3) 12AB.F7+3CD.05=1678 .FC H (4)6F01H-EFD8H=7F29 H 5、計(jì)算如下表達(dá)式的值 (1)128.8125+10110101.1011B+1F.2H= (2)287.68-10101010.11H+8E.EH= (3)18
3、.9+1010.1101B+12.6H-1011.1001= 6、選取字長(zhǎng)n為8位和16位兩種情況,求如下十進(jìn)制數(shù)的補(bǔ)碼。 (1)X=-33的補(bǔ)碼: (2)Y=+33的補(bǔ)碼:0010 0001,0000 0000 0010 0001 (3) Z=-128的補(bǔ)碼:1000 0000,1111 1111 1000 0000 (4)N=+127的補(bǔ)碼:0111 1111,0000 0000 0111 1111 (5)A=-65的補(bǔ)碼: 10111111, (6)B=+65的補(bǔ)碼: 01000001,0000 0000 0100 0001 (7)C=-96的補(bǔ)碼: 10100000
4、, (8)D=+96的補(bǔ)碼: 01100000,0000 0000 01100000 7、寫(xiě)出如下用補(bǔ)碼表示的二進(jìn)制數(shù)的真值 (1) [X]補(bǔ)=1000 0000 0000 0000 HX=-1000 0000 0000 0000 H=-32768 (2) [Y]補(bǔ)=0000 0001 0000 0001 HY=+0000 0001 0000 0001 H=+257 (3) [Z]補(bǔ)=1111 1110 1010 0101 HZ=-0000 0001 0101 1011 H=-347 (4) [A]補(bǔ)=0000 0010 0101 0111 HA=+0000 0010 0101
5、 0111 H=+599 8、設(shè)機(jī)器字長(zhǎng)為8位,最高位為符號(hào)位,試對(duì)如下格式進(jìn)展二進(jìn)制補(bǔ)碼運(yùn)算,并判斷結(jié)果是否溢出。 (1) 43+8 ∵[43]補(bǔ)=00101011B,[8]補(bǔ)=00001000B ∴[43]補(bǔ)+[8]補(bǔ)=00101011B+00001000B=00110011B=33H 00101011B +00001000B 00110011B ∵ CS=0,CD=0,OF=CS⊕CD=0⊕0=0 ∴無(wú)溢出 (1) 43+8 33H〔無(wú)溢出〕(2) -52+7D3 H〔無(wú)溢出〕 (3) 60+9096 H 〔溢出〕(4) 72-8 40 H
6、 〔無(wú)溢出〕 (5) -33+(-37)0BA H〔無(wú)溢出〕(6) -90+(-70) 60 H〔溢出〕 (7) ―9―(―7)FE H 〔無(wú)溢出〕(8) 60-90E2 H〔無(wú)溢出〕 9、 設(shè)有變量x=11101111B,y=11001001B,z=01110010B,v=01011010B,試計(jì)算x+y=?,x+z=?,y+z=?,z+v=?,請(qǐng)問(wèn):① 假設(shè)為無(wú)符號(hào)數(shù),計(jì)算結(jié)果是否正確?② 假設(shè)為帶符號(hào)補(bǔ)碼數(shù),計(jì)算結(jié)果是否溢出? x+y = 11101111B+11001001B=10111000B=1B8 H 1110 1111 B +1100 1001B
7、10111000B ① 假設(shè)為無(wú)符號(hào)數(shù)② 假設(shè)為帶符號(hào)補(bǔ)碼數(shù) ∵ CF=1∴不正確∵ CF=1,DF=1 OF=0 ∴不溢出 x+y = 0B8 Hx+z = 61 Hy+z = 3B Hz+v = 0CC H ①不正確 不正確 不正確 正確 ②不溢出 不溢出 不溢出溢出 第三章 80X86微處理器 1.簡(jiǎn)述8086/8088CPU中BIU和EU的作用,并說(shuō)明其并行工作過(guò)程。 答:(1) BIU的作用:計(jì)算20位的物
8、理地址,并負(fù)責(zé)完成CPU與存儲(chǔ)器或I/O端口之間的數(shù)據(jù)傳送。 (2) EU的作用:執(zhí)行指令,并為BIU提供所需的有效地址。 (3) 并行工作過(guò)程:當(dāng)EU從指令隊(duì)列中取出指令執(zhí)行時(shí),BIU將從內(nèi)存中取出指令補(bǔ)充到指令隊(duì)列中。這樣就實(shí)現(xiàn)了取指和執(zhí)行指令的并行工作。 2.8086/8088CPU內(nèi)部有哪些存放器?其主要作用是什么? 答:8086/8088CPU內(nèi)部共有14個(gè)存放器,可分為4類(lèi):數(shù)據(jù)存放器4個(gè),地址存放器4個(gè),段存放器4個(gè)和控制存放器2個(gè)。其主要作用是: (1) 數(shù)據(jù)存放器:一般用來(lái)存放數(shù)據(jù),但它們各自都有自己的特定用途。 AX(Accumulator)稱(chēng)為累加器。用該
9、存放器存放運(yùn)算結(jié)果可使指令簡(jiǎn)化,提高指令的執(zhí)行速度。此外,所有的I/O指令都使用該存放器與外設(shè)端口交換信息。 BX(Base)稱(chēng)為基址存放器。用來(lái)存放操作數(shù)在內(nèi)存中數(shù)據(jù)段內(nèi)的偏移地址, CX(Counter)稱(chēng)為計(jì)數(shù)器。在設(shè)計(jì)循環(huán)程序時(shí)使用該存放器存放循環(huán)次數(shù),可使程序指令簡(jiǎn)化,有利于提高程序的運(yùn)行速度。 DX(Data)稱(chēng)為數(shù)據(jù)存放器。在存放器間接尋址的I/O指令中存放I/O端口地址;在做雙字長(zhǎng)乘除法運(yùn)算時(shí),DX與AX一起存放一個(gè)雙字長(zhǎng)操作數(shù),其中DX存放高16位數(shù)。 (2) 地址存放器:一般用來(lái)存放段內(nèi)的偏移地址。 SP(Stack Pointer)稱(chēng)為堆棧指針存放
10、器。在使用堆棧操作指令(PUSH或POP)對(duì)堆棧進(jìn)展操作時(shí),每執(zhí)行一次進(jìn)棧或出棧操作,系統(tǒng)會(huì)自動(dòng)將SP的內(nèi)容減2或加2,以使其始終指向棧頂。 BP(Base Pointer)稱(chēng)為基址存放器。作為通用存放器,它可以用來(lái)存放數(shù)據(jù),但更經(jīng)常更重要的用途是存放操作數(shù)在堆棧段內(nèi)的偏移地址。 SI(Source Index)稱(chēng)為源變址存放器。SI存放源串在數(shù)據(jù)段內(nèi)的偏移地址。 DI(Destination Index)稱(chēng)為目的變址存放器。DI存放目的串在附加數(shù)據(jù)段內(nèi)的偏移地址。 (3) 段存放器:用于存放段地址 CS(Code Segment)稱(chēng)為代碼段存放器,用來(lái)存儲(chǔ)程序當(dāng)前使用的代碼段的段地
11、址。 CS的內(nèi)容左移4位再加上指令指針存放器IP的內(nèi)容就是下一條要讀取的指令在存儲(chǔ)器中的物理地址。 DS(Data Segment)稱(chēng)為數(shù)據(jù)段存放器,用來(lái)存放程序當(dāng)前使用的數(shù)據(jù)段的段地址。 DS的內(nèi)容左移4位再加上按指令中存儲(chǔ)器尋址方式給出的偏移地址即得到對(duì)數(shù)據(jù)段指定單元進(jìn)展讀寫(xiě)的物理地址。 SS(Stack Segment)稱(chēng)為堆棧段存放器,用來(lái)存放程序當(dāng)前所使用的堆棧段的段地址。堆棧是存儲(chǔ)器中開(kāi)辟的按“先進(jìn)后出〞原如此組織的一個(gè)特殊存儲(chǔ)區(qū),主要用于調(diào)用子程序或執(zhí)行中斷服務(wù)程序時(shí)保護(hù)斷點(diǎn)和現(xiàn)場(chǎng)。 ES(Extra Segment)稱(chēng)為附加數(shù)據(jù)段存放器,用來(lái)存放程序當(dāng)前使用的附加數(shù)據(jù)段的
12、段地址。附加數(shù)據(jù)段用來(lái)存放字符串操作時(shí)的目的字符串。 (4) 控制存放器 IP(Instmcdon Pointer)稱(chēng)為指令指針存放器,用來(lái)存放下一條要讀取的指令在代碼段內(nèi)的偏移地址。用戶程序不能直接訪問(wèn)IP。 FLAGS稱(chēng)為標(biāo)志存放器,它是一個(gè)16位的存放器,但只用了其中9位,這9位包括(個(gè)狀態(tài)標(biāo)志位和3個(gè)控制標(biāo)志位。它用來(lái)反映算術(shù)運(yùn)算和邏輯運(yùn)算結(jié)果的一些特征,或用來(lái)控制CPU的某種操作。 3.8086/8088CPU中有哪些存放器可用來(lái)指示操作數(shù)在存儲(chǔ)器中某段內(nèi)的偏移地址? 答:可用來(lái)指示段內(nèi)偏移地址的存放器共有6個(gè):IP、SP、BP、BX、SI、DI 4.8086/8
13、088CPU中標(biāo)志存放器FLAGS有哪些標(biāo)志位?它們的含義和作用如何? 答:標(biāo)志存放器中的標(biāo)志共有9個(gè),分為兩類(lèi):狀態(tài)標(biāo)志6個(gè)和控制標(biāo)志3個(gè)。其作用是: (1) 狀態(tài)標(biāo)志:用來(lái)反映算術(shù)和邏輯運(yùn)算結(jié)果的一些特征。 CF(Carry Flag)—進(jìn)位標(biāo)志位。當(dāng)進(jìn)展加減運(yùn)算時(shí),假設(shè)最高位發(fā)生進(jìn)位或借位,如此CF為1,否如此為0。該標(biāo)志位通常用于判斷無(wú)符號(hào)數(shù)運(yùn)算結(jié)果是否超出了計(jì)算機(jī)所能表示的無(wú)符號(hào)數(shù)的X圍。 PF(Parity Flag)—奇偶標(biāo)志位。當(dāng)指令執(zhí)行結(jié)果的低8位中含有偶數(shù)個(gè)1時(shí),PF為1,否如此為0。 AF(Auxiliary Flag)—輔助進(jìn)位標(biāo)志位。當(dāng)執(zhí)行一條加法或減法運(yùn)算
14、指令時(shí),假設(shè)結(jié)果的低字節(jié)的低4位向高4位有進(jìn)位或借位,如此AF為1,否如此為0。 ZF(Zero Flag)—零標(biāo)志位。假設(shè)當(dāng)前的運(yùn)算結(jié)果為0,如此ZF為1,否如此為00 SF(Sign Flag)—符號(hào)標(biāo)志位。當(dāng)運(yùn)算結(jié)果的最高位為1時(shí),SF=1,否如此為00 OF(Overflow Flag)—溢出標(biāo)志位。當(dāng)運(yùn)算結(jié)果超出了帶符號(hào)數(shù)所能表示的數(shù)值X圍,即溢出時(shí),OF=1,否如此為0。該標(biāo)志位通常用來(lái)判斷帶符號(hào)數(shù)運(yùn)算結(jié)果是否溢出o (2) 控制標(biāo)志位:用來(lái)控制CPU的操作,由程序設(shè)置或去除。它們是: TF(TrapFlag)—跟蹤(陷阱)標(biāo)志位。它是為測(cè)試程序的方便而設(shè)置的。假設(shè)將TF
15、置1,8086/8088CPU處于單步工作方式,否如此,將正常執(zhí)行程序。 IP(Interrupt Flag)—中斷允許標(biāo)志位。它是用來(lái)控制可屏蔽中斷的控制標(biāo)志位。假設(shè)用STI指令將IF置1,表示允許CPU承受外部從INTR引腳上發(fā)來(lái)的可屏蔽中斷請(qǐng)求信號(hào);假設(shè)用CLI指令將IP清0,如此禁止CPU承受可屏蔽中斷請(qǐng)求信號(hào)。IF的狀態(tài)對(duì)非屏蔽中斷與內(nèi)部中斷沒(méi)有影響。 DF(DirectionFlag)—方向標(biāo)志位。假設(shè)用STD將DF置1,串操作按減地址方式進(jìn)展,也就是說(shuō),從高地址開(kāi)始,每操作一次地址自動(dòng)遞減;假設(shè)用CLD將DF清0,如此串操作按增地址方式進(jìn)展,即每操作一次地址自動(dòng)遞增。
16、5.8086/8088CPU的地址總線有多少位?其尋址X圍是多少? 答:8086/8088地址總線有20根,尋址X圍1MB 6.什么叫指令隊(duì)列?8086/8088CPU中指令隊(duì)列有什么作用?其長(zhǎng)度分別是多少? 答:(1) 指令隊(duì)列:采用“先進(jìn)先出〞原如此,按順序存放預(yù)執(zhí)行指令的緩沖器稱(chēng)為指令隊(duì)列。 (2) 指令隊(duì)列的作用:存放EU將要執(zhí)行的指令,使CPU的取指和執(zhí)行指令能并行工作。 (3) 指令隊(duì)列的長(zhǎng)度:8086為6個(gè)字節(jié),8088為4個(gè)字節(jié)。 7.Intel8086與8088有何區(qū)別? 答:8086與8088的區(qū)別有三處: (1) 外部數(shù)據(jù)總線位數(shù)不同〔即地址/數(shù)據(jù)
17、分時(shí)復(fù)用引腳條數(shù)不同〕; 8086為16位:AD15~AD0。 8088為 8位:AD7~AD0 。 (2) 內(nèi)部指令隊(duì)列緩沖器長(zhǎng)度不同; 8086有6個(gè)字節(jié)。當(dāng)指令隊(duì)列出現(xiàn)2個(gè)空字節(jié)時(shí),BIU將取指補(bǔ)充。 8086有4個(gè)字節(jié)。當(dāng)指令隊(duì)列出現(xiàn)1個(gè)空字節(jié)時(shí),BIU將取指補(bǔ)充。 (3) 外部某些控制總線定義不同。 ①8086的28號(hào)引腳定義為M/IO(S2),8088定義為IO/M(S2) ②8086的34號(hào)引腳定義為BHE/S7,8088定義為SS0/(HIGH) 8.簡(jiǎn)述8086 CPU使用地址鎖存信號(hào)ALE將地址A15~A0與數(shù)據(jù)D15~D0分開(kāi)的工作原理。 答:在任
18、何一個(gè)總線周期的T1狀態(tài),ALE均為高電平,以表示當(dāng)前地址/數(shù)據(jù)復(fù)用線上的輸出的是地址信息,在ALE由高變低的下降沿時(shí)把地址裝入地址鎖存器,而在T2、T3和T4狀態(tài),ALE均為低電平,以表示當(dāng)前地址/數(shù)據(jù)復(fù)用線上的輸出的是數(shù)據(jù)信息,此時(shí)通過(guò)數(shù)據(jù)收發(fā)器進(jìn)展傳送。 9.什么是邏輯地址?什么是物理地址?假設(shè)邏輯地址為BA00:A800,試求物理地址。 答:邏輯地址:由段地址和偏移地址表示的存儲(chǔ)單元地址稱(chēng)為邏輯地址。 物理地址:CPU對(duì)存儲(chǔ)器進(jìn)展訪問(wèn)時(shí)實(shí)際所使用的20位地址稱(chēng)為物理地址。 假設(shè) 邏輯地址為BA00H:A800H 如此 物理地址=BA00H×10H+A800H=C480
19、0H 10.簡(jiǎn)述堆棧指針存放器SP的功能與堆棧的操作過(guò)程。 答:(1) SP的功能:指示進(jìn)棧和出棧操作時(shí)的偏移地址。 (2) 堆棧的操作過(guò)程:進(jìn)棧時(shí),先將SP-2,再將數(shù)據(jù)壓入堆棧〔即先移后入〕;出棧時(shí),先將數(shù)據(jù)彈出堆棧,再將SP+2〔即先出后移〕。 第四章 80X86 指令系統(tǒng) 1、 指出源操作數(shù)的尋址方式 ⑴ MOVBX,2000H ;立即數(shù)尋址⑵ MOVBX,[2000H];直接尋址 ⑶ MOV BX,[SI] ;存放器間接尋址⑷ MOV
20、 BX,[SI+2000H];存放器相對(duì)尋址 ⑸ MOV [BX+SI],AL ;存放器尋址⑹ ADD AX,[BX+DI+80];基址變址相對(duì)尋址 ⑺ MUL BL ;存放器尋址⑻ JMP BX;段內(nèi)間接尋址 ⑼ IN AL,DX ;端口間接尋址⑽ INC WORD PTR [BP+10H];存放器相對(duì)尋址 ⑾ MOV CL,LENGTH VAR ;立即數(shù)尋址⑿ MOV BL,OFFSET VAR1;立即數(shù)尋址 2、 指出如下指令是否正確 (1) MOV DS,0100H;錯(cuò)誤。源操作數(shù)是立即數(shù)時(shí),目的操作數(shù)不能時(shí)段存放器 (2) MOV B
21、P,AL;錯(cuò)誤。操作數(shù)類(lèi)型不一致 (3) XCHG AH,AL;正確。 (4) OUT310H,AL;錯(cuò)誤。端口直接尋址的X圍應(yīng)在0~FFH之間 (5) MOVBX,[BX];正確。 (6) MOVES:[BX+DI] ,AX;正確。 (7) MOVAX,[SI+DI];錯(cuò)誤。存儲(chǔ)器尋址中有效地址不能由兩個(gè)變址存放器組成 (8) MOVSS:[BX+SI+100H],BX;正確。 (9) AND AX,BL;錯(cuò)誤。操作數(shù)類(lèi)型不一致 (10) MOVDX,DS:[BP];正確。 (11) ADD[SI],20H;錯(cuò)誤。用PTR 說(shuō)明類(lèi)型 (12) MO
22、V 30H,AL;錯(cuò)誤。目的操作數(shù)不能為立即數(shù) (13) PUSH 2000H;錯(cuò)誤。堆棧指令的操作數(shù)不能是立即數(shù) (14) MOV [SI],[2000H];錯(cuò)誤。兩個(gè)操作數(shù)不能同時(shí)為存儲(chǔ)器操作數(shù) (15) MOV SI,AL;錯(cuò)誤。操作數(shù)類(lèi)型不一致 (16) ADD[2000H],20H;錯(cuò)誤。用PTR 說(shuō)明類(lèi)型 (17) MOV CS,AX;錯(cuò)誤。目的操作數(shù)不能為代碼段存放器 (18) INC[DI];錯(cuò)誤。需用PTR說(shuō)明類(lèi)型 (19) OUT BX,AL;錯(cuò)誤。端口間接尋址的存放器只能是DX存放器 (20) SHL BX,3;錯(cuò)誤。移位次數(shù)大
23、于1時(shí)應(yīng)該用CL存放器 (21) XCHG CX,DS;錯(cuò)誤。交換指令中不能出現(xiàn)段存放器 (22) POP AL;錯(cuò)誤。堆棧指令的操作數(shù)只能是字操作數(shù)(即16位操作數(shù)) 3、 寫(xiě)出存儲(chǔ)器操作數(shù)物理地址的計(jì)算表達(dá)式 (1)MOV AL,[DI] ;(DS)×10H+(DI) (2)MOV AX,[BX+SI] ;(DS)×10H+(BX)+(SI) (3)MOV 5[BX+DI],AL ;(DS)×10H+(BX)+(DI)+5 (4)ADD AL,ES:[BX] ;(ES)×10H+(BX) (5)SUB AX,[1000H] ;(D
24、S)×10H+1000H (6)ADC AX,[BX+DI+2000H] ;(DS)×10H+(BX)+(DI)+2000H (7)MOV CX,[BP+SI] ;(SS)×10H+(BP)+(SI) (8)INC BYTE PTR [DI] ;(DS)×10H+(DI) 4、 假設(shè)(DS)=3000H,(BX)=2000H,(SI)=0100H,(ES)=4000H,計(jì)算如下存儲(chǔ)器操作數(shù)的物理地址。 (1) (DS)×10H+(BX)=3000H×10H+2000H=32000H (2) (DS)×10H+(BX)+(SI)+1000H=3000
25、H×10H+2000H+0100H+1000H=33100 H (3) (DS)×10H+(BX)+(SI)=3000H×10H+2000H+0100H=32100 H (4) (ES)×10H+(BX)=4000H×10H+2000H=42000 H 5、假設(shè)(CS)=E000H,說(shuō)明代碼段可尋址物理存儲(chǔ)空間的X圍。 ∵最小物理地址為:(CS)×10H+0000H=E0000H 最大物理地址為:(CS)×10H+FFFFH=EFFFFH ∴代碼段可尋址物理存儲(chǔ)空間的X圍是:E0000H~EFFFFH 6、設(shè)(SP)=2000H,(AX)=3000H, (BX
26、)=5000H,執(zhí)行如下程序段后,(SP)=?,(AX)=?, (BX)=? PUSH AX PUSH BX POP AX (SP)=1FFEH,(AX)=5000H, (BX)=5000H 7、試比擬SUB AL,09H與CMP AL,09H這兩條指令的異同。假設(shè)(AL)=08H,分別執(zhí)行上述兩條指令后,(AL)=?,CF=?,OF=0,ZF=? (1)一樣點(diǎn):兩條指令都能完成(AL)-09H的功能,并且都影響六個(gè)狀態(tài)標(biāo)志位; 不同點(diǎn):SUB指令將運(yùn)算結(jié)果回送到AL存放器中,而CMP指令不回送。 (2) SUB AL,09H;(AL)=FFH,CF=1,OF=0,
27、ZF=0 CMP AL,09H;(AL)=08H,CF=1,OF=0,ZF=0 8、分別執(zhí)行如下指令,試求AL的內(nèi)容與各狀態(tài)標(biāo)志位的狀態(tài)。 (1) MOVAL,19H ; ADDAL,61H;(AL)=7AH OF=0 SF=0 ZF=0 AF=0 PF=0 CF=0 (2) MOVAL,19H ; SUBAL,61H;(AL)=B8H OF=0 SF=1 ZF=0 AF=0 PF=1 CF=1 (3) MOVAL,5DH ; ADDAL,0C6H;(AL)=23H OF=0 SF=0 ZF=0 AF=1 PF=0 CF=1 (4) MOVA
28、L,7EH ; SUBAL,95H;(AL)=E9H OF=1 SF=1 ZF=0 AF=0 PF=0 CF=1 9、用最少的指令,實(shí)現(xiàn)下述要求的功能。 (1)AH的高4位清零。ANDAH,0FH (2) AL的高4位去反。XOR AH, 0F0H (3) AL的高4位移到低4位,高4位清0。MOV CL,4 SHR AL,CL (4) AL的低4位移到高4位,低4位清0。MOV CL,4 SHL AL,CL 10、設(shè)(BX)=6D16H,(AX)=1100H,寫(xiě)出如下三條指令執(zhí)行后,AX和BX存放器中的內(nèi)容。 MOV CL,06H ROL
29、AX,CL SHRBX,CL(AX)=4004 H (BX)=01B4 H 11、設(shè)初值(AX)=0119H,執(zhí)行如下程序段后,(AX)=? MOVCH,AH ADDAL,AH DAA XCHGAL,CH ADCAL,34H DAA MOVAH,AL MOVAL,CH(AX)=3520 H 12、指出如下程序段的功能。 (1)MOVCX,10 LEASI,F(xiàn)irst LEADI,Second REP MOVSB將 First串中前10個(gè)字符傳送至Second 中 (2)CLD LEADI,[0404H] MOVCX,0080H XORAX,AX
30、 REP STOSW將起始地址為0404 H開(kāi)始的80 H個(gè)單元置成0 13、 設(shè)(BX)=6F30H,(BP)=0200H,(SI)=0046H,(SS)=2F00H,(2F246H)=4154H,試求執(zhí)行XCHG BX,[BP+SI]后,(BX)=?,(2F246H)=? (BX)=4154H(2F246H)=6F30H 14、設(shè)(BX)=0400H,(DI)=003CH,執(zhí)行LEA BX,[BX+DI+0F62H]后,(BX)=? (BX)=139E H 15、設(shè)(DS)=C000H,(C0010H)=0180H,(C0012H)=2000H,執(zhí)行LDS
31、 SI,[10H]后,(SI)=?, (DS)=? (SI)=0180 H,(DS)=2000 H 16、(DS)=091DH,(SS)=1E4AH,(AX)=1234H,(BX)=0024H,(CX)=5678H,(BP)=0024H,(SI)=0012H,(DI)=0032H,(09226H)=00F6H,(09228H)=1E40H,試求單獨(dú)執(zhí)行如下指令后的結(jié)果。 (1) MOVCL,20H[BX][SI];(CL)=0F6 H (2) MOV[BP][DI],CX;(1E4F6 H)=5678 H (3) LEABX,20H[BX][SI];(BX)=005
32、6 H MOVAX,2[BX];(AX)=1E40 H (4)LDSSI,[BP][DI]; MOV [SI],BX;((SI))=0024 H (5)XCHG CX,32H[BX]; XCHG 20H[BX][SI],AX;(AX)=5678 H ,(09226H)=1234 H 17、假設(shè)CPU中各存放器與RAM參數(shù)如如下圖,試求獨(dú)立執(zhí)行如下指令后,CPU與RAM相應(yīng)存放器與存儲(chǔ)單元的內(nèi)容是多少? CPU RAM 執(zhí)行前 執(zhí)行后 CS 3000H FFFFH CX 20506H 06H 不變 DS 2050H 0004H B
33、X 20507H 00H 不變 SS 50A0H 1000H SP 20508H 87H 不變 ES 0FFFH 17C6H DX 20509H 15H 不變 IP 0000H 8094H AX 2050AH 37H 94H DI 000AH 1403H BP 2050BH C5H 不變 SI 0008H 1 CF 2050CH 2FH 不變 〔1〕MOVDX,[BX+2];〔DX〕=0006H,〔BX〕=0004H 〔2〕PUSHCX;〔SP〕=0FFEH 〔3〕MOVCX,BX;〔CX〕=0004H,〔B
34、X〕=0004H 〔4〕TESTAX,01;〔AX〕=8094H,〔CF〕=0 〔5〕MOVAL,[SI];〔AL〕=87H 〔6〕ADCAL,[DI];〔AL〕=0CCH,〔CF〕=0 DAA;〔AL〕=32H 〔7〕INC SI;〔SI〕=0009H 〔8〕DECDI;〔DI〕=0009H 〔9〕MOV[DI],AL;〔〔DI〕〕=94H 〔10〕XCHGAX,DX;〔AX〕=17C6H,〔DX〕=8094H 〔11〕XORAH,BL;〔AH〕=84H,〔BL〕=04H 〔12〕JMPDX;〔IP〕=17C6H 18、(DS)=2000H,(BX)=1256H,(S
35、I)=528FH,偏移量=20A1H,(232F7H)=3280H,(264E5H)=2450H,試求執(zhí)行下述指令后的結(jié)果。 (1) JMP BX;(IP)=1256 H (2) JMP TABLE[BX];(IP)=3280 H (3) JMP [BX][SI];(IP)=2450 H 19、設(shè)(IP)=3D8FH,(CS)=4050H,(SP)=0F17H,當(dāng)執(zhí)行CALL 2000H:0094H后,試指出(IP)、(CS)、(SP)、((SP))、((SP)+1)、((SP)+2)和((SP)+3)的內(nèi)容。 CALL指令是5字節(jié)指令,下一條指令地址為4050
36、H:3D94H 所以執(zhí)行后 (IP)=0094H,(CS)=2000H、(SP)=0F13H ((SP))=94H,((SP)+1)=00H,((SP)+2)=00H,((SP)+3)=20H 第五章 匯編語(yǔ)言程序設(shè)計(jì) 2.PLENTH的值為0022,它表示當(dāng)前已分配單元空間; 3.L的值為6; 5.〔AX〕=000AH;〔BL〕=0AH;〔CL〕=01H; 10. MOV AX, 4A82H MOV DL,AH AND DL,0F0H
37、 MOV CL,4 SHR DL,CL PUSH AX AND AH,0FH MOV BH,AH AND AL,0F0H MOV BL,AL MOV CL,4 SHR BL,CL MOV CL,BH POP AX AND AL,0FH 11. data segment string1 db 'I am a student.' string2 db 'I am a student .' yes
38、 db 'match',0dh,0ah,'$' no db 'no match',0dh,0ah,'$' data ends code segment assume cs:code,ds:data,es:data start: push ds sub ax,ax push ax mov ax,data mov ds,ax mov es,ax lea si,strin
39、g1 lea di,string2 mov cx,string2-string1 cld repe cmpsb jnz dispno mov ah,9 lea dx,yes int 21h jmp exit dispno: mov ah,9 lea dx,no int 21h exit: MOV AH,4CH INT 21H code end
40、s 13. DATASEGMENT M DB 11H,22H,33H,44H,64H,87H,34,29,67H,88H,0F6H DB 43H,0B7H,96H,0A3H,233,56H,23H,56H,89H CEQU20 PDB20 DUP(?) NDB20 DUP(?) PLUS DB 'PLUS',0DH,0AH,'$' MINUS DB 'MINUS',0DH,0AH,'$' J DB 2 DUP(?)
41、 DATAENDS CODESEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,M LEA DI,P LEA BX,N MOV CX,C MOV DX,0 LOOP1: LODSB TESTAL,80H JNZ MINUS1 ;負(fù)數(shù)轉(zhuǎn)移 MOV [DI],AL INC DI INC DH ;存正數(shù)個(gè)數(shù) JMP AGAIN MINUS1: MOV [BX],AL INC
42、 BX INC DL;存負(fù)數(shù)個(gè)數(shù) AGAIN: DEC CX JNZ LOOP1 MOV WORD PTR J,DX;存結(jié)果 MOV DX,OFFSET MINUS MOV AH,9 INT 21H ;顯示提示信息 MOV BL,J MOV CH,2 ROTATE: MOV CL,4 ROL BL,CL MOV AL,BL AND AL,0FH
43、 ADD AL,30H CMP AL,3AH JL POR ADD AL,7 POR: MOV DL,AL MOV AH,2 INT 21H DEC CH JNZ ROTATE ;十六進(jìn)制形式輸出負(fù)數(shù)個(gè)數(shù) MOV AH,2 MOV DL,0DH INT 21H MOV DL,0AH INT 21H MOV D
44、X,OFFSET PLUS MOV AH,9 INT 21H MOV DH,J+1 MOV CH,2 ROTATE1: MOV CL,4 ROL DH,CL MOV AL,DH AND AL,0FH ADD AL,30H CMP AL,3AH JL POR1 ADD AL,7 POR1: MOV DL,AL MOV AH,2 IN
45、T 21H DEC CH JNZ ROTATE1 MOV AH,4CH INT 21H CODEENDS ENDSTART 第六章 半導(dǎo)體存儲(chǔ)器 2、 〔1〕 64片 片內(nèi)尋址線 10根,片間尋址線 6根 〔2〕 128片 片內(nèi)尋址線 11根,片間尋址線 5根 〔3〕 16片 片內(nèi)尋址線 11根,片間尋址線 5根 〔4〕 2片 片內(nèi)尋址線 14根,片間尋址線 2根 3、1024×8的RAM芯片,地址線11根。數(shù)據(jù)線8根 6、:8位微機(jī)地址,總線16位,設(shè)計(jì)12KB存儲(chǔ)系統(tǒng),其中ROM 占用
46、0000H開(kāi)始的8KB,RAM占用2000H 開(kāi)始的4KB,存儲(chǔ)芯片分別選用INTEL 2716和2114 分析如下:〔1〕ROM 2716 2K×8芯片,需4片,做字?jǐn)U展,片內(nèi)尋址線11根 RAM 2114 1K×4芯片,需8片,做字位擴(kuò)展,片內(nèi)尋址線10根 〔2〕地址X圍: A15 A14 A13 A12 A11 A10 ROM1:0000H~07FFH 0 0 0 0 0 0 ROM2:0800H~0FFFH 0
47、 0 0 0 1 0 A15 A14 A13 A12 A11 A10 ROM3:1000H~17FFH 0 0 0 1 0 0 ROM4:1800H~1FFFH 0 0 0 1 1 0 RAM1、2:2000H~23FFH 0 0 1 0 0 0 RAM3、4:2400H~27FFH 0 0 1 0 0
48、 1 RAM5、6:2800H~2BFFH 0 0 1 0 1 0 RAM7、8:2C00H~2FFFH 0 0 1 0 1 1 〔3〕A11、A12、A13 3:8譯碼器 譯碼輸入 〔一級(jí)譯碼〕 ROM1 :Y0 ROM2 :Y1 ROM3 :Y2 ROM4 :Y3 RAM1、2 :Y4 與 A10 (二級(jí)譯碼) RAM3、4 :Y4 與 A10 RAM5、6 :Y5 與 A10 RAM7、8 :Y5
49、 與 A10 〔4〕畫(huà)圖連接 略 9、8088組成的小型計(jì)算機(jī)系統(tǒng),32KB ROM,其地址X圍00000~07FFFH, RAM占用8KB,地址X圍:08000H~09FFFH。ROM選用 2764〔8K×8〕,RAM選用2114〔1K×4〕 分析如下 (1) ROM 2764 8K×8芯片,需4片,做字?jǐn)U展,片內(nèi)尋址線13根 RAM 2114 1K×4芯片,需16片,做字位擴(kuò)展,片內(nèi)尋址線10根 (2) 地址X圍: A15 A14 A13 A12 A11 A10 ROM1 00000~01FFF H
50、 0 0 0 (一級(jí)譯碼) ROM2 02000~03FFF H 0 0 1 ROM3 04000~05FFF H 0 1 0 ROM4 06000~07FFFH 0 1 1 RAM1(組)08000~083FFH 1 0 0 0 0 0 (二級(jí)譯碼) RAM2 08400~087FFH
51、 1 0 0 0 0 1 RAM3 08800~08BFFH 1 0 0 0 1 0 RAM4 08C00~08FFFH 1 0 0 0 1 1 RAM5 09000~093FFH 1 0 0 1 0 0 RAM6 09400~09FFFH 1 0 0 1 0
52、 1 RAM7 09800~09BFFH 1 0 0 1 1 0 RAM8 09C00~09FFFH 1 0 0 1 1 1 〔3〕 ROM1 Y0 (1 # 譯碼器 A15 A14 A13 譯碼輸入) ROM2 Y1 ROM3 Y2 ROM4 Y3 RAM1 Y0 (2 # 譯碼器 A12 A11 A10譯碼輸入 1 # Y4做2#的控制信號(hào)) RAM2 Y1 RAM3 Y2 RAM4 Y
53、3 RAM5 Y4 RAM6 Y5 RAM7 Y6 RAM8 Y7 〔4〕 需兩片3:8譯碼器 畫(huà)圖連接 略 第七章 輸入 / 輸出 與 中斷 15、01D8 H 16、接通打印機(jī)→ 檢查打印狀態(tài)→ 發(fā)送數(shù)據(jù) OR AL,01 H OUT 0F7H , AL IN AL ,0F6 H OUT 0F5H , AL 第八章 可編程接口芯片與應(yīng)用 5、 初始化命令字 與 計(jì)數(shù)初值 CUNT0 36H或37H 1000 CUNT1 54H 或55H 100 7、 始化控制字 〔1〕99H 〔2〕 B6 H PC2與PC4 置位命令字 09 H 05 H 14 / 14
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑施工重大危險(xiǎn)源安全管理制度
- 安全培訓(xùn)資料:典型建筑火災(zāi)的防治基本原則與救援技術(shù)
- 企業(yè)雙重預(yù)防體系應(yīng)知應(yīng)會(huì)知識(shí)問(wèn)答
- 8 各種煤礦安全考試試題
- 9 危險(xiǎn)化學(xué)品經(jīng)營(yíng)單位安全生產(chǎn)管理人員模擬考試題庫(kù)試卷附答案
- 加壓過(guò)濾機(jī)司機(jī)技術(shù)操作規(guī)程
- 樹(shù)脂砂混砂工藝知識(shí)總結(jié)
- XXXXX現(xiàn)場(chǎng)安全應(yīng)急處置預(yù)案
- 某公司消防安全檢查制度總結(jié)
- 1 煤礦安全檢查工(中級(jí))職業(yè)技能理論知識(shí)考核試題含答案
- 4.燃?xì)獍踩a(chǎn)企業(yè)主要負(fù)責(zé)人模擬考試題庫(kù)試卷含答案
- 工段(班組)級(jí)安全檢查表
- D 氯化工藝作業(yè)模擬考試題庫(kù)試卷含答案-4
- 建筑起重司索信號(hào)工安全操作要點(diǎn)
- 實(shí)驗(yàn)室計(jì)量常見(jiàn)的30個(gè)問(wèn)問(wèn)答題含解析