《微机原理习题学习教案.pptx》由会员分享,可在线阅读,更多相关《微机原理习题学习教案.pptx(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微机原理微机原理(yunl)习题习题第一页,共38页。3 31 1什么叫寻址方式?什么叫寻址方式?什么叫寻址方式?什么叫寻址方式?8086/8088CPU8086/8088CPU共有哪几种寻址方式?共有哪几种寻址方式?共有哪几种寻址方式?共有哪几种寻址方式?(略)(略)(略)(略)3 32 2设(设(设(设(DSDS)=6000H=6000H,(,(,(,(ESES)=2000H=2000H,(,(,(,(SSSS)=1500H=1500H,(SISI)=00A0H=00A0H,(,(,(,(BXBX)=0800H=0800H,(,(,(,(BPBP)=1200H=1200H,数据变量,数据变
2、量,数据变量,数据变量VARVAR为为为为0050H0050H。请分别指出下列各条指令请分别指出下列各条指令请分别指出下列各条指令请分别指出下列各条指令(zhlng)(zhlng)源操作数的寻址方式?它的源操作数的寻址方式?它的源操作数的寻址方式?它的源操作数的寻址方式?它的物理地址是多少?物理地址是多少?物理地址是多少?物理地址是多少?(1 1)MOV AXMOV AX,BX BX (2 2)MOV DLMOV DL,80H80H (3 3)MOV AXMOV AX,VAR VAR (4 4)MOV AXMOV AX,VARBXSIVARBXSI (5 5)MOV ALMOV AL,B B
3、(6 6)MOV DIMOV DI,ESES:BXBX (7 7)MOV DXMOV DX,BP BP (8 8)MOV BXMOV BX,20HBX20HBX第1页/共38页第二页,共38页。解:解:解:解:(1 1)寄存器寻址)寄存器寻址)寄存器寻址)寄存器寻址 无物理地址无物理地址无物理地址无物理地址(2 2)立即寻址)立即寻址)立即寻址)立即寻址 无物理地址无物理地址无物理地址无物理地址(3 3)立即寻址)立即寻址)立即寻址)立即寻址 无物理地址无物理地址无物理地址无物理地址(4 4)基址)基址)基址)基址(j zh)(j zh)变址相对寻址变址相对寻址变址相对寻址变址相对寻址PA=P
4、A=(DSDS)10H10HVARVAR(BXBX)()()()(SISI)608F0H608F0H(5 5)立即寻址)立即寻址)立即寻址)立即寻址 无物理地址无物理地址无物理地址无物理地址(6 6)寄存器间接寻址)寄存器间接寻址)寄存器间接寻址)寄存器间接寻址 PA=PA=(ESES)10H 10H(BXBX)20800H20800H(7 7)寄存器间接寻址)寄存器间接寻址)寄存器间接寻址)寄存器间接寻址PA=PA=(SSSS)10H 10H(BPBP)16200H16200H(8 8)寄存器相对寻址)寄存器相对寻址)寄存器相对寻址)寄存器相对寻址PA=PA=(DSDS)10H 10H(BX
5、BX)20H20H60820H60820H第2页/共38页第三页,共38页。3 33 3假设(假设(假设(假设(DSDS)=212AH=212AH,(,(,(,(CSCS)=0200H=0200H,(IPIP)=1200H=1200H,(,(,(,(BXBX)=0500H=0500H,位移位移位移位移(wiy)(wiy)量量量量DATA=40HDATA=40H (217A0H217A0H)=2300H=2300H,(,(,(,(217E0H217E0H)=0400H=0400H,(217E2H217E2H)=9000H=9000H,试确定下列转移指令的转移地址。试确定下列转移指令的转移地址。试
6、确定下列转移指令的转移地址。试确定下列转移指令的转移地址。(1 1)JMP 2300HJMP 2300H (2 2)JMP WORD PTRBXJMP WORD PTRBX (3 3)JMP DWORD PTRBX+DATAJMP DWORD PTRBX+DATA第3页/共38页第四页,共38页。解:解:解:解:(1 1)JMP 2300HJMP 2300H 段内直接转移段内直接转移段内直接转移段内直接转移(zhuny)(zhuny)PAPA(CSCS)10H10H(IPIP)+2300H+2300H05500H05500H (2 2)JMP WORD PTRBXJMP WORD PTRBX
7、段内间接转移段内间接转移段内间接转移段内间接转移(zhuny)(zhuny)PA PA(CSCS)10H10HBXBX =0200H+(217A0H)=0200H+(217A0H)=04300H =04300H (3 3)JMP DWORD PTRBX+DATAJMP DWORD PTRBX+DATA 段间间接转移段间间接转移段间间接转移段间间接转移(zhuny)(zhuny)PA PABX+DATA=(217E2H)10HBX+DATA=(217E2H)10H(217E0H)(217E0H)=90000H+0400H=90400H =90000H+0400H=90400H第4页/共38页第五
8、页,共38页。3 34 4试说明指令试说明指令试说明指令试说明指令(zhlng)MOV BX(zhlng)MOV BX,5BX5BX与指令与指令与指令与指令(zhlng)LEA (zhlng)LEA BXBX,5BX5BX的区别。的区别。的区别。的区别。答:答:答:答:MOV BXMOV BX,5BX5BX是数据传送类指令是数据传送类指令是数据传送类指令是数据传送类指令(zhlng)(zhlng),表示将数据段中,表示将数据段中,表示将数据段中,表示将数据段中以(以(以(以(BX+5BX+5)为偏移地址的)为偏移地址的)为偏移地址的)为偏移地址的1616位数据送寄存器位数据送寄存器位数据送寄存
9、器位数据送寄存器BXBX中。中。中。中。LEA BX LEA BX,5BX5BX是取偏移地址指令是取偏移地址指令是取偏移地址指令是取偏移地址指令(zhlng)(zhlng),结果为,结果为,结果为,结果为(BXBX)=(BXBX)+5+5,即操作数的偏移地址为(,即操作数的偏移地址为(,即操作数的偏移地址为(,即操作数的偏移地址为(BXBX)+5+53 35 5设堆栈指针设堆栈指针设堆栈指针设堆栈指针SPSP的初值为的初值为的初值为的初值为2300H2300H,(,(,(,(AXAX)=50ABH=50ABH,(BXBX)=1234H=1234H。执行指令。执行指令。执行指令。执行指令(zhl
10、ng)PUSH AX(zhlng)PUSH AX后,(后,(后,(后,(SPSP)=?,再?,再?,再?,再执行指令执行指令执行指令执行指令(zhlng)PUSH BX(zhlng)PUSH BX及及及及POP AXPOP AX之后,(之后,(之后,(之后,(SPSP)=?(?(?(?(AXAX)=?(?(?(?(BXBX)=?解:执行指令解:执行指令解:执行指令解:执行指令(zhlng)PUSH AX(zhlng)PUSH AX后,(后,(后,(后,(SPSP)=22FEH=22FEH 执行指令执行指令执行指令执行指令(zhlng)PUSH BX(zhlng)PUSH BX及及及及POP A
11、XPOP AX之后,之后,之后,之后,(SPSP)=22FEH=22FEH,(,(,(,(AXAX)=(BXBX)=1234H=1234H第5页/共38页第六页,共38页。36指出下列指令的错误。指出下列指令的错误。(1)MOV AH,CX 类型不匹配或两操作类型不匹配或两操作(cozu)数字长不相等数字长不相等 (2)MOV 33H,AL立即数不能做目的操作立即数不能做目的操作(cozu)数数(3)MOV AX,SIDI 两变址寄存器不能同时使用两变址寄存器不能同时使用 (4)MOV BX,SI两操作两操作(cozu)数不能同时为数不能同时为存储器操作存储器操作(cozu)数数(5)ADD
12、BYTE PTRBP,256 两操作两操作(cozu)数类型不匹配数类型不匹配 第6页/共38页第七页,共38页。(6 6)MOV DATASIMOV DATASI,ESES:AXAX源操作数形式错,寄存器操作数不加段重设符源操作数形式错,寄存器操作数不加段重设符源操作数形式错,寄存器操作数不加段重设符源操作数形式错,寄存器操作数不加段重设符(7 7)JMP BYTE PTRBX JMP BYTE PTRBX 转移地址的字长至少应是转移地址的字长至少应是转移地址的字长至少应是转移地址的字长至少应是1616位位位位 (8 8)OUT 230HOUT 230H,AXAX对对对对I/OI/O指令指令
13、指令指令(zhlng)(zhlng),端口地址超过,端口地址超过,端口地址超过,端口地址超过8 8位,必须采用间接寻位,必须采用间接寻位,必须采用间接寻位,必须采用间接寻址址址址(9 9)MOV DSMOV DS,BP BP 正确正确正确正确 (1010)MUL 39HMUL 39HMULMUL指令指令指令指令(zhlng)(zhlng)中操作数不能为立即数中操作数不能为立即数中操作数不能为立即数中操作数不能为立即数第7页/共38页第八页,共38页。3 37 7已知(已知(已知(已知(ALAL)=7BH=7BH,(,(,(,(BLBL)=38H=38H,试问执行,试问执行,试问执行,试问执行指
14、令指令指令指令ADD ALADD AL,BLBL后,后,后,后,AFAF、CFCF、OFOF、PFPF、SFSF和和和和ZFZF的值各为多少?的值各为多少?的值各为多少?的值各为多少?解:解:解:解:(ALAL)=B3H=B3H AF=1 AF=1,CF=0CF=0,OF=1OF=1,PF=0 PF=0,SF=1SF=1,ZF=0ZF=03 38 8试比较无条件转移试比较无条件转移试比较无条件转移试比较无条件转移(zhuny)(zhuny)指令、条件转移指令、条件转移指令、条件转移指令、条件转移(zhuny)(zhuny)指令、调用指令和中断指令有什么异同指令、调用指令和中断指令有什么异同指令
15、、调用指令和中断指令有什么异同指令、调用指令和中断指令有什么异同?(略)?(略)?(略)?(略)第8页/共38页第九页,共38页。3 39 9试判断下列程序执行后,试判断下列程序执行后,试判断下列程序执行后,试判断下列程序执行后,BXBX中的内容。中的内容。中的内容。中的内容。MOV CL MOV CL,3 3 MOV BX MOV BX,0B7H0B7H ROL BX ROL BX,1 1 ROR BX ROR BX,CL CL 解:该程序是首先解:该程序是首先解:该程序是首先解:该程序是首先(shuxin)(shuxin)将将将将BXBX内容不带进位循环左内容不带进位循环左内容不带进位循环
16、左内容不带进位循环左移移移移1 1位,再循环位,再循环位,再循环位,再循环 右移右移右移右移3 3位,即相当于将位,即相当于将位,即相当于将位,即相当于将BXBX内容不带进位内容不带进位内容不带进位内容不带进位循环右移循环右移循环右移循环右移2 2位,位,位,位,所以结果为(所以结果为(所以结果为(所以结果为(BXBX)=C02DH=C02DH第9页/共38页第十页,共38页。3 31010按下列要求写出相应的指令或程序段按下列要求写出相应的指令或程序段按下列要求写出相应的指令或程序段按下列要求写出相应的指令或程序段(1 1)写出两条使)写出两条使)写出两条使)写出两条使AXAX内容为内容为内
17、容为内容为0 0的指令;的指令;的指令;的指令;MOV AX MOV AX,0 0 XOR AX XOR AX,AXAX AND AX AND AX,0 0 SUB AX SUB AX,AXAX(2 2)使)使)使)使BLBL寄存器中的高寄存器中的高寄存器中的高寄存器中的高4 4位和低位和低位和低位和低4 4位互换;位互换;位互换;位互换;MOV CL MOV CL,4 4 ROL BL ROL BL,CLCL 或或或或 ROR BL ROR BL,CLCL(3 3)屏蔽)屏蔽)屏蔽)屏蔽(pngb)CX(pngb)CX寄存器的寄存器的寄存器的寄存器的b11b11、b7b7和和和和b3b3位;
18、位;位;位;AND CX AND CX,0F777H0F777H(4 4)测试)测试)测试)测试DXDX中的中的中的中的b0b0和和和和b8b8位是否为位是否为位是否为位是否为1 1。TEST DX TEST DX,0101H0101H第10页/共38页第十一页,共38页。3 31111分别指出以下两个分别指出以下两个分别指出以下两个分别指出以下两个(lin)(lin)程序段的功能。程序段的功能。程序段的功能。程序段的功能。(1)MOV CX,10 LEA SI,FIRST LEA DI,SECOND STD REP MOVSB 将数据段中将数据段中FIRST为最高为最高地址的地址的10个字个
19、字节节(z ji)数据数据按减地址方向按减地址方向传送到附加段传送到附加段SECOND为最为最高地址的向前高地址的向前10个单元中。个单元中。(2)CLD LEA DI,1200H MOV CX,0F00H XOR AX,AX REP STOSW 将附加段中偏将附加段中偏移地址为移地址为1200H单元开单元开始始(kish)的的0F00H个字单个字单元清零。元清零。第11页/共38页第十二页,共38页。3 31212执行以下两条指令后,标志寄存器执行以下两条指令后,标志寄存器执行以下两条指令后,标志寄存器执行以下两条指令后,标志寄存器FLAGSFLAGS的六的六的六的六个状态个状态个状态个状态
20、(zhungti)(zhungti)位各为什么状态位各为什么状态位各为什么状态位各为什么状态(zhungti)(zhungti)?MOV AX MOV AX,84A0H84A0H ADD AX ADD AX,9460H9460H解:(解:(解:(解:(AXAX)=1900H=1900H 在两个在两个在两个在两个1616位数进行加法运算时,对位数进行加法运算时,对位数进行加法运算时,对位数进行加法运算时,对CFCF、ZFZF、SFSF、OFOF会产生影响,但对会产生影响,但对会产生影响,但对会产生影响,但对PFPF和和和和AFAF标志位,只有其低标志位,只有其低标志位,只有其低标志位,只有其低8
21、 8位位位位运算影响它们的状态运算影响它们的状态运算影响它们的状态运算影响它们的状态(zhungti)(zhungti)。AF=0 AF=0,PF=1PF=1,CF=1CF=1,ZF=0 ZF=0,SF=0SF=0,OF=1OF=1第12页/共38页第十三页,共38页。313将将+46和和-38分别分别(fnbi)乘以乘以2,可应用什么指令来完成,可应用什么指令来完成?如果除以?如果除以2呢?呢?解:解:将将+46和和-38分别分别(fnbi)乘乘以以2,可分别,可分别(fnbi)用逻辑左用逻辑左移指令移指令SHL和算术左移指令和算术左移指令SAL完成。完成。SHL针对无符号数,针对无符号数,
22、SAL针对有符号数,也可用针对有符号数,也可用MUL(无符号数)和(无符号数)和IMUL(有(有符号数)符号数)除以除以2,用,用SHR或或DIV实现实现46/2,用,用SAR或或IDIV实现实现38/2。第13页/共38页第十四页,共38页。3 31414已知已知已知已知AX=8060HAX=8060H,DX=03F8HDX=03F8H,端口,端口,端口,端口PORT1PORT1的地的地的地的地址是址是址是址是48H48H,内容为,内容为,内容为,内容为40H40H;PORT2PORT2的地址是的地址是的地址是的地址是84H84H,内容为,内容为,内容为,内容为85H85H。请指出。请指出。
23、请指出。请指出(zh ch)(zh ch)下列指令执行后的结果。下列指令执行后的结果。下列指令执行后的结果。下列指令执行后的结果。(1 1)OUT DXOUT DX,ALAL 将将将将60H60H输出到地址为输出到地址为输出到地址为输出到地址为03F8H03F8H的端口中的端口中的端口中的端口中 (2 2)IN ALIN AL,PORT1PORT1 从从从从PORT1PORT1读入一字节数据,则(读入一字节数据,则(读入一字节数据,则(读入一字节数据,则(ALAL)40H40H (3 3)OUT DXOUT DX,AXAX 将将将将AXAX8060H8060H从地址为从地址为从地址为从地址为0
24、3F8H03F8H的端口输出的端口输出的端口输出的端口输出 (4 4)IN AXIN AX,48H48H 由由由由48H48H端口读入端口读入端口读入端口读入1616位的数据位的数据位的数据位的数据 (5 5)OUT PORT2OUT PORT2,AXAX 将将将将8060H8060H从地址为从地址为从地址为从地址为84H84H的端口输出的端口输出的端口输出的端口输出第14页/共38页第十五页,共38页。3 31515试编写程序,统计试编写程序,统计试编写程序,统计试编写程序,统计BUFFERBUFFER为起始为起始为起始为起始(q sh)(q sh)地址的连续地址的连续地址的连续地址的连续2
25、00200个单元中个单元中个单元中个单元中0 0的个数。的个数。的个数。的个数。解:解:解:解:LEA SI LEA SI,BUFFERBUFFER MOV CX MOV CX,200200 XOR BX XOR BX,BXBXAGAINAGAIN:MOV AL,SIMOV AL,SI CMP AL,0 CMP AL,0 JNE GOON JNE GOON INC BX INC BXGOONGOON:INC SI INC SI LOOP AGAIN LOOP AGAIN HLT HLT第15页/共38页第十六页,共38页。3 31616写出完成下述功能的程序段。写出完成下述功能的程序段。写出完
26、成下述功能的程序段。写出完成下述功能的程序段。(1 1)从地址)从地址)从地址)从地址DSDS:0012H0012H中传送一个数据中传送一个数据中传送一个数据中传送一个数据(shj)56H(shj)56H到到到到ALAL寄存器。寄存器。寄存器。寄存器。MOV DS MOV DS:BYTE PTR0012HBYTE PTR0012H,56H56H MOV AL MOV AL,0012H0012H(2 2)将)将)将)将ALAL中的内容左移两位。中的内容左移两位。中的内容左移两位。中的内容左移两位。MOV CL MOV CL,2 2 SHL AL SHL AL,CLCL(3 3)ALAL的内容与字
27、节单元的内容与字节单元的内容与字节单元的内容与字节单元DSDS:0013H0013H中的内容相中的内容相中的内容相中的内容相乘。乘。乘。乘。MUL DS MUL DS:BYTE PTR0013HBYTE PTR0013H(4 4)乘积存入字单元)乘积存入字单元)乘积存入字单元)乘积存入字单元DSDS:0014H0014H中。中。中。中。MOV DS MOV DS:0014H0014H,AX AX 第16页/共38页第十七页,共38页。3 31717若(若(若(若(ALAL)=96H=96H,(,(,(,(BLBL)=12H=12H,在分别执行,在分别执行,在分别执行,在分别执行(zhxng)(
28、zhxng)指令指令指令指令MULMUL和和和和IMULIMUL后,其结果是多少?后,其结果是多少?后,其结果是多少?后,其结果是多少?OF=OF=?CF=CF=?解:解:解:解:执行执行执行执行(zhxng)MUL BL(zhxng)MUL BL后后后后 (AXAX)0A8CH0A8CH,CFCFOFOF1 1 执行执行执行执行(zhxng)IMUL BL(zhxng)IMUL BL后后后后 (AXAX)F88CHF88CH,CFCFOFOF1 1第17页/共38页第十八页,共38页。补充补充(bchng)作业作业1.系统有一个堆栈段区,其地址系统有一个堆栈段区,其地址(dzh)为为1250
29、H:0000H1250H:0100H,(SP)=0052H,则计算以下数,则计算以下数值值(1)栈顶物理地址)栈顶物理地址(dzh)(2)栈底物理地址)栈底物理地址(dzh)(3)堆栈段寄存器)堆栈段寄存器SS中的段地中的段地址址(dzh)(4)若把数据)若把数据3456H存入,此时存入,此时SP的值的值第18页/共38页第十九页,共38页。解:解:(1)栈顶地址:逻辑地址为)栈顶地址:逻辑地址为1250H:0052H物理地址为物理地址为1250H16+0052H=12552H(2)栈底地址:逻辑地址为)栈底地址:逻辑地址为1250H:0100H物理地址为物理地址为1250H16+0100H=
30、12600H(3)段寄存器:()段寄存器:(SS)=1250H(4)若把数据)若把数据3456H存入存入(cn r),此时(此时(SP)=0050H第19页/共38页第二十页,共38页。2.已知已知(DS)=3000H,(BX)=1000H,(DI)=0020H,MASK=0300H,内存内存(ni cn)分配分配如图所示。连续执如图所示。连续执行下列指令后,行下列指令后,DS,SI,DI,AX的内容是什么?标的内容是什么?标志位状态如何?志位状态如何?LEA SI,MASKBX+DI MOV AX,SI LDS DI,BX+SI SUB AX,76EBH22H24H13H10H00H20H0
31、0H13H00H30H.31320H31322H32320H32322H32324H第20页/共38页第二十一页,共38页。解:(解:(解:(解:(1 1)LEA SILEA SI,MASKBX+DIMASKBX+DI,这条指令传送的是源操作数的,这条指令传送的是源操作数的,这条指令传送的是源操作数的,这条指令传送的是源操作数的有效地址有效地址有效地址有效地址(dzh)(dzh)而不是内容,而不是内容,而不是内容,而不是内容,(SISI)=MASK+=MASK+(BXBX)+(DIDI)=0300H+1000H+0020H=1320H =0300H+1000H+0020H=1320H (2 2
32、)MOV AXMOV AX,SISI,这条指令传送的是源操作数的有效地址,这条指令传送的是源操作数的有效地址,这条指令传送的是源操作数的有效地址,这条指令传送的是源操作数的有效地址(dzh)(dzh)的内容,源操作数的物理地址的内容,源操作数的物理地址的内容,源操作数的物理地址的内容,源操作数的物理地址(dzh)PA=(dzh)PA=(DSDS)16+16+(SISI)=31320H=31320H,则(,则(,则(,则(AXAX)=1322H=1322H (3 3)LDS DILDS DI,BX+SIBX+SI,其源操作数的物理地址其源操作数的物理地址其源操作数的物理地址其源操作数的物理地址(
33、dzh)PA=(dzh)PA=(DSDS)16+16+(SISI)+(BXBX)=30000H+1320H+1000H=32320H =30000H+1320H+1000H=32320H 则(则(则(则(DSDS)=2000H=2000H,(,(,(,(DIDI)=1000H=1000H (4 4)()()()(AXAX)=1322H=1322H,执行,执行,执行,执行SUB AXSUB AX,76EBH76EBH后,后,后,后,(AXAX)=1322H-76EBH=9C37H=1322H-76EBH=9C37H 标志位状态分别为:标志位状态分别为:标志位状态分别为:标志位状态分别为:CF=1
34、CF=1,SF=1SF=1,ZF=0ZF=0,OF=0 OF=0,PF=0PF=0,AF=1AF=1第21页/共38页第二十二页,共38页。补充补充(bchng)习题习题1.一个有一个有16个字的数据区,起始个字的数据区,起始(q sh)地地址为址为70A0H:DDF6H,则这个数据区末字,则这个数据区末字单元的物理地址是(单元的物理地址是()(A)7E815H (B)7E816H (C)7E814H (D)7E7F8H 2.已知(已知(BL)6FH,执行,执行TEST BL,8FH后,后,(BL)()()(A)0FH(B)6FH(C)0(D)EFH第22页/共38页第二十三页,共38页。3.
35、读程序回答问题读程序回答问题 XOR AX,AX MOV BX,1 MOV CX,5LOP:ADD AX,BX INC BX INC BX LOOP LOP HLT上述上述(shngsh)程序段执行后,程序段执行后,(AX)25,(,(BX)11第23页/共38页第二十四页,共38页。4.在程序运行过程中,确定在程序运行过程中,确定(qudng)下一条指令的物理地下一条指令的物理地址的计算表达式是(址的计算表达式是()(A)()(CS)10H(IP)(B)(DS)10H(DI)(C)(SS)10H(SP)(D)(ES)10H(SI)第24页/共38页第二十五页,共38页。5.设(设(SS)20
36、00H,则下列,则下列程序执行后,(程序执行后,(SP)()(),),(AL)中数据)中数据(shj)在内存地在内存地址(址()中,()中,(AH)中数据)中数据(shj)在内存地址(在内存地址()中。)中。MOV SP,2000H MOV AX,1234H PUSH AX答案:答案:1FFEH,21FFEH,21FFFH第25页/共38页第二十六页,共38页。6.有如下有如下(rxi)程序段程序段 MOV AX,1234H MOV BX,5678H ADD AL,BL DAA ;(AL)=12H,CF=1 MOV CL,AL MOV AL,AH ADC AL,BH DAA ;12H+56H+
37、CF=69H执行程序后,(执行程序后,(AL)=69H,(CL)=12H第26页/共38页第二十七页,共38页。7.寄存器间接寻址时,操作数寄存器间接寻址时,操作数在(在()中)中 (A)寄存器)寄存器 (B)存储)存储器器 (C)堆栈区)堆栈区 (D)累加)累加器器8.执行返回指令,退出中断服执行返回指令,退出中断服务程序务程序(chngx),这时返回地,这时返回地址来自(址来自()(A)ROM区区 (B)程序)程序(chngx)计数区计数区 (C)堆栈区)堆栈区 (D)CPU的暂存寄存器的暂存寄存器第27页/共38页第二十八页,共38页。9.读程序回答问题读程序回答问题(wnt)MOV A
38、X,1234H MOV CL,4 ROL AX,CL DEC AX MOV CX,4 MUL CX HLT执行后,(执行后,(AH)8DH,(AL)00H第28页/共38页第二十九页,共38页。10.下面程序段中,当满足条件下面程序段中,当满足条件转到转到NEXT标号执行标号执行(zhxng)时,时,(AL)的值正确的是()的值正确的是()CMP AL,0FBH JNB NEXT NEXT:(A)80H (B)8FH (C)F0H (D)FEH第29页/共38页第三十页,共38页。答案答案答案答案(d n)(d n):SP=1FFEHSP=1FFEH,AX=00F0HAX=00F0HDX=AC
39、F0HDX=ACF0H,DI=1234HDI=1234H,CF=0CF=0,ZF=0ZF=0MOV SP,2000HMOV AX,00F0HMOV SI,1234HMOV DX,5678HPUSH SIPOP DISHL DX,1TEST AX,DXPUSH DX11.执行执行(zhxng)下列程序后,下列程序后,SP=?AX=?DX=?DI=?标志位?标志位CF=?ZF=?第30页/共38页第三十一页,共38页。12.交换SI、DI的内容(nirng),正确程序段是(AC)(A)PUSH SI (B)PUSH SI PUSH DI PUSH DI POP SI POP DI POP DI P
40、OP SI(C)MOV AX,SI(D)MOV AX,SI MOV SI,DI MOV BX,DI MOV DI,AX XCHG BX,AX 第31页/共38页第三十二页,共38页。13.完成完成(wn chng)41H送送2100H,42H送送2101H的的 正正确程序段是(确程序段是(A )(A)MOV AX,4241H MOV 2100H,AX(B)MOV AX,AB MOV 2100H,AX第32页/共38页第三十三页,共38页。14.下列程序段执行下列程序段执行(zhxng)后,后,(BX)=?MOV CL,7MOV BX,8016HSHR BX,CL答案:答案:0100H15.假设
41、(假设(SP)=0100H,(SS)=6000H,执行,执行(zhxng)POP AX指令后,栈指令后,栈顶的物理地址是多少?顶的物理地址是多少?答案:答案:60102H第33页/共38页第三十四页,共38页。16.近过程近过程NEAR的的RET指令把当指令把当前栈顶的一个前栈顶的一个(y)字弹出到字弹出到(IP),远过程),远过程FAR的的RET指指令弹出一个令弹出一个(y)字到(字到(IP)后)后又弹出一个又弹出一个(y)字到(字到(CS),),IRET指令是(中断返回),从指令是(中断返回),从堆栈顺序弹出三个字分别送到堆栈顺序弹出三个字分别送到(IP)、()、(CS)和()和(FLAG
42、S)中。中。第34页/共38页第三十五页,共38页。17.程序段如下:程序段如下:MOV AX,0405H MOV BL,06H AAD DIV BL执行执行(zhxng)后,(后,(AX)=?答案:答案:0307H第35页/共38页第三十六页,共38页。18.AX18.AX和和和和CXCX中内容中内容中内容中内容(nirng)(nirng)为无符号数,为无符号数,为无符号数,为无符号数,BXBX和和和和DXDX中中中中内容内容内容内容(nirng)(nirng)为带符号数,试用为带符号数,试用为带符号数,试用为带符号数,试用CMPCMP指令和条件转指令和条件转指令和条件转指令和条件转移指令,
43、实现以下判断。移指令,实现以下判断。移指令,实现以下判断。移指令,实现以下判断。(1 1)若)若)若)若AXAX超过超过超过超过CXCX,则转至,则转至,则转至,则转至BIGERBIGER CMP AX CMP AX,CXCX JA BIGER JA BIGER(2 2)若)若)若)若BXBX超过超过超过超过DXDX,则转至,则转至,则转至,则转至BIGERBIGER CMP BX CMP BX,DXDX JG BIGER JG BIGER(3 3)若)若)若)若AXAX小于小于小于小于CXCX,则转至,则转至,则转至,则转至LESSLESS CMP AX CMP AX,CXCX JB LESS JB LESS第36页/共38页第三十七页,共38页。(4)若)若BX小于小于DX,则转至,则转至LESS CMP BX,DX JL LESS(5)若)若AX=CX,则转至,则转至EQUAL CMP AX,CX JE/JZ EQUAL第37页/共38页第三十八页,共38页。
限制150内