ImageVerifierCode 换一换
格式:DOCX , 页数:68 ,大小:52.53KB ,
资源ID:16338745      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16338745.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理程序设计试题Word文件下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理程序设计试题Word文件下载.docx

1、C. DEC GAMABX;D. MOV ES,5600H;E. SUB AX,DS ;( ) 6.下列语句在存贮器中分别为变量分配多少字节?请填入括号中。VR1 DW? ;VR2 DW 4 DUP(?),2;CONT EQU 10 ;7.设BX=1200H,SI=0002H,DS=3000H,(31200H)=50H,(31201H)=02H,(31202H)=OF7H,(31203H)=90H请写出下列各条指令单独执行后,有关寄存器及存储单元的内容,若该指令影响标志位,则指出其值。A.DEC BYTE PTR1200H ; 问:(31200)=_H,CF=_B.SAR BYTE PTRSI

2、+1200H ;(31202H)=_H,ZF=_C.MOV AX,WORD PTRBXSI;问:AX=_H,SF=_三、简答题(每题5分,共20分) 1.下列每组指令中的两条指令有否区别?若有,请说出它们的不同点。A. MOV AX,OFFSET TABLE LEA AX,TABLEB. JMP SHOPT L1 JMP NEAR PTR L1C. MOV AX,BX MOV AX,BXD. SUB DX,CX CMP DX,CXE.MOV BPDI,AL MOV DS:BPDI,AL 2.系统功能调用的方法如何?举例说明。3.编程序,使用一条指令,使得:A.CL寄存器内容取反B.BX寄存器的

3、低四位置1C.AX寄存器的低四位清0D.CX寄存器的低四位变反E.用TEST指令测试DL寄存器的第3位和第6位。4.指令AND AX,OPR1 AND OPR2中,OPR1和OPR2是两个已赋值的变量,问两个AND操作有什么区别?四、程序分析题(每题5分,共20分) 1.对于下面的数据定义,各条MOV的指令单独执行后,有关寄存器的内容是什么?FLDB DB ?TAB1 DW 20 DUP(?)TAB2 DB ABCDA.MOV AX,TYPE FLDB B.MOV AX,TYPE TAB1 C.MOV CX,LENGTH TAB1 D.MOV DX,SIZE TAB1E.MOV CX,LENG

4、TH TAB2 2.下面程序段执行完后,BX的内容是什么?MOV AL,10ADD AL,ALSHL AL,1MOV BL,ALADD AL,BL 3.试问下面的程序段完成的功能是什么?SAL AX,1RCL DX,1 4.假设X和X+2单元的内容为双精度数P,y和y+2单元的内容为双精度数q(x和y为低位字),试说明下列程序段做什么工作?MOV DX,X+2MOV AX,XADD AX,XADC DX,X+2CMP DX,Y+2JL L2JG L1CMP AX,YJBE L2L1MOV AX,1JMP SHORT EXITL2MOV AX,2EXITINT 20H 五、程序设计题(每题10分

5、,共30分) 1.已知存储器中有一个首地址为ARRAY的100个字数组,现要求把数组中的每个数加1(不考虑溢出的可能性),试编制完成此功能的程序段。2.编写一段程序,如果字节变量TESTONE和TESTTWO相等,则调用ALLSAME子程序,显示#;否则调用NOTSAME子程序,显示!。3.已定义了两个整数变量A和B,试编写程序完成下列功能:A.若两个数中有一个是奇数,则将奇数存入A中,偶数存入B中。B.若两个数均为奇数,则将两数均加1后存回原变量。C.若两个数均为偶数,则两个变量均不改变。(要求各段定义完整,并画出程序流程图)试题2 及答案 一,单项选择题(在每小题的四个备选答案中,选出一个

6、正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)1指令JMP FAR PTR DONE属于参考答案为:CA段内转移直接寻址B段内转移间接寻址C段间转移直接寻址D段间转移间接寻址解析略2下列叙述正确的是参考答案为:A对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令B对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令C对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令D对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令解析对于无符号数和有符号数的比较都采用CMP指令;CMPS指令是

