![計(jì)算機(jī)匯編語言第四章第五章答案.doc_第1頁](http://file.renrendoc.com/FileRoot1/2020-1/5/8c050ef8-1700-4888-a15e-afec120b7cea/8c050ef8-1700-4888-a15e-afec120b7cea1.gif)
![計(jì)算機(jī)匯編語言第四章第五章答案.doc_第2頁](http://file.renrendoc.com/FileRoot1/2020-1/5/8c050ef8-1700-4888-a15e-afec120b7cea/8c050ef8-1700-4888-a15e-afec120b7cea2.gif)
![計(jì)算機(jī)匯編語言第四章第五章答案.doc_第3頁](http://file.renrendoc.com/FileRoot1/2020-1/5/8c050ef8-1700-4888-a15e-afec120b7cea/8c050ef8-1700-4888-a15e-afec120b7cea3.gif)
![計(jì)算機(jī)匯編語言第四章第五章答案.doc_第4頁](http://file.renrendoc.com/FileRoot1/2020-1/5/8c050ef8-1700-4888-a15e-afec120b7cea/8c050ef8-1700-4888-a15e-afec120b7cea4.gif)
![計(jì)算機(jī)匯編語言第四章第五章答案.doc_第5頁](http://file.renrendoc.com/FileRoot1/2020-1/5/8c050ef8-1700-4888-a15e-afec120b7cea/8c050ef8-1700-4888-a15e-afec120b7cea5.gif)
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本答案經(jīng)本人簡(jiǎn)單作答、整理、修改(并是標(biāo)準(zhǔn)答案) ,僅供同學(xué)參考,歡迎同 學(xué)提出寶貴意見。 4.10 給定(BX)=637DH,(SI)=2A9BH,位移量 D=7237H,試確定在以下各種尋址方式下 的有效地址是什么 答案: (1)立即尋址 沒有 IP 的內(nèi)容 (2)直接尋址 7237H ;MOV AX,7237H (3)使用 BX 的寄存器尋址 沒有 ;MOV AX,BX (4)使用 BX 的間接尋址 637DH ;MOV AX,BX (5)使用 BX 的寄存器相對(duì)尋址 0D5B4H ;MOV AX,DBX (6) 基址變址尋址 8E18H ;MOV AX,BXSI (7)相對(duì)基址變址 004FH ;MOV AX,DBXSI 4.11求執(zhí)行兩條指令后,各標(biāo)志位的狀態(tài) MOV AL,91;執(zhí)行后, (AL)=91=5BH ADD AL,0BAH 加法執(zhí)行如下: 0BAH1011 1010 +05BH0101 1011 115H 1 0001 0101 CF:顯然最高位產(chǎn)生了進(jìn)位(兩個(gè)加數(shù)都是兩位的,和卻有三位) ,CF=1 AF:低四位向高四位產(chǎn)生了進(jìn)位(A+B 產(chǎn)生進(jìn)位) ,AF=1 ZF:運(yùn)算結(jié)果不為 0,ZF=0 SF:運(yùn)算結(jié)果最高位為 0(高四位:1H=0001B) ,SF=0 OF:負(fù)+正=正(兩個(gè)加數(shù)的符號(hào)位不同) ,沒有溢出,OF=0 4-12 (1)MOV AL,0F5H 正確 (2)ADD BXBP,BX 錯(cuò)誤,不能同時(shí)使用BXBP進(jìn)行尋址 (3)CMP AL,100H 錯(cuò)誤,AL 為 8 位,100H 大于 8 位,類型不匹配。 (4)TEST BP,DL 正確 (5)ADC 15,CL 錯(cuò)誤,目的操作數(shù)不能是立即數(shù) (6)SUB DI,DA_WORD 錯(cuò)誤,兩個(gè)操作數(shù)不能同時(shí)是存儲(chǔ)器操作數(shù)。 (7)OR CH,CL 正確 (8)MOV AL,1000H 錯(cuò)誤,AL 為 8 位,1000H 為 16 位,類型不匹配。 (9)SAR 10HDI,2 錯(cuò)誤,AL 為 8 位,移位多次必須 CL 中。 (10)NOT AL,BL 錯(cuò)誤,邏輯非操作是單操作指令。 (11)DEC CX,1 錯(cuò)誤,邏輯非操作是單操作指令。 (12)LEA ES,TABBX 錯(cuò)誤,目的寄存器只能是通用寄存器。 4-13、根據(jù)下列要求,寫出相應(yīng)的匯編指令 答案: (1)ADD AL,BXSI (3)ADD BX0B2H, CX (4)MOV AX,2A59H ADD 0524H ,AX (5)ADD AL ,0B5H 4-14、 答案: (1)寄存器間接尋址 MOV BX, OFFSET TABLE ADD BX, 08H MOV DX ,BX (2)寄存器相對(duì)尋址 MOV SI,O8H MOV DX,TABLESI (3)基址變址尋址 MOV BX , TABLE MOV SI,O8H MOV DX,BXSI 4-15 15、假設(shè)(DS)=091DH,(SS)=1E4AH,(AX)=1234H,(BX) =0024H,(CX)=5678H,(BP)=0024H,(SI)=0012H,(DI)=0032H,(09226H) =00F6H,(09228H)=1E40H,(1E4F6H)=091DH。試給出下列各指令或程序段的分別 執(zhí)行的結(jié)果。 答: (1) MOV CL,20HBXSI 有效地址 EA= 20H+BX+SI =20H+0024H+0012H=0056H 邏輯地址 DS:0056H 物理地址=091D0H+0056H=09226H (邏輯地址左移 1 為加有效地址) CL=09226H=0F6H (2) MOV BPDI,CX 有效地址 EA= BP+DI =0024H+0032H=0056H 邏輯地址 SS:0056H 物理地址=1E4A0H+0056H=1E4F6H 1E4F6H=CX=5678H (3) LEA BX,20HBXSI MOV AX,2BX 有效地址 EA= 20H+BX+SI =20H+0024H+0012H=0056H BX=0056H 有效地址 EA= 2H+BX=2H+0056H=0058H 邏輯地址 DS:0058H 物理地址=091D0H+0058H=09228H AX=09228H=1E40H (4) LDS SI,BXDI MOV SI,BX 有效地址 EA= BX+DI =0024H+0032H=0056H 邏輯地址 DS:0056H 物理地址=091D0H+0056H=09226H SI=09226H=00F6H DS=09226H+2H=09228H=1E40H 有效地址 EA= SI= 00F6H 邏輯地址 DS:00F6H 物理地址=1E400H+00 F6H=1E4F6H 1E4F6H=BX=0024H (5) XCHG CX,32HBX XCHG 20HBXSI,AX 有效地址 EA= 32H+BX =32H+0024H=0056H 邏輯地址 DS:0056H 物理地址=091D0H+0056H=09226H CX=09226H=00F6H 09226H=5678H 有效地址 EA= 20H+BX+SI =20H+0024H+0012H=0056H 邏輯地址 DS:0056H 物理地址=091D0H+0056H=09226H 09226H= 1234H AX=5678H 4-16 (01400)=1234H 應(yīng)改為(01410)=1234H 分析:有效地址 EA=10H+SI= 10H+0400H=0410H 邏輯地址 DS:0100H 物理地址=01000H+0410H=01410H MOV AX ,10HSI ;傳送的是源操作數(shù)的內(nèi)容 AX=1234H LEA AX ,10HSI ;傳送的是源操作數(shù)的有效地址 AX=0410H 4-17 mov ax,1234h ;將 1234h 這個(gè) 16 進(jìn)制數(shù)放到 ax 寄存器中 mov bx ,5678h ;同理,將 5678h 這個(gè) 16 進(jìn)制數(shù)放到 bx 這個(gè)寄存器中 push ax ;將 ax 壓棧,即將 1234h 放到棧頂 push bx ;將 bx 壓棧,即將 5678h 放到 1234h 上面(即棧頂) pop cx ;彈出當(dāng)前棧頂元素(5678h),并將其傳送給 cx,即(cx) =5678h 4-18 寫出執(zhí)行以下計(jì)算的指令序列,其中 X,Y,Z,R 和 W 均為存放 16 位帶符號(hào)數(shù)單元 的地址。 (1)ZW+(Z-X) (2)ZW-(X+6)-(R+9) (3)Z(W*X)/(Y+6),R余數(shù) (4)Z(W-X)/5*Y)*2 本題與書上不盡相同參考下題 答案: (1). MOV AX,Z ;把 Z 送到 AX SUB AX,X ;Z-X ADD AX,W ;W+(Z-X) MOV Z,AX ;結(jié)果保存在 Z 中 (2).MOV AX,R ;R 送到 AX 中 ADD AX,9 ;R+9 MOV BX,X ;X 送到 BX 中 ADD BX,6 ;X+6 ADD AX,BX ;(R+9)+(X+6),結(jié)果保存在 AX 中 MOV BX,W ; W 送到 BX 中 SUB BX,AX ; W-(R+9)-(X+6),連續(xù)減去兩個(gè)數(shù),相當(dāng)于減去這兩個(gè)數(shù)的和 MOV Z,BX ;最終結(jié)果送到 Z 中 (3).MOV AX,W ;把 W 送到 AX IMUL X ;W*X 注意:低十六位保存在 AX 里,高十六位保存在 DX 里 MOV BX,Y ;把 Y 送到 BX 里 ADD BX,6 ;Y+6 IDIV BX ;(W*X)/(Y+6) 注意:商保存在 AX 里,余數(shù)保存在 DX 里 MOV Z,AX ;把商送到 Z 中, MOV R,DX ;把余數(shù) 送到 R 中 (4).MOV AX,W ;把 W 送到 AX 中 SUB AX,X ;W-X CWD ;把 AX 中的十六位帶符號(hào)數(shù)擴(kuò)展成為 32 位,低十六位保存在 AX 中,高 十六位保;在 DX 中 MOV BX,5 ;把 5 送到 BX 中 IDIV BX ;(W-X)/5 被除數(shù)為 32 位,除數(shù)為 16 位商為 16 位 IMUL Y ;上一步結(jié)果再乖以 Y,積為 32 位 MOV BX,2 ;把 2 送到 BX 中 IMUL BX ;上一步乘法所得的積再乘以 2,各為 64 位 MOV Z,EAX ;把結(jié)果中低 32 位放入 Z 雙字單元中 ,超出范圍 MOV Z+4,EDX ;把結(jié)果中高 32 位放入 Z+4 雙字單元中 ,超出范圍 請(qǐng)參考下題 試編制一程序,計(jì)算下列公式的值,將商存放在試編制一程序,計(jì)算下列公式的值,將商存放在 Z Z 單元,余數(shù)放在單元,余數(shù)放在 R R 單元內(nèi)中。單元內(nèi)中。 X X、Y Y、Z Z、R R、W W 分別為存放分別為存放 1616 位帶符號(hào)數(shù)單元的地址。計(jì)算過程中中間結(jié)果和最后結(jié)果在位帶符號(hào)數(shù)單元的地址。計(jì)算過程中中間結(jié)果和最后結(jié)果在 1616 位二進(jìn)制數(shù)范圍內(nèi)位二進(jìn)制數(shù)范圍內(nèi) Z =(W-Z)/(5*Y)*2 MOV AX,W ;把 W 送到 AX 中 SUB AX,X ;W-X MOV BX,2 ;把 2 送到 BX 中 MUL BX ;先乘以 2 PUSH AX;保存中間結(jié)果(W-Z)*2 MOV AX,5;把 5 送到 AX 中 MUL Y ;5 再乖以 Y,乘機(jī)在 AX 中 MOV BX,AX;5*Y 再放到 BX 中 POP AX;返回中間結(jié)果(W-Z)*2 XOR DX,DX DIV BX;實(shí)現(xiàn)(W-Z)*2/(5*Y),商在 AX 中,余數(shù)在 DX 中 MOV Z,AX MOV R,DX 4-19給了一定初始寄存器條件,問執(zhí)行一段程序后,幾個(gè)寄存器中應(yīng)該是什么內(nèi)容 (遇到這種題目,應(yīng)當(dāng)把所有寄存器列一個(gè)表格,每一條指令分析完后,填上新的一行寄 存器內(nèi)容,這樣才不容易出錯(cuò),逐條指令分析,每條指令都使用上條指令執(zhí)行完后新的寄 存器內(nèi)容。下面我們按照這種思路來分析這段程序) (DS)=1234H, (SI)=124H, (12464H)=30ABH, (12484H)=464H (考試時(shí)可以用自己的方式簡(jiǎn)寫寄存器狀態(tài),提高速度) 1)LEA SI,SI 分析:EA=(SI)=124H 指令執(zhí)行完后, (SI)=(SI)=124H (注意 LEA 指令的功能,不要搞成 MOV 指令了) 引起的寄存器內(nèi)容變化:無(僅列出當(dāng)前變化了的,能提高解題速度) 2)MOV AX,SI 分析:EA=(SI)=124H默認(rèn)使用 DS 物理地址=12340H+124H=12464H 執(zhí)行后,寄存器變化為:(AX)=(12464H)=30ABH 3)MOV SI+22H,1200H 分析:SI+22H=22HSIEA=22H+(SI)=22H+124H=146H默認(rèn)使用 DS 物理地址=12340H+146H=12486H 執(zhí)行后,寄存器沒有變化,存儲(chǔ)單元變化為:(12486H)=1200H 4)LDS SI,SI+20H 分析:SI+20H=20HSIEA=20H+(SI)=20H+124H=144H默認(rèn)使用 DS 物理地址=12340H+144H=12484H 當(dāng)前:(12484H)=464H(12486H)=1200H 執(zhí)行后,變化:(SI)=(12484H)=464H, (DS)=(12486H)=1200H 5)ADD AX,SI 分析:EA=(SI)=464H默認(rèn)使用 DS 物理地址=12000H+464H=12464H 執(zhí)行后,變化:(AX)=(AX)+(12464H)=30ABH+30ABH=6156H 4-20假定了一些寄存器初始內(nèi)容,問執(zhí)行一段程序后某些寄存器和標(biāo)志位的內(nèi)容。 初始:(AX)=0A5C6H, (CX)=0F03H 1)STC 執(zhí)行后,CF=1 2)RCL AX,CL 當(dāng)前(CL)=03H, (AX)=1010010111000110B,CF=1 執(zhí)行后:(AX)=0010111000110110B=2E36H,CF=1, 3)AND AH,CH 當(dāng)前(AH)=02EH=00101110B (CH)= 0FH =00001111B 功能為提取低 4 位,執(zhí)行后,AH=0EH,CF=0(強(qiáng)制清 0) 4)RCR AX,CL 當(dāng)前(CL)=03H,CF=0, (AX)=0E36H=0000111000110110B, 執(zhí)行后:CF=1, (AX)=1000000111000110B=81C6H 4-21 初始:(AX)=0FC77H, (CX)=504H 1)CLC 執(zhí)行后,CF=0 2)SAR AX,CL 當(dāng)前(CL)=04H, (AX)=0FC77H=1111110001110111B 算術(shù)右移 4 位(記得最高位補(bǔ)充符號(hào)) ,執(zhí)行后(AX) =1111111111000111B=0FFC7H,CF=0。 3)XCHG CH,CL 當(dāng)前(CH)=05H, (CL)=04H 執(zhí)行后, (CH)=04H, (CL)=05H 4)SHL AX,CL 當(dāng)前(CL)=05H, (AX)=0FFC7H=1111111111000111B 邏輯左移 5 位,執(zhí)行后(AX)=1111100011100000B=0F8E0H,CF=1 4-22 初始:(AX)=0FFFFH INC AX 執(zhí)行后, (AX)=0000H NEG AX 執(zhí)行后, (AX)=0000H DEC AX 執(zhí)行后, (AX)=0FFFFH NEG AX 執(zhí)行后, (AX)=0001H 4-23 初始:(BX)=12FFH 1)MOV CL,8 執(zhí)行后, (CL)=8 2)ROL BX,CL 循環(huán)左移 8 位,相當(dāng)于低 8 位和高 8 位交換,CF 中保存高 8 位的最低位 執(zhí)行后, (BX)=0FF12H,CF=0 3)AND BX,0FFH 提取低 8 位,執(zhí)行后, (BX)=0012H,CF=0 4)CMP BX,0FFH 執(zhí)行后, (BX)不變, (BX)=0012H 因?yàn)樽鳛闊o符號(hào)數(shù),0012H C MOV AX,A NEG B SUB AX,B MOV C,AX (4)把 DX,AX 中的 32 位無符號(hào)數(shù)右移 2 位 SHR DX,1 RCR AX,1 SHR DX,1 RCR AX,1 (5) 用一條指令把 CX 中的整數(shù)轉(zhuǎn)變?yōu)槠鏀?shù) OR CX,0001H (6)將 AX 中第 1,3 位變反,其余各位保持不變 XOR AL,00001010B (7) 根據(jù) AX 中有 0 的位對(duì) BX 中對(duì)應(yīng)位變反,其余各位保持不變。 NOT AX (AX中內(nèi)容變反) XOR BX,AX 4-30 MOV CL, 4 ;設(shè)置循環(huán)次數(shù)為 SHR AX, CL ;實(shí)現(xiàn)將 AX 邏輯右移 MOV BL, DL ;將 DL 的低 4 位暫存在 BL 中 SHR DX, CL ;實(shí)現(xiàn)將 DX 邏輯右移 SHL BL, CL ;將 BL 邏輯左移 OR AH, BL ;將 BL 或上 AH ;也就是使 DL 的低 4 位或上 AH 高 4 位,從而實(shí)現(xiàn)了 DX、AX 中 的雙字右移四位。 4-39 要求不改變 DH 內(nèi)容方法很多: 1. 先送進(jìn) BH,再在 BH 里清除高三位就行了 2. 放到 AL 里(或其它字節(jié)單元)處理,然后存入 BH 3. 先將 DX 入棧,處理完從棧中恢復(fù) 要清除最左 3 位,也有多種方法: 1. 與 00011111B(或 1FH)作 AND 運(yùn)算 2. 左移三位,再右移三位 組合上面的兩種方法 1, 是這樣: MOV BH, DH AND BH, 00011111B 第五章答案 習(xí)題 5 5-1設(shè)已定義數(shù)據(jù)段 DATA SEGMENT ORG 0020H DA DB 20H DUP(0) DA1 DB 12H, 34H DA2 DB 56H, 78H ADDR DW DA1, DA2 ;變量ADDR(指定的單元)中存放變量DA1、DA2的(16 位)偏移地址。 ;也就是說,ADDR字存儲(chǔ)單元的內(nèi)容為變量DA1的(16位) 偏移地址,ADDR+2字存儲(chǔ)單元的內(nèi)容為變量DA2的(16 位)偏移地址. 為使ADDR+2字存儲(chǔ)單元中存放的內(nèi)容為0022H,試用兩種不同語句填寫上述空格。 5-2試用DW數(shù)據(jù)定義語句改寫下面兩條語句,使它們?cè)诖鎯?chǔ)器中與上述語句分別有完全 一致的存儲(chǔ)情況。 DA1 DB ABCDEFGHI DA2 DB 12H, 34H, 56H, 78H, 9AH, 0BCH, 0DEH 【分析】 (1)在DB偽指令中,一個(gè)字符串表達(dá)式可以連續(xù)書寫少于255個(gè)的字符,每一個(gè)字符分 配一個(gè)字節(jié)存儲(chǔ)單元,按地址遞增的排列順序依次存放字符串白左至右的每一個(gè)字 符。 (2)在DW偽指令中,每一個(gè)字符串表達(dá)式只能由12個(gè)字符組成,DW偽指令為每一個(gè) 字符串表達(dá)式分配兩個(gè)字節(jié)存儲(chǔ)單元。如果表達(dá)式是由兩個(gè)字符組成,那么前一個(gè) 字符的ASCII碼存放在高字節(jié)中,后一個(gè)字符的ASCII碼存放在低字節(jié)中。如果表 達(dá)式由一個(gè)字符組成,那么該字存儲(chǔ)單元的高字節(jié)存放00,而唯一字符的ASCII碼 存放在低字節(jié)存儲(chǔ)單元中。 DA1 DW BA, DC, FE, HG, I DA2 DW 3412H, 7856H, 0BC9AH, 0DEH 5-3下面兩條語句匯編后,NUM1和NUM2兩字節(jié)存儲(chǔ)單元中的內(nèi)容分別是什么? NUM1 DB (12 OR 6 AND 2) GE 0EH NUM2 DB (12 XOR 6 AND 2) LE 0EH 【分析】運(yùn)算符的優(yōu)先級(jí) 見page 214表5-2 NUM1 DB (12 OR 6 AND 2) GE 0EH (1)6 AND 201100010=0010 (2)12 OR 001011000010=1110140EH (3)0EH GE 0EHFFH 因此,NUM1 DB FFH NUM2 DB (12 XOR 6 AND 2) LE 0EH (1)6 AND 201100010=0010 (2)12 XOR 001011000010=1110140EH (3)0EH LE 0EHFFH 因此,NUM2 DB FFH 5-4下面兩條指令執(zhí)行后,DA2字存儲(chǔ)單元中的內(nèi)容是什么? DA1 EQU BYTE PTR DA2 ; DA1所指定的存儲(chǔ)單元為DA2的低位字節(jié) DA2 DW 0ABCDH;(16位)字單元 SHL DA1, 1;(字節(jié))邏輯左移。最高位移入CF中,最低位補(bǔ)0。 ;0CDH(1100,1101)1,1001,1010CF=1 ;DA2低位字節(jié)存儲(chǔ)單元內(nèi)容為9AH,高位字節(jié)內(nèi)容不 變,為ABH。 SHR DA2, 1;(字)邏輯右移。最低位移入CF中,最高位補(bǔ)0。 ;0AB9AH(1010,1011,1001,1010) 0101,0101,1100,1101,0 ;CF=0,DA2字存儲(chǔ)單元內(nèi)容為55CDH。 【分析】 5-5在下面數(shù)據(jù)定義中,數(shù)據(jù)為3000H的字存儲(chǔ)單元有幾個(gè),它們的偏移地址分別是多少? ORG30H DATA1 DB0, 0, 30H, 0, 30H DWDATA1 【分析】2個(gè),3000h, 3003h 地址30313233343536 存儲(chǔ)單元內(nèi)容00303000303000 5-6在下面存儲(chǔ)區(qū)中能構(gòu)成0302H數(shù)據(jù)的字存儲(chǔ)單元共有幾個(gè)? DB 8 DUP (3 DUP(2), 2 DUP(3) 【分析】 地 址 0 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 存 儲(chǔ) 單 元 內(nèi) 容 0 2 0 2 0 2 0 3 0 3 0 2 0 2 0 2 0 3 0 3 0 2 0 2 0 2 0 3 0 3 0 2 0 2 0 2 0 3 0 3 0 2 0 2 0 2 0 3 0 3 0 2 0 2 0 2 0 3 0 3 0 2 0 2 0 2 0 3 0 3 0 2 0 2 0 2 0 3 0 3 字單元必須始于偶地址處。 5-7下面的語句匯編后,數(shù)據(jù)項(xiàng)$+20H和$+40H中的$值分別是多少? ORG34H DA1DW10H, $+20H, 30H, $ +40H 【分析】 地址($值) 34H35H36H37H38H39H3AH3BH 存儲(chǔ)單元內(nèi)容 10 00 56 00 30 00 7A00 5-8己定義數(shù)據(jù)段 ORG 0213H BYTE1DB 15H, 34H, 56H ADR1DW BYTE1 下列各指令語句執(zhí)行后,能使AX中數(shù)據(jù)為偶數(shù)的語句有哪些? (1)MOV AX, WORD PTR BYTE1;3415H (2)MOV AX, WORD PTR BYTE11;5634H (3)MOV AL, BYTE PTR ADR11;02H (4)MOV AX, WORD PTR BYTE12;1356H 【分析】 地址1314151617181920 存儲(chǔ)單元內(nèi)容1534561302 5-9下面的指令序列執(zhí)行后,AX、BX、CX寄存器的內(nèi)容分別是什么? ORG0202H DW1DW20H, 30H MOVAL, BYTE PTR DW1+1;(AL)=00H MOVAH, BYTE PTR DW1;(AH)=20H MOV BX, OFFSET DW1;(BX)=0202H MOVCL, BYTE PTR DW1+2;(CL)=30H MOVCH, TYPE DW1;(CH)=02H 【分析】 5-10下面的程序段運(yùn)行后,AH和AL中的內(nèi)容分別是什么? DA1DB;是任一數(shù)據(jù) DA2DB0FEH MOVAL, DA1 ORAL, DA2 MOVAH, AL XORAH, 0FFH 【分析】 5-11下面的程序段運(yùn)行后,CX和DX中內(nèi)容分別是什么? DA3DB82H, 76H, 56H, OADH, 7FH MOVCX, WORD PTR DA3;(CX)=7682H ANDCX, 0FH;(CX)=0002H MOVAL, DA3+3;(AL)=0ADH/1010 1101H SHLAL, CL;(AL)=0B4H/ 1011 0100H 上述程序段運(yùn)行后,AL中的內(nèi)容是什么? 【分析】 5-12下面的程序段運(yùn)行期間,CX和DX中的內(nèi)容分別是什么? DA4EQUWORD PTR DA5 DA5DB0ABH, 89H SHR DA4, 1;DA4原來為89ABH(1000 1001 1010 1011) 之后(0100 0100 1101 0101)=44D5H MOVDX , DA4;(DX)=44D5H SHLDA5 , 1; DA5原來為(1101 0101)=D5H之后(1010 1010)=AAH MOVCX, DA4;(CX)=44AAH 【分析】 5-13當(dāng)執(zhí)行完INC BX指令且(BX)=05H時(shí),CX和AL中的內(nèi)容分別是什么? AA1DB10H DUP(2) AA2DW10H DUP(0304H) XORBX, BX ;設(shè)置數(shù)據(jù)指針 XORAL, AL ;設(shè)置累加器初值 XORCX, CX ;設(shè)置計(jì)數(shù)器初值為0 BB1:ADDAL, AA1BX ;累加 ADDAL, BYTE PTR AA2BX ;累加 INC BX ;修改數(shù)據(jù)指針 LOOPBB1 ;循環(huán) 【分析】 解:(AL)=2+4+2+3+2+4+2+3+2+4=28=1CH , (CX)=252 5-14下面的程序段運(yùn)行后,(AX)=? 如用LOOPNE指令替代LOOP指令,那么上述程序段運(yùn)行后,(AX)=?(CX)=? DB2DB4 DUP(2, 4, 6, 8) LEABX, DB2 MOVCX, 10H XORAX, AX LOP:ADDAL, BX ANDAL, 0FH CMPAL, 8 JBENEXT INCAH SUBAL, 08H NEXT:LOOP LOP 【分析】 由上表可知道,上述程序段執(zhí)行后,(AX)=0600H,(CX)=0 如果 LOOPNE 指令替代 LOOP 指令,那么上述程序段執(zhí)行后,(AX)=0300H (CX)=8 5-15下面的程序段運(yùn)行后,AH和AL中的內(nèi)容分別是什么? DA5DB2, 3, 7, 0AH, 0FH, 4, 5, 9, 8, 0CH XORAX, AX ; AX=0 XORCL, CL ; CL=0 XORBX, BX ; BX=0 LOP:TESTDA5BX, 01H ;測(cè)試存儲(chǔ)單元的數(shù)據(jù)是否偶數(shù) JENEXT ; 是偶數(shù),則跳轉(zhuǎn) ADDAL, DA5BX ;是奇數(shù),將其累加 INCAH ; 計(jì)算奇數(shù)個(gè)數(shù) NEXT:INCBX ;指向下一個(gè)存儲(chǔ)單元 INCCL ;數(shù)據(jù)個(gè)數(shù)計(jì)數(shù)器 CMPCL, 10 ;運(yùn)行后,(AL)=奇數(shù)之和=39=27H JNELOP ;(AH)=10 【分析】 5-16下面程序段是根據(jù)DAY字節(jié)存儲(chǔ)單元中內(nèi)容(17),從表WEEK中查出對(duì)應(yīng)的星期 一至星期日的英文縮寫,并用2號(hào)功能調(diào)用(單個(gè)字符顯示)顯示輸出。試把空白處填上適 當(dāng)?shù)闹噶睿ㄒ粋€(gè)空白只填寫一條指令)。 WEEKDBMON, TUE, WED, THU, FRI, SAT, SUN DAYDB3;數(shù)據(jù)17 XORBX, BX MOVBL, DAY DECBL;BLDAY-1 MOVAL, BL SALBL, 1;BL2(DAY-1) ADDBL, AL;BL3(DAY-1) MOVCX, 3 LOP:MOVDL, WEEKBX MOVAH, 02H INT21H INCBX LOOPLOP 【分析】 地址0123456789101112131415161718192021 存儲(chǔ)單元內(nèi)容MONTUEWEDTHUFRISATSUN3 ASCII碼4D03 5-17下面是判斷兩個(gè)存儲(chǔ)單元是否同為正數(shù)。如果是,則AX置0;否則AX置非0。試把 空白處填上適當(dāng)?shù)臈l件轉(zhuǎn)移指令(兩個(gè)空白處要利用不同的標(biāo)志位選用不同的條件轉(zhuǎn)移指 令,一個(gè)空白只填寫一條指令)。 DA6DW DA7DW MOVAX, DA6 MOVBX, DA7 XORAX, BX;AXDA6DA7。影響標(biāo)志位 SF、ZF、PF,CF=0、OF=0,AF不確定。 ;如果DA6和DA7同為正數(shù)或負(fù)數(shù),則SF=0,否則 SF=1。(將0視為正數(shù)) JSNEXT;SF=1DA6和DA7一正一負(fù),不設(shè)置AX,跳轉(zhuǎn) 至NEXT。 TESTBX, 8000H;(BX)(8000H)。BX的最高位是否為1?判斷BX 是否為負(fù)數(shù)。 ;影響標(biāo)志位SF、ZF、PF,CF=0、OF=0,AF不 確定。 JNZNEXT;ZF=0上一條影響標(biāo)志位ZF的指令運(yùn)行的結(jié)果 不為0,DA7和DA6為負(fù)數(shù)。 MOVAX, 0 NEXT: 【分析】 DATA1 SEGMENT DA6DW 0111H DA7DW 8001H DISP1DB DA6 and DA7 are Positive Number,13,10,$ DISP2DB DA6 or DA7 are not Positive Number Number,13,10,$ DATA1 ENDS CODE1 SEGMENT MAINPROCFAR ASSUMECS:CODE1, DS:DATA1, ES:DATA1 START: PUSHDS SUBAX, AX PUSHAX MOVAX, DATA1 MOVDS, AX MOVES, AX MOVAX, DA6 MOVBX, DA7 XORAX, BX JSNEXT TESTBX, 8000H JNZNEXT LEADX, DISP1 JMPDISP NEXT:LEADX, DISP2 DISP:MOVAH, 09H INT21H RET MAINENDP CODE1 ENDS ENDSTART 5-18下面程序段是判斷寄存器AH和AL中第3位是否相同。如果相同,AH置0;否則AH置 非0。試把空白處填上適當(dāng)?shù)闹噶睿ㄒ粋€(gè)空白只填寫一條指令)。 XORAH, AL;AHAHAL。按位異或,結(jié)果送AH。 ;對(duì)應(yīng)位相同,則異或結(jié)果為零(AH的對(duì)應(yīng)位為零)。 ;對(duì)應(yīng)位不相同,則異或結(jié)果為1。 ;如果AH和AL的第3位相同,則AH的第3位為0,否則為1。 ANDAH, 08H;按位邏輯與,影響標(biāo)志位 SF、ZF、PF,OF=0,CF=0。AF不定。 ;檢測(cè)第3位是否為1。 ;若第3位為1,則SF=0(邏輯與結(jié)果的最高位為0)、 ZF=0(邏輯與結(jié)果不等于0)、PF=0(邏輯與結(jié)果的第3 位為1,其余位為0)。 ;若第3位為0,則SF=0(邏輯與結(jié)果的最高位仍為0)、 ZF=1(邏輯與結(jié)果等于0)、PF=1(邏輯與結(jié)果的所有位 均為0) JP/JPEZERO JE/JZZERO MOVAH, 0FFH JMPNEXT ZERO:MOVAH, 0 NEXT: 【分析】 DATA1 SEGMENT DA6DB 01H DA7DB 01H DISP1DB OK,13,10,$ DISP2DB Different,13,10,$ DATA1 ENDS CODE1 SEGMENT MAINPROCFAR ASSUMECS:CODE1,DS:DATA1,ES:DATA1 START: PUSHDS SUBAX, AX PUSHAX MOVAX, DATA1 MOVDS, AX MOVES,AX MOVAH, DA6 MOVAL, DA7 XORAH, AL ANDAH, 08H JPZERO LEADX, DISP2 JMPNEXT ZERO:LEA DX, DISP1 NEXT:MOVAH,09H INT21H RET MAINENDP CODE1 ENDS ENDSTART 5-19試用兩條指令完成對(duì)寄存器AH和AL分別加1,且AL中加1形成的進(jìn)位加在AH的最低 位,AH中加1形成的進(jìn)位加在AL的最低位。 【分析】 ADD AX , 0101H ADC AL , 0 5-20在數(shù)據(jù)段中有一個(gè)九九乘法表,乘數(shù)和被乘數(shù)分別在兩個(gè)字節(jié)單元中。試編制一個(gè) 程序,用查表法求出1位數(shù)的乘積。 【分析】 DATA SEGMENT TAB1 DB 1,2,3,4,5,6,7,8,9 TAB2 DB 2,4,6,8,10,12,14,16,18 TAB3 DB 3,6,9,12,15,18,21,24,27 TAB4 DB 4,8,12,16,20,24,28,32,36 TAB5 DB 5,10,15,20,25,30,35,40,45, TAB6 DB 6,12,18,24,30,36,42,48,54 TAB7 DB 7,14,21,28,35,42,49,56,63 TAB8 DB 8,16,24,32,40,48,56,64,72 TAB9 DB 9,18,27,36,4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度大型活動(dòng)廣告投放策略合同
- 2025年度地下綜合管廊工程勞務(wù)分包施工合同
- 2025年度葡萄酒莊園旅游合作開發(fā)合同
- 2025年度智能化家居裝修合同服務(wù)協(xié)議
- 2025年度新能源車輛充電站借款合同糾紛處理流程
- 現(xiàn)代建筑施工中的新材料應(yīng)用
- 環(huán)境友好的新型材料與技術(shù)進(jìn)展
- 現(xiàn)代種植業(yè)中的智能灌溉與施肥技術(shù)
- 2025年度兒童游樂場(chǎng)加盟管理合同范本
- 用電環(huán)境的智能檢測(cè)與風(fēng)險(xiǎn)控制技術(shù)探索
- 《游戲界面設(shè)計(jì)專題實(shí)踐》課件-知識(shí)點(diǎn)5:圖標(biāo)繪制準(zhǔn)備與繪制步驟
- 自動(dòng)扶梯安裝過程記錄
- MOOC 材料科學(xué)基礎(chǔ)-西安交通大學(xué) 中國大學(xué)慕課答案
- 智慧供熱管理系統(tǒng)方案可行性研究報(bào)告
- 帕金森病的言語康復(fù)治療
- 中國城市居民的健康意識(shí)和生活方式調(diào)研分析報(bào)告
- 上海星巴克員工手冊(cè)
- 貓狗創(chuàng)業(yè)計(jì)劃書
- 復(fù)產(chǎn)復(fù)工試題含答案
- 部編版語文三年級(jí)下冊(cè)第六單元大單元整體作業(yè)設(shè)計(jì)
- 售后服務(wù)經(jīng)理的競(jìng)聘演講
評(píng)論
0/150
提交評(píng)論