微计算机技术(清华)配套练习题及答案作业3(答案)END

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

作业3(请同学们作业时,不要改变题号、字体及答案的颜色,仅修改表内答案字母)一、判断题[30分](在表格内填空,正确填A,错误填B请不要改变字体的颜色)题号123456789101112131415答案BBAAAAAAAAABBAB1.不同指令的指令周期是等长的。2.8086CPU在响应中断时,执行叁个中断响应周期3.若SS=5310H,SP=0E30H,其物理地址为(53F30H)。4.8086中断系统分为硬件中断和软件中断两类.5.若CH=07H,CL=08H,执行指令ADDCH,CL后,AF=(0),CF=(0),OF=(0),PF=(1)。6.指令由(操作码)和(操作数)两个字段构成。7.条件转移指令JNE的测试条件是(ZF=0)。8.若用指针(BP)访问存储器,则数据包含在(SS)段中。9.若AX=1234H,SP=1000H,指令PUSHAX执行后AX=(1234H),SP=(0FFEH)。10.指令采用(立即)寻址方式时操作数是在代码段中。11.程序中的转移指令、返回指令以及中断处理都能对CS、IP进行操作。12.SRAM电源撤除,信息不会丢失。13.MOV[DI][SI]14.DMA是一种不需要CPU介入的高速数据传送方式。15.8086的中断系统中有两类硬中断:可屏蔽中断和软中断。二、选择题[60分](在表格内填写正确答案的大写字母,请不要改变字体的颜色,当有多个A时,表示是多选题)题号123456789101112131415答案CCCCDBADBDACACC题号161718192021222324252627282930答案AADADDCDDADBBBA第一题得分第二题得分第三题得分总分1.程序中数据定义如下:DATA1DW?DATA2DB32DUP(?)DATA3DD?COUNTEQU$-DATA1此时COUNT的值是()。(A)19(B)39(C)38(D)372.执行下列程序段后:BUFDB01H……XORAL,ALMOVAL,BUFMOVBL,ALSALAL,1ADDAL,BLXORAL,0FFHHLT寄存器AL的值是多少?寄存器BL的值是多少?(A)①AL=0FFH②BL=1(B)①AL=0FCH②BL=2(C)①AL=0FCH②BL=1(D)①AL=0ECH②BL=13.写出下列程序段的功能MOVBX,2000HMOVDS,BXXORAL,ALMOVCX,100AGAIN:MOV[BX],ALINCBXLOOPAGAIN(A)数据段中以0100H起始的100个单元中的内容置1(B)数据段中以0100H起始的100个单元中的内容清零(C)数据段中以2000H起始的64H个单元中的内容清零(D)数据段中以2000H起始的200个单元中的内容清零4.写出下列程序段的功能LEASI,BUFFERLEADI,ARRAYMOVCX,100XORBL,BLLP:CMP[SI],01HJNZLP1INCBLLP1:INCSILOOPLPMOV[DI],BL(A)统计以ARRAY为首址的100个单元中数字为1的个数存入BUFFER单元(B)统计以ARRAY为首址的64H个单元中数字为1的个数存入BUFFER单元(C)统计以BUFFER为首址的100个单元中数字为1的个数存入ARRAY单元(D)统计以BUFFER为首址的100个单元中数字为0的个数存入ARRAY单元5.写出下列程序段的功能MOVCX,16MOVAX,NMOVBH,0LP0:SHLAX,1JCLPINCBHLP:LOOPLP0MOVSUM,BH(A)统计CX字中0的个数(B)统计CX字中1的个数(C)统计N字中1的个数(D)统计N字中0的个数6.写出下列程序段的功能MOVAL,NANDAL,0FHMOVBL,ALMOVAL,NSHRAL,4MOVBH,AL(A)将将N的内容拆为两部分分别存入AL,BL中(B)将N的内容拆为两部分分别存入BH,BL中(C)将N的内容拆为两部分分别存入BH,AL中(D)将N的内容拆为两部分分别存入AH,BL中7.执行下列程序段后,AX=?MOVAX,0702HMOVBH,09HAADDIVBH(A)AX=0008H(B)AX=0009H(C)AX=0007H(D)AX=0006H8.下面程序段执行后AL=?ABCDW2152H,3416H,5731H,4684HMOVBX,OFFSETABCMOVAL,3XLAT(A)AL=16H(B)AL=52H(C)AL=67H(D)AL=34H9.执行下面的程序段后AX=?MOVCX,5MOVAX,50NEXT:SUBAX,CXLOOPNEXTHLT(A)AX=22H(B)AX=23H(C)AX=33H(D)AX=21H10.执行下面的程序段后AX=?*TABDW1,2,3,4,5,6ENTRYEQU6MOVBX,OFFSETTABADDBX,ENTRYMOVAX,[BX](A)AX=0006H(B)AX=0001H(C)AX=0002H(D)AX=0004H11.执行下面程序段后AX=ARRAYDW1,2,3,4,5,6,7,8,9,10COUNTEQU$-ARRAYXORAX,AXMOVCX,COUNTMOVSI,OFFSETARRAYNEXT:ADDAX,[SI]INCSILOOPNEXT(A)AX=0055H(B)AX=0555H(C)AX=5555H(D)AX=0005H12.写出下列程序段的功能MOVAH,1INT21HANDAL,0FHMOVBL,ALMOVAH,1INT21HSHLAL,4ANDAL,BL将从键盘接受到的两个字符拼在一起(A)将从键盘接受到的1个字符拼在一起(B)将从键盘接受到的叁个字符拼在一起(C)将从键盘接受到的两个字符拼在一起(D)将从显示接受到的两个字符拼在一起13.执行下列程序段后*NDB07HXORBH,BHMOVBL,NRCLBL,1ADDBH,BLXORBH,0FFHHLT寄存器BH的值是(),寄存器BL的值是()。(A)BH=0FFH,BL=0EH(B)BH=0EFH,BL=0EEH(C)BH=0FH,BL=0EH(D)BH=0EH,BL=0FFH14.分析下列程序段MOVAL,NXORAH,AHMOVCL,4DIVCL当N=3CH时,程序执行完后AX=?(A)AX=000EH(B)AX=0010H(C)AX=000FH(D)AX=00FFH15.程序段如下:CLCMOVAL,6MOVBL,9ADDAL,BLMOVBL,ALDAA执行上面程序段后,AL=,AF=,BL=(A)AL=15H,AF=0,BL=FFH(B)AL=15H,AF=0,BL=0FH(C)AL=15H,AF=1,BL=0FH(D)AL=15H,AF=1,BL=00H16.执行下列指令后TABLEDB19H,55H,9CHLEABX,TABLEMOVAL,[BX]XORAL,89HMOV[BX],AL寄存器AL的值是(A)AX=90H(B)AX=10H(C)AX=99H(D)AX=FFH17.分析下列程序段,说明该程序段执行何种功能。MOVCX,10MOVDL,30HNEXT1:MOVAH,2INT21HINCDLLOOPNEXT1(A)向屏幕上依次输出0,1,…,9(B)向屏幕上依次输出30,31,…,39(C)向屏幕上依次输出9,8,…,0(D)向屏幕上依次输出21,22,…,2918.执行下列指令后*MOVAX,1245HMOVBX,5689HADDAL,BLMOVCL,ALMOVAL,AHADCAL,BHDAA寄存器AL的值是,寄存器CL的值是(A)AL=12H,CL=45H(B)AL=56H,CL=89H(C)AL=68H,CL=CCH(D)AL=68H,CL=CEH19.分析下列程序段:MOVAL,NXORAH,AHMOVBL,16DIVBL当N=57H时,程序执行完后AX=?(A)AX=0705H(B)AX=0707H(C)AX=0700H(D)AX=00FFH20.在下面程序的括号中分别填入如下指令:①LOOPXH②LOOPNEXH③LOOPEXH问在这三种情况下,当程序执行完后,AX、BX、CX、DX四个寄存器中的内容分别是什么?START:MOVAX,04MOVBX,02MOVCX,03MOVDX,05XH:INCAXADDBX,AXSHRDX,1()HLT(A)①AX=0007H,BX=0014H,CX=0,DX=0②AX=0006H,BX=0014H,CX=0,DX=0③AX=0005H,BX=0007H,CX=0002H,DX=0002H(B)①AX=0007H,BX=0014H,CX=0,DX=0②AX=0007H,BX=0014H,CX=0,DX=0③AX=0001H,BX=0007H,CX=0002H,DX=0002H(C)①AX=0007H,BX=0014H,CX=0,DX=0②AX=0007H,BX=0014H,CX=0,DX=0③AX=0005H,BX=0017H,CX=0002H,DX=0002H(D)①AX=0007H,BX=0014H,CX=0,DX=0②AX=0007H,BX=0014H,CX=0,DX=0③AX=0005H,BX=0007H,CX=0002H,DX=0002H21.阅读程序,请说出该程序的功能是什么?MOVAX,DATAMOVDS,AXLEASI,BUFFERXORBL,BLMOVCX,100AGAIN:MOVAL,[SI]TESTAL,1JNZNEXTINCBLNEXT:INCSILOOPAGAINHLT(A)统计以BUFFER为起始地址的64H个单元中奇数的个数。(B)统计以0100为起始地址的100个单元中偶数的个数。(C)统计以BUFFER为起始地址的10个单元中偶数的个数。(D)统计以BUFFER为起始地址的64H个单元中偶数的个数。22.程序段如下:MOVAL,NANDAL,0FHADDAL,90HDAAADCAL,40HMOVRUT,ALHLT问:①若N=5,下列程序执行后AL=?②该程序段的功能是什么?(A)①135H②将十六进制数加法(B)①135H②将十进制数加法(C)①35H②将十六进制数转换为ASCII码(D)①35H②将十六进制数转换为BCD码23.执行下列程序段后:DATASEGMENTDT1LABLEWORDDT2DB12H,34HDATAENDS………………MOVAL,DT2MOVDX,DT1寄存器AL的值是①,寄存器DX的值是②。(A)①34H②3412H(B)①12H②1234H(C)①23H②3412H(D)①12H②3412H24.读下列程序,请说出该程序的功能是什么?DATASEGMENTSUMDW0DATAENDSSTACKSEGMENTDB200DUP(?)STACKENDSCODESEGMENTASSUMEDS:DATA,SS:STACK,CS:CODESTART:MOVAX,DATAMOVDS,AXMOVCX,50MOVAX,0MOVBX,1NEXT:ADDAX,BXINCBXINCBXDECCXJNENEXTMOVSUM,AXMOVAH,4CHINT21HCODEENDSENDSTART(A)求从50开始的50个数之和。(B)求从1开始的50个数之和。(C)求从1开始的200个数之和。(D)求从1开始的50个奇数之和。25.设伪指令定义如下,请画出内存分配示意图。BUFDB?DW‘AB’DW‘C’DW1234HDB‘EF’(A)(B)(C)(D)26.执行下列程序段后:*DATASEGMENTDT1DW8A9BHDT2DB7CH,6DHDATAENDS┇┇MOVAX,DT1MOVBX,OFFSETDT1MOVSI,OFFSETDT2寄存器BX的值是①,寄存器SI的值是②。(A)①、0002H②、0000H(B)①、0000H②、0001H(C)①、8A9BH②、0002H(D)①、0000H②、0002H27.执行下列指令后:TAB

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功