7、串比较指令;对两个有符号数的条件转移指令应是:JAE、JNB、JBE、JNA;对两个无符号数的条件转移指令应是:JGE、JNL、JLE、JNG。3一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是参考答案为:A12CSBHB12B6BHC12C59HD12BFEH解析末字与首字相隔(1281)127个字,且每个字占用2个字节,因此末字单元的物理地址应为:首字单元的物理地址(1281)2即 12ABH10H00ABH(1281)212C59H。4在下列指令的表示中,不正确的是参考答案为:AMOV AL,BX+SIBJMP SHORT DON

8、ICDEC BXDMUL CL解析当只有一个存储器操作数时,这个操作数的类型不明确,例如选项C中的BX,没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如DEC BYTE PTR BX 或 DEC WORD PTR BX但是在题目的选项C中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。5在进行二重循环程序设计时,下列描述正确的是参考答案为:AA外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B外循环初值应置外循环之内;内循环初值应置内循环之内C内、外循环初值都应置外循环之外D内、外循环初值都应置内循环之外,外循环之内解析循

9、环参数置初值,应在进入循环以前给出。6条件转移指令JNE的测试条件为参考答案为:AZF=0BCF0CZF=1DCF=1解析略。78086CPU在基址加变址的寻址方式中,变址寄存器可以为参考答案为:DABX或CXBCX或SICDX或SIDSI或DI8已知BX=2000H,SI=1234H,则指令MOV AX,BX+SI+2的源操作在( )中。参考答案为:A数据段中偏移量为3236H的字节B附加段中偏移量为3234H的字节C数据段中偏移量为3234H的字节D附加段中偏移量为3236H的字节解析指令中的源操作数的寻址方式是相对基址变址寻址,且由于其中的基址寄存器采用的是BX,所以源操作数是在数据段中

10、,其偏移量为:BX+SI+2=2000H+1234H+2=3236H9执行如下程序:MOV AX,0MOV BX,1MOV CX,100A:ADD AX,BXINC BXLOOP AHLT执行后(BX)=参考答案为:A99B100C101D102解析1)在进入循环之前,有三条指令分别初始化寄存器:AX为0、BX为1、CX为100;2)由于循环的控制部分采用的是LOOP指令,该指令有使CX减1,并判断其是否为0的功能,所以可知该循环的执行次数为100次;3)循环体的主要功能是每次循环使AX中的内容累加BX的内容,并使BX的内容加1。4)直到最后一次(即第100次)循环时,加到AX中的BX的内容为

11、100,且使BX加1,即变为101后退出循环体。所以当执行完该段程序后,BX的内容为101。5)该段程序的功能是(AX)12100505010上题的程序执行后(AX)=参考答案为:BA5000B5050C5100D5150解析请参看上题中的分析。正确答案:B。11对于下列程序段:AGAIN:MOV AL,SIMOV ES:DI,ALINC SIINC DILOOP AGAIN也可用_指令完成同样的功能。AREP MOVSBBREP LODSB CREP STOSBDREPE SCASB解析该段程序的功能是将SI所指向的数据段中的数据顺序传送给DI所指向的附加段的一段数据区中,并且每次传送一个字

12、节,即实现了字节串传送的功能,所以也可以使用REP MOVSB指令来完成同样的功能。12下面指令序列执行后完成的运算,正确的算术表达式应是MOV AL,BYTE PTR XSHL AL,1DEC ALMOV BYTE PTR Y,AL参考答案为:Ay=x2+1Bx=y2+1Cx=y2-1Dy=x2-1解析该段程序的第一条指令的功能是将X传送给AL;第二条指令的功能是将AL的内容左移1位,即使得AL的内容扩大2倍;第三条指令的功能是使AL的内容减1;第四条指令的功能是将AL传送给Y;综上所述该程序完成的运算是Y=2X-1。13在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来。A占内

