大学微机原理第三章习题
微机原理第三章课后习题答案
![微机原理第三章课后习题答案](https://img.taocdn.com/s3/m/057e885fc950ad02de80d4d8d15abe23482f03a5.png)
ß 1. DS=1000H, BX=0200H, SI=0002H (10200H~10205H)依次存有10H,2AH,3CH,46H,59H,6BH ,给出执行指令后AX 的内容。
(1)MOV AX ,0200HAX=0200 (2)MOV AX ,[200H] 物理地址=1000H ×10H+0200H=10200H, AX=2A10H(3)MOV AX ,BXAX=0200H (4)MOV AX ,3[BX]物理地址=1000H ×10H +0200H+3H=10203H, AX=5946H (5)MOV AX ,[BX+SI] 物理地址=1000H ×10H+0200H +2H=10202H , AX=463CH(6)MOV AX ,2[BX+SI] 物理地址=1000H ×10H +200H+2H+2H=10204H , AX=6B59H ß 2.DS=1000H ,ES=2000H ,SS=3500H ,SI=00A0H , DI=0024H ,BX=0100H ,BP=0200H ,VAL=0030H ,指出寻址方式和物理地址。
(1)MOV AX ,[100H] (2)MOV AX ,VAL(3)MOV AX ,[BX] (4)MOV AX ,ES:[BX](5)MOV AX ,[SI] (6)MOV AX ,[BX+10H](7)MOV AX ,[BP] (8)MOV AX ,VAL[BP][SI](9)MOV AX ,VAL[BX][DI] (10)MOV AX ,[BP][DI](1)MOV AX, [100H] 直接寻址方式,10100H物理地址=DS ×10H+100H=10000H+0100H=10100H(2)MOV AX, V AL 直接寻址方式,10030H物理地址=DS ×10H+V AL=10000H+0030H=10030H(3)MOV AX, [BX] 寄存器间接寻址,10100H物理地址=DS ×10H+BX=10000H+0100H=10100H(4)MOV AX, ES:[BX] 寄存器间接寻址,20100H物理地址=ES ×10H+BX=20000H+0100H=20100H(5)MOV AX, [SI] 寄存器间接寻址,100A0H物理地址=DS ×10H+SI=10000H+00A0H=100A0H(6)MOV AX, [BX+10H] 寄存器相对寻址,10110H物理地址=DS ×10H+BX+10H=10000H+0100H+10H=10110H(7)MOV AX, [BP] 寄存器间接寻址,35200H物理地址=SS ×10H+BP=35000H+0200H=35200H(8)MOVAX, V AL[BP][SI] 相对基址变址寻址,352D0H 物理地址=SS ×10H+BP+SI+V AL=35000H+0200H+00A0H+0030H=352D0H (9)MOVAX, V AL[BX][DI] 相对基址变址寻址,10154H 物理地址=DS ×10H+BX+DI+V AL=10000H+0100H+0024H+0030H=10154H (10)MOV AX, [BP][DI] 基址变址寻址,35224H物理地址=SS ×10H+BP+DI=35000H+0200H+0024H=35224Hß 3.判断并说明原因(1)MOV DL ,AX 错,寄存器寻址方式中,目的操作数与源操作数长度必须一致错,寄存器寻址方式中,目的操作数与源操作数长度必须一致错,寄存器寻址方式中,目的操作数与源操作数长度必须一致 (2)MOV 8650H ,AX 错,目的操作数不可以是立即数错,目的操作数不可以是立即数(3)MOV DS ,0200H 错,MOV 指令不允许将立即数传入段寄存器 (4)MOV [BX],[1200H] 错, MOV 指令的两个操作数不能同时为存储器指令的两个操作数不能同时为存储器(5)MOV IP ,0FFH 错, IP 不能作为MOV 指令的目的操作数指令的目的操作数(6)MOV [BX+SI+3],IP 错, IP 不能作为MOV 指令的源操作数指令的源操作数(7)MOV AX ,[BX][BP] 错,BX 与BP 不可以同时出现在源操作数当中(8)MOV AL ,ES:[BP] 对(9)MOV DL ,[SI][DI] 错,SI 与DI 是两个变址寄存器,不可以同时出现在源操作数中。
微机原理与接口技术第三章试题及答案
![微机原理与接口技术第三章试题及答案](https://img.taocdn.com/s3/m/64ddc22e27284b73f3425042.png)
第三章3-1选择题1、MOVX A,@DPTR指令中源操作数的寻址方式是(B)(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址2.ORG 0003HLJMP 2000HORG 000BHLJMP 3000H 当CPU响应外部中断0后,PC的值是(B)(A)0003H (B)2000H (C)000BH (D)3000H3.执行PUSH ACC指令,MCS-51完成的操作是(A)(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(B)(C)SP-1 SP (ACC)(SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=(D)(C)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的一位被置位(D)(A)(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区(B)(A)MOV PSW,#13H (B)MOV PSW,#18H(B)SETB PSW.4 CLR PSW.3 (d) SETB PSW.3 CLR PSW.47、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是(C)(D)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址方式是(A)(A)位寻址(B)直接寻址(C)立即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执行完左边的程序后,PC的值是(C)(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使用(D)(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令3-2判断题。
4.MCS-51的相对转移指令最大负跳距是127B。
第三章微机原理习题答案
![第三章微机原理习题答案](https://img.taocdn.com/s3/m/6082070ba200a6c30c22590102020740bf1ecd50.png)
第三章习题答案一、 单选题1. 8086是高性能的第三代微处理器,是Intel 系列的系列的 B 位微处理器。
位微处理器。
A .8 B .16 C .32D .64 2. 8086有20根地址线,可以寻址到的内存空间能达到根地址线,可以寻址到的内存空间能达到 B 字节。
字节。
A .1KB .1MC .1GD .1T 3. 80486的内部所有部件都连接在的内部所有部件都连接在 A 上,并通过上,并通过 B 交换数据交换数据A .内部总线.内部总线B .数据总线.数据总线C .地址总线.地址总线D .外部总线.外部总线4. C 的任务就是在内部控制总线信号的控制下,把内部数据总线上的数据送上外部地址总线,或与外部数据总线的某些位交换数据,并产生相应的外部控制信号。
址总线,或与外部数据总线的某些位交换数据,并产生相应的外部控制信号。
A .高速缓存部件.高速缓存部件B .代码预取部件.代码预取部件C .总线接口部件.总线接口部件D .指令译码部件.指令译码部件5. 在指令流水线技术中,预取指令部件一次可以从内部Cache 取 C 字节的指令代码,送预取指令队列等候执行。
送预取指令队列等候执行。
A .4B .8C .16D .32 6. 当存储器的读出时间大于CPU 要求的时间时,为了保证CPU 与存储器的周期配合,就要利用一个READY 信号,使CPU 插入一个插入一个 D 状态。
状态。
A .T 1 B .T 2 C .T 3D .T w 7. 指令队列的作用是指令队列的作用是D 。
A .暂存操作数地址.暂存操作数地址 B .暂存操作数.暂存操作数C .暂存指令地址.暂存指令地址D .暂存预取指令.暂存预取指令8. 在80486微处理器中设置有4个系统地址寄存器,用来在保护方式下管理4个系统表。
其中用来存放全局描述符表的是中用来存放全局描述符表的是A 。
A .全局描述符表寄存器.全局描述符表寄存器B .中断描述符表寄存器.中断描述符表寄存器C .局部描述符表寄存器.局部描述符表寄存器D .任务状态寄存器.任务状态寄存器9. 段寄存器和段寄存器和 D 一起为操作系统完成内存管理、一起为操作系统完成内存管理、多任务环境、多任务环境、多任务环境、任务保护提供硬件支持。
微机原理第三章习题参考答案
![微机原理第三章习题参考答案](https://img.taocdn.com/s3/m/a6a40786d0d233d4b14e693a.png)
第三章2、对于下列存储容量的存储器芯片⑴Intel 2114(1K×4bit)⑵Intel 2167(16K×1bit)⑶Zilog 6132(4K×8bit)各需要多少条地址线寻址?需要多少条数据线?若要组成64K×8bit的存储器,选同一芯片各需要几片?答:存储器芯片的存储容量=存储单元个数×每个存储单元存放的二进制信息位数。
存储单元个数决定了存储器芯片的地址线条数,地址线条数N=㏒2(存储单元个数),每个存储单元存放的二进制信息位数决定了存储器芯片的数据线条数,数据线条数M=每个存储单元存放的二进制信息位数。
∴⑴Intel 2114(1K×4bit)芯片,需要N=㏒2(210)=10条地址线寻址,需要M=4条数据线。
⑵Intel 2167(16K×1bit)芯片,需要N=㏒2(214)=14条地址线寻址,需要M=1条数据线。
⑶Zilog 6132(4K×8bit)芯片,需要N=㏒2(212)=12条地址线寻址,需要M=8条数据线。
若要组成64K×8bit的存储器,选上述同一芯片,则:⑴选Intel 2114(1K×4bit)芯片,需要64K×8bit÷(1K×4bit)=64×2 =128片;即位扩展需2片一组,字扩展需64组,共需128片。
⑵选Intel 2167(16K×1bit)芯片,需要64K×8bit÷(16K×1bit)=4×8 =32片;即位扩展需8片一组,字扩展需4组,共需32片。
⑶选Zilog 6132(4K×8bit)芯片,需要64K×8bit÷(4K×8bit)=16×1 =16片;即不需位扩展,字扩展需16组,共需16片。
3、用16K×4bit的SRAM芯片组成64K×8bit的存储器,要求画出该存储器组成的逻辑框图。
微机原理第3章习题与答案
![微机原理第3章习题与答案](https://img.taocdn.com/s3/m/4cc4de8033d4b14e8524689b.png)
习题一、选择题1.寻址方式指出了操作数的位置,一般来说_______。
A.立即寻址给出了操作数的地址B.寄存器直接寻址的操作数在寄存器内,而指令给出了存储器C.直接寻址直接给出了操作数本身D.寄存器直接寻址的操作数包含在寄存器内,由指令指定寄存器的名称答案:D2.寄存器寻址方式中,操作数在_________。
A.通用寄存器B.堆栈C.内存单元D.段寄存器答案:A3.寄存器间接寻址方式中,操作数在_________。
A.通用寄存器B.堆栈C.内存单元D.段寄存器答案:C4.下列指令中的非法指令是______。
A.MOV[SI+BX],AXB.MOVCL,280C.MOV[0260H],2346HD.MOVBX,[BX]答案:B5.设(SP)=0100H,(SS)=2000H,执行PUSHBP指令后,栈顶的物理地址是_____。
A.200FEHB.0102HC.20102HD.00FEH答案:A6.指令LEABX,TAB执行后,其结果是______。
A.将TAB中内容送BXB.将TAB的段基址送BXC.将TAB的偏移地址送BXD.将TAB所指单元的存储内容送BX答案:C7.下列正确的指令格式有______。
A.MOV[BX],1B.MOVAL,0345HC.MOVES:PTR[CX],3D.XLAT答案:D8.设(AX)=C544H,在执行指令ADDAH,AL之后,______。
A.CF=0,OF=0B.CF=0,OF=1C.CF=1,OF=0D,CF=1,OF=1答案:C9.若AL、BL中是压缩BCD数,且在执行ADDAL,BL之后,(AL)=0CH,CF=1,AF=0。
再执行DAA后,(AL)=_____。
A.02HB.12HC.62HD.72H答案:B10.执行下列程序后AL的内容为_____。
MOVAL,25HSUBAL,71HDASA.B4HB.43HC.54HD.67H11.下列四条指令中,需要使用DX寄存器的指令是______。
微机原理第3章作业及答案
![微机原理第3章作业及答案](https://img.taocdn.com/s3/m/75f4c8d0b14e852458fb572e.png)
第3章指令系统习题解答1. 若DS=3000H,BP=2000H,SI=1000H,[32000H]=00H,[32001H]=40H,SS=3000H,[31000H]=20H,[31001H]=60H,[33000H]=50H,[33001H]=60H,说明下列各条指令执行后,AX中的内容是什么?并说明各条指令中源操作数的寻址方式。
(1) MOV AX,DS (2) MOV AX,[2000H](3) MOV AX,[SI] (4) MOV AX,[BP](5) MOV AX,[BP+SI]【解】(1)AX=3000H 寄存器寻址(2)AX=4000H 直接寻址(3)AX=6020H 寄存器间接寻址(4)AX=4000H 寄存器间接寻址(5)AX=6020H 基址加变址寻址2. 指出下列指令中的非法指令。
(1) MOV BX,AL (2) MOV CS,2000H(3) PUSH 4567H (4) XCHG VAR1,VAR2(5) ADD AL,148H (6) MOV DS,2000H(7) MOV BH,SI (8) SUB 38H,AL【解】非法指令:(1) MOV BX,AL BX和AL的长度不一致(2) MOV CS,2000H CS段寄存器不能作目的操作数(3) PUSH 4567H 只能将寄存器或存储单元的内容压入堆栈,不能是立即数(4) XCHG VAR1,V AR2 两个存储单元之间不能直接交换数据(5) ADD AL,148H 运算溢出(6) MOV DS,2000H 立即数不能直接传送给DS段寄存器(7) MOV BH,SI BH和SI的长度不一致(8) SUB 38H,AL 目的操作数不能是立即数3. 若SP=2000H,AX=3355H,BX=4466H,试指出下列指令或程序段执行后有关寄存器的内容。
(1) PUSH AX执行后AX=?,SP=?(2) PUSH AXPUSH BXPOP DXPOP CX执行后AX=?,CX=?,DX=?,SP=?【解】(1) 执行后AX=3355H,SP=1FFEH(2) 执行后AX=3355H,CX=3355H,DX=4466H,SP=2000H4. 请按下面的要求写出相应的汇编指令或指令序列。
微机原理第三章课后习题解答
![微机原理第三章课后习题解答](https://img.taocdn.com/s3/m/1805c71881c758f5f71f67c6.png)
3.1已知DS=091DH,SS=1E4AH,AX=1234H,BX=0024H,CX=5678H,BP=0024H,SI=0012H,DI=0032H,(09226H)=00F6H,(09228H)=1E40H , (1E4F6H)=091DH。
在以上给出的环境下,试问下列指令段之行后的结果如何?(1)MOV CL,[BX+20H][SI];物理地址=DS*10H+BX+SI+20H=091D0H+0024H+0012H+0020H=09226H(09226H)=00F6H,(09226H)=F6H, (09227H)=00H执行后:CL=F6H(2)MOV [BP][DI], CX物理地址=SS*10H+BP+DI=1E4A0H +0024H+0032H=1E4F6HCX=5678H 执行后:(1E4F6H) = 5678H(3)LEA BX, [BX+20H][SI];BX=BX+20H+SI=0056HMOV AX, [BX+2];物理地址=DS*10H+BX+2=091D0H +0058H=09228H(09228H)=1E40H 执行后:AX=1E40H(4)LDS SI, [BX][DI];物理地址=DS*10H+BX+DI=091D0H +0056H=09226H(09226H)=00F6H (09228H)=1E40H执行后:BX=(09226H)=00F6HDS=(09228H)=1E40HMOV [SI],BX物理地址=DS*10H+SI =1E400H +0012H=1E412HBX=0024H,执行后:(1E412H)=0024H(5)XCHG CX,[BX+32H]物理地址=DS*10H+BX+32H =091D0H +0056H =09226H(09226H)=00F6H , CX=5678H执行后:(09226H)=5678H , CX=00F6HXCHG [BX+20H][SI], AX物理地址=DS*10H+BX+20H+SI =091D0H +0056H =09226H(09226H)=5678H , AX=1234H执行后: (09226H)=1234H , CX=5678H3.2设DS=1000H,SS=2000H,AX=1A2BH,BX=1200H,CX=339AH,BP=1200H,SP=1350H,SI=1354H,(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H)=52H,(11355H)=0E7H,(126A4H)=9DH,(126A5H)=16H,(21350H)=88H,(21351H)=51H。
微机原理第3章习题与答案解析
![微机原理第3章习题与答案解析](https://img.taocdn.com/s3/m/456b5899011ca300a7c3904f.png)
习题一、选择题1.寻址方式指出了操作数的地点,一般来说_______。
A.立刻寻址给出了操作数的地点B.寄存器直接寻址的操作数在寄存器内,而指令给出了储存器C.直接寻址直接给出了操作数自己D.寄存器直接寻址的操作数包括在寄存器内,由指令指定寄存器的名称答案: D2.寄存器寻址方式中,操作数在_________。
A. 通用寄存器B. 货仓C.内存单元D.段寄存器答案: A3.寄存器间接寻址方式中,操作数在_________ 。
A. 通用寄存器B. 货仓C.内存单元D.段寄存器答案: C4.以下指令中的非法指令是 ______。
A. MOV [SI+BX], AXB.MOV CL, 280C.MOV [0260H], 2346HD.MOV BX, [BX]答案: B5.设 (SP)=0100H ,(SS)= 2000H ,履行 PUSH BP 指令后,栈顶的物理地点是 _____。
A.200FEHB.0102HC. 20102HD.00FEH答案: A6.指令 LEA BX, TAB 履行后,其结果是 ______。
A. 将 TAB 中内容送 BXB.将 TAB 的段基址送 BXC.将 TAB 的偏移地点送 BXD.将 TAB 所指单元的储存内容送 BX答案: C7.以下正确的指令格式有______。
A.MOV [BX], 1B.MOV AL, 0345HC.MOV ES: PTR[CX], 3D. XLAT答案: D8.设 (AX)=C544HA.CF=0,OF=0 ,在履行指令B.CF=0,OF=1ADD AH,AL 以后,C.CF=1,OF=0______。
D,CF=1,OF=1答案: C9.若 AL 、 BL 再履行 DAA 中是压缩BCD后, (AL)=_____数,且在履行。
ADD AL, BL 以后,(AL)=0CH , CF=1 ,AF=0 。
A.02HB.12HC.62HD.72H 答案: B10.履行以下程序后AL 的内容为 _____。
微机原理 第三章答案
![微机原理 第三章答案](https://img.taocdn.com/s3/m/77a615fbf705cc175527097e.png)
第三章作业1答案思考题:1、简述80C51的指令寻址方式。
答:80C51的指令寻址方式有:寄存器寻址、立即寻址、寄存器间址、直接寻址、变址寻址、相对寻址、位寻址2、访问特殊功能寄存器SFR,可使用哪些寻址方式?答SFR只能直接寻址3、若访问外部RAM单元,可使用哪些寻址方式?答:外间RAM单元,只能通过MOVX指令进行寄存器间接寻址。
4、若访问内部RAM单元,可使用哪些寻址方式?答:片内RAM低128字节,可直接寻址、寄存器间接寻址。
(只能使用R0, R1作为间址寄存器。
片内RAM20~2FH单元,可以位寻址。
5、MOV、MOVC、MOVX指令有什么区别?分别用于哪些场合?答:MOV指令用于对内部RAM的访问。
MOVC指令用于对程序存储器的访问,从程序存储器中读取数据(如表格、常数等)。
MOVX指令采用间接寻址方式访问外部数据存储器,有Ri和DPTR两种间接寻址方式。
执行MOVX 指令时,在P3.7引脚上输出RD有效信号,或在P3.6 引脚上输出WR有效信号,可以用做外部数据存储器或I/O的读/写选通信号,与单片机扩展电路有关。
作业:1.给下段汇编语句加注释,汇编成机器语言,并说明该段程序的作用ORG 0000H 机器码MOV SP,#5FH ;栈顶指针指向内部RAM5FH单元C:0X0000 75815FMOV R7,#08H ;R7<- 08H,R7为计数器0X0003 7F08MOV R0,#3FH ;R0指向内部RAM3FH单元0X0005 783FCLOOP: POP ACC ; ACC<- (SP), SP<- SP-1 0X0007 D0E0 MOV @R0,A;把A中内容送入R0指向的单元(3FH)0X0009 F6DEC R0 ;R0<- R0-1 0X000A 18DJNZ R7,CLOOP ;R7<-R7-1 ,R7不为0跳转0X000B DFFASJMP $ ;原地踏步0X000D 80FE程序段作用:把内部RAM中58H-5FH单元的内容依次存入从38H-3FH的八个单元2.阅读下列程序,分析其功能。
微机原理第三章练习题及解答
![微机原理第三章练习题及解答](https://img.taocdn.com/s3/m/ec83784f767f5acfa1c7cd92.png)
微机原理第三章练习题及解一:单项选择题●指令MOV AX,[BX] 中,源操作数的缺省段是( A )。
A:DS B:ES C:SS D:CS●指令PUSH [BX] 中,目的操作数的段寄存器是( C )。
A:DS B:ES C:SS D:CS●指令MOVSB 中,目的块的段寄存器是( B )。
A:DS B:ES C:SS D:CS●下列指令中,不正确的指令是( D )。
A:MOV AX,BX B:MOV AX,[BX]C:MOV AX,CX D:MOV AX,[CX]●下列指令中, 不正确的指令是( D )。
A:MOV AL,BL B:MOV AL,[BX]C:MOV AL,CL D:MOV AL,[BL]●下列指令中,不正确的指令是( D )。
A:MOV [BX+SI],AX B:MOV AX,[BX + SI]C:MOV AX,SI D:MOV AX,[BX + CX]●若要使寄存器AL中的高4 位不变,低4 位0,使用指令( B )。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位不变,低4 位1,使用指令( C )。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位为0,低4 位不变,使用指令( A )。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位为1,低4 位不变,使用指令( D )。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●条件转移指令JNZ的转移条件是( B )。
A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1●条件转移指令JZ的转移条件是( D )。
A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1●8086CPU响应可屏蔽中断的条件是( B )。
微机原理第3章习题(答案)
![微机原理第3章习题(答案)](https://img.taocdn.com/s3/m/7d3817c30b4e767f5bcfce4e.png)
微机原理第3章习题(答案)1.下列各条指令是否有错?如果有,请指出错误之处并改正(1)MOVDS 1000H(2)MOV[100],23H(3)ADDAX [BX + BP+ 6](4)PUSHDL(5)INAX, [3FH](6)0UT3FFH AL(7)LESSS [SI](8)POP[AX](9)IMUL4CH(10)SHLBX 5(11)INT300(12)XCHGD, 0FFFH答:(1)错误。
不允许直接向段寄存器送立即数,可改为:MOVAX 1000HMOVD, AX(2)错误。
该指令在语法上是对的,即可以把一个立即数送入一个存储单元;但是如果考虑实际编译,则第一操作数前应加上BYTEPT或WORDPT说明,否则汇编程序会因不能确定操作数长度而指示出错。
可改为:MOVBYTEPTR[1O0] 23H(3)错误。
不能同时使用两个基址寄存器BX、BP进行间接寻址,可改为:ADDAX [BX + DI + 6](4)错误。
堆栈操作应以字为单位进行,而DL是一个字节。
可改为:PUSHDX(5)错误。
在输入/输出指令中,8位端口地址应直接写在操作数处。
可改为:INAX, 3FH(6)错误。
端口地址3FFH已超出8位二进制表示范围,16位端口地址应用DX可改为:MOVD, 3FFHOUTDXAL(7)错误。
LES指令的目操作数应该是通用寄存器,不能是段寄存器。
可改为:LESBX [SI](8)错误。
AX不能用于间接寻址,间接寻址只能用BXBP、SI、DI四个寄存器之一。
可改为:POP[BX](9)错误。
立即数不能做乘法指令的操作数,可改为:MOVBJL 4CHIMULBL(10)错误。
当逻辑移位的次数大于1时,应该用CL指示次数。
可改为MOVCL 5SHLBX CL(11)错误。
操作数300>255,已超出有效的中断类型码范围。
(12)错误。
XCHG指令不允许立即数做它的操作数。
可改为:MOVC, 0FFFHXCHGDXCX2•请指出以下各指令的源、目的操作数所使用的寻址方式(1)MOVSI 2100H(2)SBBDISP[BX], 7(3)AND[DI] , AX(4)ORAX [609EH](5)MOV[BXb DI + 30H], CX(6)PUSHES [BP](7)CALL[DI]DISP(8)JNZShort_label答:(1)源操作数:立即数寻址;目的操作数:寄存器寻址(2)源操作数:立即数寻址;目的操作数:基址寻址(3)源操作数:寄存器寻址;目的操作数:寄存器间接寻址(4)源操作数:直接寻址;目的操作数:寄存器寻址5)源操作数:寄存器寻址;目的操作数:(带位移量的)基址变址寻址(6)源操作数:带段超越的寄存器间接寻址;目的操作数:隐含寻址(7)只有一个操作数,为变址寻址(8)只有一个操作数,为相对寻址3. 已知DS=2000H 有关的内存单元值为:(21000H)=00H,(21001H)=12H,(21200H)=00H,(21201H)=10H,(23200H)=20H,(23201H)=30H,(23400H)=40H,(23401H)=30H,(23600H)=60H,(23601H)=30H,符号COUNT 勺偏移地址为1200H。
微机原理第3章习题
![微机原理第3章习题](https://img.taocdn.com/s3/m/b3c3f73003768e9951e79b89680203d8cf2f6a40.png)
• 3.13将+46和-38分别乘以2,可应用什 么指令来完成?如果除以2呢?
解:
①将+46和-38分别乘以2,可分别用逻辑左 移指令SHL和算术左移指令SAL完成。 SHL针对无符号数,SAL针对有符号数, 也可用MUL(无符号数)和IMUL(有符 号数)
②除以2,用SHR或DIV实现+46/2,用SAR 或IDIV实现-38/2。
无物理地址
4 基址-变址-相对寻址
PA=(DS)×10H+VAR+(BX)+(SI)=608F0H
5 立即寻址
无物理地址
6 寄存器间接寻址
PA=(ES)× 10H+(BX)=20800H
7 寄存器间接寻址PA=(SBiblioteka )× 10H+(BP)=16200H
8 寄存器相对寻址
PA=(DS) × 10H+(BX)+20H=60820H
• 3.4试说明指令MOV BX,5[BX]与指令LEA BX, 5[BX]的区别。
答:
①MOV BX,5[BX]是数据传送类指令,表示将数据段中 以(BX+5)为偏移地址的16位数据送寄存器BX中。
② LEA BX,5[BX]是取偏移地址指令,结果为
(BX)=(BX)+5,即操作数的偏移地址为(BX)+5 • 3.5设堆栈指针SP的初值为2300H,(AX)=50ABH,
(4)(AX)=1322H,执行SUB AX,76EBH后, (AX)=1322H-76EBH=9C37H
标志位状态分别为:CF=1,SF=1,ZF=0, OF=0,PF=0,AF=1
补充习题
• 1. 一个有16个字的数据区,起始地址为 70A0H:DDF6H,则这个数据区末字单 元的物理地址是( )
微机原理第3章习题答案
![微机原理第3章习题答案](https://img.taocdn.com/s3/m/228ee8cc0875f46527d3240c844769eae009a36d.png)
微机原理第3章习题答案第3章习题参考答案1 分别指出下列指令中的源操作数和目的操作数的寻址方式。
答:源操作数目的操作数(1)MOV AX,[SI] 寄存器寻址寄存器间接寻址(2)MOV DI,100 寄存器寻址立即寻址(3)MOV [BX],AL 寄存器间接寄存器(4)MOV [BX][SI],CX 基址+变址寄存器(5)ADD DX,106H[SI] 寄存器变址(6)PUSH AX 寄存器(7)ADD DS:[BP],AX 带段超越寄存器间接寻址寄存器(8)OR AX,DX 寄存器寄存器2.设寄存器(DS)=2000H,(SS)=1500H,(ES)=3200H,(SI)=0A0H,(BX)=100H,(BP)=10H,数据段中变量VAL的偏移地址为50H。
试指出下列各条指令中源操作数的寻址方式是什么?对于存储器操作数,其物理地址是多少?答:操作数的寻址方式存储器操作数PA (1)MOV AX,[100H] 直接寻址20100H(2)MOV CX,ES:[BX] 带段超越的寄存器间接寻址32100H(3)MOV DX,[BX][SI] 基址+变址寻址200F0H(4)MOV AX,V AL[SI] 变址寻址200F0H(5)MOV BX,1234[BX] 基址寻址205D2H(6)MOV AX,[BP] 寄存器间接寻址15010H3. 判断下列指令有误错误,若有,则改之。
答:(1)PUSH CL 有错,对堆栈操作数总是16位的。
改为:PHSH CX (2)ADCAX,0ABH 无,只是CF的值是不确定的(0或1)(3)OUT 3EBH, AX 有,输出设备的端口地址若超过8位,应使用DX 间接寻址。
改为:MOV DX, 3EBHOUT DX,AX(4)MUL AL, CL 有错。
乘法指令中有AX或AL寄存器是隐含的。
改为:MUL CL(5)MUL AX, 25 有错。
乘法指令中不能用立即数。
改为:MOV BX,25MUL BX(6)ROL DX,5 有错。
微机原理第三章及答案
![微机原理第三章及答案](https://img.taocdn.com/s3/m/58eca62cce2f0066f43322e7.png)
第三章习题集二.选择题(每小题1分,共15分)1. 逻辑地址1000:2000对应的物理地址为( B )。
A、1200HB、12000HC、2100HD、21000H2. 下面哪个寄存器使用时的默认段寄存器为SS( C )。
A、AXB、BXC、SPD、SI3. 当使用BP寄存器作基址寻址时,若无指定段替换,则内定在( B )段内寻址。
4.在下面四组寄存器中,第 D 组都可用于对存储器间接寻址方式的寄存器。
A. AX,BX,CX,IP;B. BX,SP,DX,SIC. IP,SP,BP,AXD. BP,BX,SI,DI5. 含有立即数的指令中,该立即数被存放在 A 。
A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中6. 用段基值及偏移量来指明内存单元地址的方式称为( C )。
A、有效地址B、物理地址C、逻辑地址D、相对地址7. 已知物理地址为0FFFF0H,且段内偏移量为0B800H,若对应的段基地址放在DS中,则DS=( B )。
A、0FFFFHB、0F47FHC、2032HD、0F000H8. 含有立即数的指令中,该立即数被存放在 B 。
A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中9.寄存器间接寻址方式中,操作数在 C 中。
A. 通用寄存器B. 堆栈C. 存储单元D. 段寄存器10.下列指令中,有语法错误的指令是(B D)。
A. MOV AX,[1000H]B. LEA AL,1000HC. MOV [1000H],ALD. MOV 1000H,AX11. 下列指令语法有错的是:CA. MOV AX,1000HB. MOV AX,BXC. MOV [AX],[1000H]D. MOV AX,[1000H]12. 8086/8088中除___C___两种寻址方式外,其它各种寻址方式的操作数均在存储器中。
第三章微机原理课后习题参考答案
![第三章微机原理课后习题参考答案](https://img.taocdn.com/s3/m/bb7f0a0d59fb770bf78a6529647d27284b73370b.png)
第三章微机原理课后习题参考答案第三章微机原理课后习题参考答案————————————————————————————————作者:————————————————————————————————日期:第三章微机原理课后习题参考答案1. 指出下列指令的错误原因。
(1) AND AX, DL ;类型不匹配(2) ADD CS, DX ;CS不能作为目的操作数(3) MOV AX, IP ;IP不能作为指令的操作数(4) MOV [BP][SI], [SI] ;两个操作数不能同时为内存操作数(5) SUB [BP][SI], ES:DX ;段超越前缀只能用在内存操作数之前(6) XCHG AL, [SI][DI] ;没有[SI][DI]这种操作数形式(7) JGE AX ;条件转移指令的操作数只能是标号(8) PUSH DL ;对堆栈不能进行字节操作2. 用一条指令将BX清0。
(请给出3种方法)方法1:MOV BX, 0方法2:SUB BX, BX方法3:AND BX, 0 ;将BX和0做与,可以将BX清零方法4:XOR BX, BX3. 写出实现下列功能的指令序列。
(1) 判断AX的值,若AX等于0,则转到标号LABEL处。
(请写出3种方法)方法1:CMP AX, 0JZ LABEL ; 如果ZF = 0,说明AX为0,因为CMP指令是做减法,但是不写回结果,因此指令执行后AX内容不会受到破坏方法2:TEST AX, 0FFFF HJZ LABEL ; 如果ZF = 0,说明AX为0方法3:AND AX, 0FFFF HJZ LABEL(2) 将AL的高4位与低4位分别放入AH与AL的低4位,并将AH与AL的高4位清0。
MOV AH, ALAND AL, 0FH ; AL高4位通过与清零,而低4位保持不变MOV CL, 4SHR AH, CL ; 这两条指令通过逻辑右移将AH的高4位清零,因为SHR在右移后,高位补零(3) 若AX和BX中的数恰好1个是奇数、1个是偶数,则将奇数放入AX,偶数放入BX;否则,AX和BX不变。
微机原理第三章习题与参考答案
![微机原理第三章习题与参考答案](https://img.taocdn.com/s3/m/4ef1fcfa941ea76e58fa040f.png)
第三章习题与参考答案3.1 已知 (DS) = 1000H,(ES) = 2000H,(SS) = 3000H,(SI) = 0050H,(BX) =0100H,(BP) =0200H,数据变量DISP的偏移地址为1000。
指出下列指令的寻址方式和物理地址。
(1) MOV AX,0ABH 立即寻址无(2) MOV AX,BX 寄存器寻址无(3) MOV AX,[l000H] 直接寻址 10000H(4) MOV AX,DATA 直接寻址 (DS*16+DATA )(5) MOV AX,[BX] 寄存器间接寻址 10100H(6) MOV AX,ES:[BX] 寄存器间接寻址 20100H(7) MOV AX,[BP] 寄存器间接寻址 30200H(8) MOV AX,[SI] 寄存器间接寻址 10050H(9) MOV Ax,[BX+l0] 寄存器相对寻址 1010AH(10) MOV AX,DISP[BX] 寄存器相对寻址 11100H(1l) MOV AX,[BX+SI] 基址变址寻址 10150H(12) MOV AX,DISP[BX][SI] 相对基址变址寻址 11150H3.2 分别说明下例指令采用的寻址方式和完成的操作功能。
(1) MOV CX,2000H 立即寻址将立即数2000H送CX寄存器(2) MOV DS,AX 寄存器寻址将AX寄存器内容送DS段寄存器(3) AND CH,[1000H] 直接寻址将[DS*16+1000H]单元的内容送CH寄存器(4) ADD [DI],BX 寄存器间接寻址将CL寄存器的内容送[DS*16+DI]单元(5) MOV SS:[3000H],CL 直接寻址将CL寄存器的内容送[SS*16+3000H]单元(6) SUB [BX][SI],1000H 直接寻址将立即数1000H送[DS*16+BX+SI+50H]单元(7) ADD AX,50H[BX][SI] 相对基址变址寻址将[DS*16+BX+SI+50H]单元的内容送AX寄存器(8) PUSH DS 寄存器寻址将DS寄存器的内容送[SS*16+SP]单元(9) CMP [BP][DI],AL 寄存器寻址将AL寄存器的内容送[SS*16+DI+BP]单元3.3 判断下列指令正误,如果错误请指出原因。
大学微机原理第三章习题
![大学微机原理第三章习题](https://img.taocdn.com/s3/m/1f7ac6fa6394dd88d0d233d4b14e852458fb39eb.png)
大学微机原理第三章习题8086/8088的寻址方式和指令系统习题一.单项选择题1.设置BX=2000h,Si=3000h,指令movax的源操作的有效地址[BX+Si+8]为()。
a、5000hb.5008hc.23008hd.32022h2.设ds=1000h,es=2000h,bx=3000h,指令addal,[bx]的源操作数的物理址为()。
a.13000hb.23000hc.33000hd.3000h3.设ds=2000h,es=3000h,si=200h,指令moves:[si],al的目的操作数的物理地址为()。
a.20210hb.30200hc.50200hd.200h4.指令movmem[bx],ax中的mem是()。
a.原码b.反码c.补码d.移码5.用来作为寄存器间接寻址的寄存器有()个。
a.8b.6c.5d.46.指令mov[BX+Si],Al中的目标操作数使用()段寄存器。
a、 csb.dsc.ssd.es7.指令movbx,[bp+5]中的源操作数使用()段寄存器。
a.csb.dsc.ssd.es8.段内间接寻址只改变()中的内容。
a、 csb之间的间接寻址。
ipc。
政务司司长和知识产权署。
psw9。
仅更改()中的内容。
a.csb.ipc.cs和ipd.psw10.下述指令中不改变psw的指令是()。
a.movax,bxb.andal,0fhc.shrbx,cld.addal,bl11.下述指令中不影响cf的指令是()。
a.shlal,1b.inccxc、添加[bx],ald.subax,bx12.两个整数补码9ch和7ah相加运算后,会产生()。
a.无溢出且无进位b.无溢出但有进位c.有溢出且有进位d.有溢出但无进位13.指令jmpwordptr[bx]属于()寻址。
a、段内直接B.段内间接C.段间直接D.段间间接14。
指令movax的源操作数[BX+Si+8]属于()寻址。
微机原理第三章习题及答案
![微机原理第三章习题及答案](https://img.taocdn.com/s3/m/476b78676bec0975f565e219.png)
第 三 章 存 储 器习题答案一、填空题1、某存储器模块的容量为64K 字节,若采用2164(64K ×1位)组成,则需要2164 8 片,若改用2764(8K ×8位),则需 8 片。
解答:容量单个存储器芯片的存储存储器系统的存储容量=片个数构成存储器系统所需芯所以:64*82164=864*1K bitK bit=所需芯片个数片64*82764=88*8K bitK bit=所需芯片个数片2、1K ⅹ8位的RAM 芯片有 10 条地址线, 8 条数据线,若用其组成16K ⅹ8位存储器需要 16 片。
解答:存储单元的个数(字长)通常与地址线的位数相关,每个存储单元存储的二进制位数(位数)与数据线的位数相关。
存储容量为1K*8bit (8K*8位),表示每片RAM 有1K 个存储单元(K 1210=),每个存储单元存储8位二进制数,也可以写为1KB (B 表示8位二进制数,即1个字节Byte ),因此该RAM 芯片有10根地址线(A 0-A 9),8根数据线(D 0-D 7)。
3、现要用6116SRAM 芯片构成8K ×32位的存储器,共需此种芯片 16 片。
解答:8*326116=162*8K bitK bit=所需芯片个数片二、选择题1、SRAM 芯片6116的3个信号CE 、OE 、WE 电平分别为 时,6116的工作方式为读出。
( D )A.1,0,0 B.0,0,0 C.0,1,1 D.0,0,1解答:3个信号CE 、OE 、WE 为6116的控制信号,CE (书中用CS 表示):片选信号,低电平有效,CE 为低电平时,芯片被选中,此时可以进行读写操作,WE :写允许信号,低电平有效时允许将数据写入芯片,OE :输出允许信号,低电平有效时为读操作。
因此当6116处于读工作方式时CE 为0,OE 为0,WE 为1;处于写工作方式时CE 为0,OE 为1,WE 为0。
微机原理第三章练习题及解.
![微机原理第三章练习题及解.](https://img.taocdn.com/s3/m/cdab015ab307e87101f696af.png)
微机原理第三章练习题及解一:单项选择题●指令MOV AX,[BX] 中,源操作数的缺省段是( A 。
A:DS B:ES C:SS D:CS●指令PUSH [BX] 中,目的操作数的段寄存器是( C 。
A:DS B:ES C:SS D:CS●指令MOVSB 中,目的块的段寄存器是( B 。
A:DS B:ES C:SS D:CS●下列指令中,不正确的指令是( D 。
A:MOV AX,BX B:MOV AX,[BX]C:MOV AX,CX D:MOV AX,[CX]●下列指令中, 不正确的指令是( D 。
A:MOV AL,BL B:MOV AL,[BX]C:MOV AL,CL D:MOV AL,[BL]●下列指令中,不正确的指令是( D 。
A:MOV [BX+SI],AX B:MOV AX,[BX + SI]C:MOV AX,SI D:MOV AX,[BX + CX]●若要使寄存器AL中的高4 位不变,低4 位0,使用指令( B 。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位不变,低4 位1,使用指令( C 。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位为0,低4 位不变,使用指令( A 。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位为1,低4 位不变,使用指令( D 。
A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●条件转移指令JNZ的转移条件是( B 。
A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1●条件转移指令JZ的转移条件是( D 。
A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1●8086CPU响应可屏蔽中断的条件是( B 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大学微机原理第三章习题以下是为大家整理的大学微机原理第三章习题的相关范文,本文关键词为大学,微机,原理,第三章,习题,,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在教育文库中查看更多范文。
8086/8088的寻址方式和指令系统习题一.单项选择题1.设bx=2000h,sI=3000h,指令moVAx,[bx+sI+8]的源操作有效地址为()。
A.5000hb.5008hc.23008hD.320XXh2.设Ds=1000h,es=2000h,bx=3000h,指令ADDAL,[bx]的源操作数的物理址为()。
A.13000hb.23000hc.33000hD.3000h3.设Ds=2000h,es=3000h,sI=200h,指令moVes:[sI],AL的目的操作数的物理地址为()。
A.20200hb.30200hc.50200hD.200h4.指令moVmem[bx],Ax中的mem是()。
A.原码b.反码c.补码D.移码5.用来作为寄存器间接寻址的寄存器有()个。
A.8b.6c.5D.46.指令moV[bx+sI],AL中的目的操作数使用()段寄存器。
A.csb.Dsc.ssD.es7.指令moVbx,[bp+5]中的源操作数使用()段寄存器。
A.csb.Dsc.ssD.es8.段内间接寻址只改变()中的内容。
A.csb.Ipc.cs和IpD.psw9.段间间接寻址只改变()中的内容。
A.csb.Ipc.cs和IpD.psw10.下述指令中不改变psw的指令是()。
A.moVAx,bxb.AnDAL,0Fhc.shRbx,cLD.ADDAL,bL11.下述指令中不影响cF的指令是()。
A.shLAL,1b.Inccxc.ADD[bx],ALD.subAx,bx12.两个整数补码9ch和7Ah相加运算后,会产生()。
A.无溢出且无进位b.无溢出但有进位c.有溢出且有进位D.有溢出但无进位13.指令JmpwoRDpTR[bx]属于()寻址。
A.段内直接b.段内间接c.段间直接D.段间间接14.指令moVAx,[bx+sI+8]的源操作数属于()寻址。
A.直接b.寄存器相对c.基址变址D.相对基址变址15.指令()不改变cF的内容。
A.DecALb.ADDAx,cxc.sub[bx],cLD.sbbAL,DL16.十进制数字74所对应的压缩型bcD码的形式是()。
A.74b.74hc.4AhD.4A17.十进制数字85所对应的非压缩型bcD码的形式是()。
A.0085b.0085hc.0805D.0805h18.设AL=67h,执行“cmpAL,76h”后,AL=()。
A.76hb.0DFhc.67hD.0019.设AL=65h,bL=29h,执行下列指令后,AL=()。
ADDAL,bLDAAA.8ehb.94c.94hD.8e20.压栈操作是()位数的操作。
A.8b.16c.32D.任意21.执行ImuL指令时,如果乘积的高位部分不是低位部分的符号扩展,则()。
A.oF=0、cF=0b.oF=0、cF=1c.oF=1、cF=0D.oF=1、cF=122.设Ax=3762h,cL=5,执行“shRAx,cL”后,Ax=()。
A.0376hb.01bbhc.01bbD.037623.若要在buF缓冲区中寻找与AL中不相等的数据,应使用()scAsb串操作指令。
A.Repneb.Repc.RepeD.RepnZ24.如果“JncL”指令的操作码放在0040h,转移后在0020h处取下一条指令的操作码,那么该条指令的位移量是()。
A.20hb.1ehc.0DehD.0e0h25.如果“JAp”指令的操作码放在0050h,该指令的位移量为34H,执行完此条指令转移到取下一条指令的偏移地址为()A.0082hb.0084hc.0086hD.0088h26.若Ds=1000h,bx=2000h,(12000h)=56h,(120XXh)=78h,Ax=1000h,执行“ADDAx,[bx]”指令后,Ax=()。
A.8856hb.6678hc.8800hD.6600h27.设Ax、bx寄存器中存放的是有符号的二进制数据,若执行“cmpAx,bx”指令后,()L表示大于则转L。
A.JZb.JAc.JgeD.Jg28.执行“DIVbx”指令后,()寄存器中存放商。
A.ALb.Ahc.AxD.Dx29.执行“()Ax,bx”指令不改变Ax寄存器中的内容。
A.cmpb.ADDc.xoRD.oR30.若Ax=1000h,执行“negAx”指令后,Ax=()。
A.1000hb.0e000hc.0F000hD.1001h三.填空题1.在一条指令中,立即数只能作操作数。
2.8086/8088cpu形成的内存物理地址有位。
3.指令“moVAx,[bx+sI]”的源操作数在内存的段。
4.指令“moVbx,[bp+DI]”的源操作数在内存的段。
5.指令“moVAx,es:[sI]”的源操作数在内存的段。
6.入栈指令使用的是段。
7.指令“ADD[bx+sI],AL”的目的操作数是寻址方式。
8.指令“subbx,A[sI]”的源操作数是寻址方式。
9.指令“JmpDwoRDpTR[bx]”属于寻址方式。
10.可作为寄存器间接寻址的寄存器有个。
11.堆栈是从地址向方向生长的。
其操作遵循的操作原则。
12.在进行弹栈操作时应该先将弹出的数据送,然后。
13.在进行多精度加法运算时,一般使用指令。
14.通用的数据传送指令不影响。
15.“IncAL”指令不影响标志位的位。
16.若AL=11h,执行“negAL”后,AL=。
17.Jmp 指令的执行psw寄存器中的各位。
18.两个无符号数进行比较时,可以根据标志位来判断大小。
在编写程序时可使用指令来实现。
19.若执行“DIVbx”,其被除数的高16位必须放在,低16位必须放在。
20.DAA指令只对寄存器中的内容进行调整。
21.若AL=84h,在执行cbw后,AL=。
22.十进制数1234的压缩型bcD码为。
23.执行AnDAL,0FhJnZL指令,是检测AL中的位,当它为非零则转移。
24.若移位指令的移位位数大于1时,其移位位数必须放在中。
25.如果AL=85h,cL=4,执行“sARAL,cL”时,AL=,cF=。
26.在串操作指令中,sI指向串,DI指向串。
27.如果要查找某串中与AL 寄存器中有相同的字符(数),则在scAsb指令前应配合使用重复前缀。
28.转移指令“JnZL”的转移范围(十进制)是。
该指令的第二个字节为位移量,用形式表示。
29.段内调用指令改变中的内容。
30.段间调用指令改变中的内容。
四.判断题(判断下列指令是否正确,如果是错误的,请指出错误的原因)1.ADDAL,bx2.moV[bx],sI3.sub[bx],[sI]4.cmp5,AL5.moVcx,Ax6.LeAbL,A7.shRAL,68.moVAL,[DI+sI]9.moVbL,200h10.moVAx,DATA11.Inc[bx] 12.cmp[bx],A;A为变量13.moVAx,?+?14.moVAx,[bp+bx]15.ADDAx,[cx]16.ouT400,AL17.Jncp 18.moVbx,,oFFseTA19.LeADI,A[sI]20.cmpAx,5五.改错题(按下列指令中的原意改正下列指令)1.Dec[sI]2.cmpAL,bx;无符号数比较3.moV[Dx],AL4.moVAL,300h 5.moV[bx],[DI];字节操作6.ADDAL,[cx+sI]7.ADDAL,bx;有符号数相加8.pushAL9.cmp[bx],5;字节比较10.moVDs,1234h六.简答题1.设bx=1000h,sI=2000h,位移量D=3000h,请指出下列各种寻址方式的有效地址是什么?(1)使用D的直接寻址(2)使用bx寄存器的间接寻址(3)使用bx寄存器的相对寻址(4)基址变址寻址(5)相对基址变址寻址2.请指出下列各条指令的源操作数的寻址方式是什么?(1)moVAx,buF(2)cmpAL,5(3)ADD[bx+5],Ax(4)subAx,[bx+sI](5)ADcAh,A[sI](6)moVbx,[sI](7)AnDcx,b[bp+sI](8)JmpwoRDpTR[bx](9)Jmpp(10)JmpFARpTRp3.设Ds=2000h,bx=0100h,sI=0002h,(20XX0h)=12h,(20XX1h)=34h,(20XX2h)=56h,(20XX3h)=78h,(21200h)=2Ah,(21201h)=4ch,(21202h)=b7h,(21203h)=65h,试说明下列各条指令执行完后Ax寄存器中的内容是多少?(1)moVAx,1200h(2)moVAx,bx(3)moVAx,[1200h](4)moVAx,[bx](5)moVAx,[bx+1100h](6)moVAx,[bx+sI](7)moVAx,[bx+sI+1100h]4.按下列各小题的要求写出相应的一条汇编语言指令。
(1)把bx寄存器和Dx寄存器的内容相加,结果存入Dx寄存器中(2)以bx和sI寄存器作基址变址寻址方式,把该单元中的一个字传送到Ax。
(3)以sI和位移量20h作寄存器相对寻址,将该单元中的内容与cx寄存器中的内容相加,结果存入cx寄存器中。
(4)清除Ax寄存器的内容,同时清除cF标志位(5)将字单元num与0b6h进行比较5.按下列各小题的要求使用相应的几条指令完成其操作。
(1)将偏移量为200h的存储单元中的数与300h相加,结果存入Ax寄存器中(2)比较Ax寄存器中与bx寄存器中的16位有符号数,当Ax 中的内容大于bx中的内容时转移到L。
(3)将buF1和buF2中的16位数据交换(4)测试buF字缓冲区中第15位,如果为1则转移到p(5)将buFI和buF2的字相加,结果送s缓冲区6.设bx=8234h,请说明下列两条指令的区别,执行下列各指令后bx中的内容是什么?shRbx,1sARbx,17.分别说明下列每组指令中的两条指令的区别。
(1)moVbx,buFLeAbx,buF(2)oRbL,0FhAnDbL,0Fh(3)JmpshoRTLJmpL(4)moVAx,bxmoVAx,[bx](5)moVAx,[bx+DI]moVAx,[bp+DI]8.说明下列各指令的源操作数和目的操作数的存储地方。
(1)moV[2000h],Ax(2)ADDAx,[bx+5](3)LeAsI,buF(4)DAA(5)muLbL9.指出下列无条件转移指令的转移目标地址是什么?存放在何处?(1)Jmpbx(2)JmpwoRDpTR[bx](3)JmpDwoRDpTR[bx](4)Jmpp(5)JmpshoRTR10.说明moVsb和cmpsb各能使用哪些重复前缀?七.程序分析题1.现有程序段如下:moVAx,1234hmoVbx,60hADDAx,bx请回答:(1)该程序段完成的功能是什么?(2)程序段执行完后Ax=。