13、存空间小,但速度慢B占内存空间大,但速度快C占内存空间相同,速度快D占内存空间相同,速度慢解析1)宏指令简化程序的书写,不节省程序存储空间,但执行时间比子程序短。2)子程序简化程序的书写,也节省程序的存储空间,但执行时间比宏指令长。14在程序执行过程中,IP寄存器中始终保存的是参考答案为:A上一条指令的首地址B下一条指令的首地址C正在执行指令的首地址D需计算有效地址后才能确定地址解析在程序运行过程中,它始终指向下一条指令的首地址,它与CS代码段寄存器联合确定下一条指令的物理地址。15PSW寄存器中共有_位条件状态位,有_位控制状态位。A6、3B3、6C8、4D4、8解析PSW有6位条件状态位:

14、AF、CF、ZF、PF、SF、OF;PSW有3位控制状态位:IF、TF、DF16下列指令执行时出错的是参考答案为:AADD BUF1,BUF2BJMP DWORD PTR DAT BXCMOV AX,BX+DI NUMDTEST AL,08H解析ADD指令的两个操作数不能同时是存储器操作数,所以选项A中的指令是错误的。17已知(AX)=1234H,执行下述三条指令后,(AX)=参考答案为:MOV BX,AXNEG BXADD AX,BXA1234HB0EDCCHC6DCCHD0000H解析第一条指令的功能是将AXBX,即BX中的内容为1234H;第二条指令的功能是对BX求补,即BX中的内容变为

15、1234H;第三条指令的功能是AX+BXAX,即1234H+(-1234H)=0AX;所以执行三条指令后,AX的内容为0。18在下列指令中,_指令的执行会影响条件码中的CF位。AJMP NEXTBJC NEXTCINC BXDSHL AX,1解析JMP、JC指令不任何影响状态标志位;INC指令执行结果除不影响CF外,其余状态标志位(AF、OF、PF、SF、ZF)都受影响。SHL指令使CF=O,OFO,影响ZF、SF、PF标志位,AF无定义。19串指令中的目的操作数地址是由_提供。ASS:BPBDS:SICES:DIDCS:IP20将DX的内容除以2,正确的指令是参考答案为:ADIV 2BDIV

16、 DX,2CSAR DX,1DSHL DX,1解析选项A中的的指令执行的操作是:AX/2;选项B中的的指令书写格式不正确;选项C中的的指令执行的操作是:将DX的内容右移一位,将使DX的内容缩小为原先的1/2,即将DX的内容除以2;选项D中的的指令执行的操作是:将DX的内容左移一位,将使DX的内容扩大为原先的2倍,即将DX的内容乘以2。二,简答题(每小题4分,共12分)1假定(DX)=10111001B,(CL)=0.3,(CF)=1,试确定下列各条指令单独执行后,DX中的值。(1)SHR DX,1(2)RCR DL,1(3)RCL DX,CL 答:(1) 005CH (2) 0 0DCH (3

17、) 05CCH解析(1)指令:SHR DX, 1 使DX的内容向右移动了一位,因此DX的内容变为0000000001011100B,即005CH。(2)指令:RCR DL, 1 使DL的内容向右循环带进位移动了一位,DH的内容不变,因此DX的内容变为000011011100B,即00DCH。(3)指令:RCL DX, CL 使DX的内容向左循环带进位移动了3位,因此DX的内容变为000011001100B,即05CCH。2写出完成下述功能的程序段:(1)传送25H到AL寄存器(2)将AL的内容乘以2(3)传送15H到BL寄存器(4)AL的内容乘以BL的内容并请写出最后(AX)=?(1)MOV

18、AL, 25H(2)SHL AL, 1(3)MOV BL, 15H(4)MUL BL最后,(AX)=612H =1554解析1)将AL的内容左移1位,将使它的内容扩大2倍,即使AL的内容乘以2。2)最后,AX的内容应为25H*2*15H=612H=15543写一程序段,求双字长数DXbX的相反数。 答:NEG DXNEG AXSBB DX, 0解析求双字长数DX:AX相反数,即对其求补,所以应实现的操作是:(DX:AX) 0-(DX:AX)即 0 : 0-) DX : AX将上面的算式分解后,即为对DX求补,对AX求补,并从DX中减去将AX求补时产生的借位。所以相应的指令就是:NEG DX三,

19、程序分析题(每小题6分,共36分)1现有如下程序段:DATA SEGMENT ORG 0020H DA1 DW 12H,23H DA2 DB 11H,21HDA3 EQU 1234HDA4 EQU -DA2DA5 DB 31H,32H请回答:(1)该程序段已占有的存储字节数是多少?(2)符号名DA4的值是多少?符号名DA5的值是多少?答:(1) 该程序段已占有的存储字节数是8个字节。(2) 符号名DA4的值为2,符号名DA5的值是0026H。解析1)伪指令ORG 0020H,设置存储单元起始偏移地址为0020H;2)符号名DA1的值(即所对应存储单元的偏移地址)是0020H,该数据区的类型为字

20、,有2个字数据,所以共占用4个字节;3)符号名DA2的值(即所对应存储单元的偏移地址)是0024H,该数据区的类型为字节,有2个字节数据,所以共占用2个字节;4)经EQU定义的符号名DA3、DA4不占用存储空间,$ 用来表示当前地址计数器的值(0026H),可它们的值分别为DA3=1234H, DA4=2。5)符号名DA5的值(即所对应存储单元的偏移地址)是0026H,该数据区的类型为字节,有2个字节数据,所以共占用2个字节;6)综上所述,该程序段共占有的存储字节数8个字节。2执行下列程序段后,回答问题。ORG 1221HNUM DW 12H MOV AX,NUMMOV BX,OFFSET N

21、UMMOV CH,TYPE NUM HLT请问:(AX)=_,(BX)=_,(CX)=_。(AX)=0012H (BX)=1221H (CX)=0200H解析1)指令MOV AX, NUM的功能是将NUM单元的字内容12H传送给AX,使得(AX)=0012H;2)指令MOV BX, OFFSET NUM的功能是将NUM单元的偏移地址1221H传送给BX,使得(BX)=1221H;3)指令MOV CL, BYTE PTR NUM+1的功能是将NUM+1(1222H)单元的字节内容(即NUM字单元的高字节)00H传送给CL,使得(CL)=00H;4)指令MOV CL, TYTE NUM的功能是将N

22、UM字单元的类型字节数2传送给CH,使得(CH)=02H;5)综合第4和第5点,可知CX寄存器的内容为0200H。3阅读如下程序:ADRR DB XXH,XXH,XXH CMP ADRRBX,0NUM EQU -ADRR LOOPZ DONRETT DB? JNZ NEXT MOV BL,OFFHMOV CX,NUM NEXT:MOV RETT,BLMOV BX,-1 HLTDON:INC BX(1)该程序完成的功能是什么?(2)程序执行后指出RETT字节单元中的内容是什么?(1) 在以ADRR为起始地址的数组中,查找第一个非0数据。(2) 若找到则将第一个非0数据在数组中的偏移量送入RETT

23、单元中;若无非0数据,则将OFFH送入RETT单元中。解析1)程序的前3条指令,用于定义数据:以ADRR为起始地址的数组;NUM的值为ADRR数组的数据个数;RETT是一个空的字节单元2)该程序的主体是一个循环,该循环的主要功能是在数组ADRR中第一个非0数据。如果是由于找到,则将第一个非0数据在数组中的偏移量送入RETT单元中;若没找到非0数据,则将OFFH送入RETT单元中。4现有一子程序:SUB1 PROC PLUS:TEST BL,80HTEST AL,80H JE EXITOJE PLUS XCHANGE:XCHG AL,BLTEST BL,80H EXITO:RETJNE EXITO SUB1 ENDPJMP XCHANGE试回答:(1)子程序的功能是什么?(2)若调用子程序前AL=9AH,BL=77H,则返回主程序时,AL=_,BL=_。(1)子程序的功能是判别AL和BL中的数是否为异号数,当为异号时交换,否则不变。(2) AL=77H, BL=9AH解析1)数据是以二进制的形式存储在计算机中的。数据对应的

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1