1、微型计算机原理考试题101453一、单项选择题( 在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。 每题 2 分,共 20 分)1.若栈顶的物理地址是 20100H,当执行完指令 CALL AX后,栈顶的物理地址是( )。A)20102H B)20101H C)200FFH D)200FEH2.当执行完下列指令序列后,标志位 CF和OF的值是( )。MOV AH,85HSUB AH,32HA)0,0 B)0,1 C)1,0 D)1,1SI 的目标地址偏移量是( )。A)SI 的内容 B)SI 所指向的内存单元的内容C)IP+SI 的内容 D)IP+SI4.循环指令LO
2、OPN终止循环的条件是( )。A CX=Q 且 ZF=0 B 、CX=Q 或 ZF=1C CX 0,且 ZF=0 D 、CX 0,或 ZF=15指出下列哪个数据在汇编语言中是非法的( )A)19BH+25D B)25+AL C)108-102Q D)101B*0ABH6.已知AL, BX中各放一个无符号数,计算 AL*BX的积,应采用下列程序段( )A)MUL BX B)IMUL BXC)XOR AH, AH D)CBXMUL BX MUL BX是程序中某指令语句标号,下述四个程序段中,不能实现转移到 NEXT 语句执行的是( )A)JMP NEXT B)MOV BX ,OFFSET NEXT
3、JMP BXC)MOV BX, NEXT D)LEA AX, NEXTJNP BXJNP AX的定义如下:DATA DW 1234H现想把 12H 取入到 AL 寄存器,可以实现该功能的程序段是( )A)MOV AL, BYTE PTR DATAB)MOV AL, DATA+1C)MOV AL, BYTE PTR DATA+1D)MOV AX, DATA9.下面指令执行后,改变 AL寄存器内容的指令是( )。A、 TEST AL, 02H B 、OR AL, ALC、 CMP AL, BL D 、AND AL, BL10.在汇编语言程序的开发过程中使用宏功能的顺序是 ( )。A、宏定义,宏调用
4、 B 、宏定义,宏展开C宏定义,宏调用,宏展开 D、宏定义,宏展开,宏调用二、填空题 ( 每空 1 分,共 30 分)1设机器字长为16位,若2= 117,用二进制数和16进制数表示时分别为 B和 Ho若N2=-117,原=B , N2 补=H.2.指出下列各指令中源操作数的寻址方式,并计算指令执行后 AX的内容。其中:DS)=3000H,( ES)=4000H,( SS) =5000H ,AX)=1200H,BX)=1300H,寻址方式,寻址方式, 寻址方式, 寻址方式, 寻址方式,BP)=1400H,(SI)=1500H,(42000H)=1260H,(51400H)=1270H,(338
5、00H)=1280Ho1MOV AX, 1250H ; _2MOV AX , ES:2000H ;3MOV AX , BP ;4XCHG AX, BX+SI+1000H ;5MOV AX , BX+2500H ;3.执行下列两条指令:MOV BX , 9048HSUB BH , BL执行后,各标志位分别为: CF=_,ZF=_,SF=_,OF=_, AF=_。4.在存储器里以 为单位存储信息;在机器里,访问存储器都是以 为单位进行的,也就是说,机器是以 (奇或地址访问存储器的O端口有 和 两种编址方式,8086采用 编址方式,最大I/O寻址空间6. 执行下列指令,写出每条指令执行后右边所示的内
6、容:MOV AL,28HADD AL,68H;(AL) = , CF=_, AF=_DAA;( AL)=_。三、改错题 (15 分 )下列程序求一组带符号字节数据的平均值,数据的首地址为 DATA数据个数存放在 CNT单元,但程序有逻辑错误,请将错误改正1DSEG SEGMENT2DATA DB ,90,20,-120,603CNT DW 0005H4AVER DB5DSEG ENDS6CSEG SEGMENT7ASSUME CS:CSEG,DS:DSEG8MAIN PROC FAR9PUSHDS10XORDX,DX11PUSHDX12MOVAX,DS13MOVDS,AX14MOVSI,OFF
7、SET DATA15MOV CX,OFFSET CNT16AGAIN: ADD DL,SI17ADC DH,018DEC CX19LOOP AGAIN20DIV CL21MOV AVER,AL22RET23MAIN ENDP24CSEG ENDS25END MAIN四、简单程序设计题(每小题 5 分,共 10分)用尽可能少的指令实现完成下列功能的程序片段。1.假设在数据段中有一字符串 stringl ,其长度为20,要求把它们传送到附加段 string2中,假设DS和ES都初始化在同一数中。:AX中双字数据算术右移 n位,n值在CL中。五阅读下列程序,回答后面的问题:( 10 分)DATA S
8、EGMENTDATA1 DB 85H, 27H, 4AHDATA2 DB 93H, 87H, 65HLEGH DW 3SUM DB 0, 0, 0DATA ENDSCODE SEGMENTASSUME CS:COD,E DS:DATASTART: MOV AX, DATAMOV DS, AXLEASI,DATA1LEABX,DATA2LEADI,SUMMOVCX,LEGHCLCAGAIN: MOV AL,SIADCAL, BXMOVDI , ALINCSIINCBXINCDILOOPAGAINMOV AH, 4CHINT21HCODE ENDSEND START请回答:(1)该程序完成什么功能
9、(2)程序中的 INC SI 可否用指令 ADD SI,1 代替,为什么(3) 程序中的指令LEA SI , DATA何用指令( )代替。(4) CLC指令的目的是( )。六、程序设计题(要求 : 写出完整的汇编语言源程序,并给出适当的注释 ,15 分)设在数据段中有一字数组: 3, 5, 15, 23, 37, 49, 52, 65, 78, 99, 105,并且已按从小到大的顺序存储,该数组的首地址和址分别为Array_head和Array_end,要求编写程序,将数 N=55插入该数组的正确位置,使得插入 N后数组仍按从小到大的顺序存Data SegmentX DWArray_head
10、DW 3,5,15,23,37,49,52,65,78,99Array_end DW 105N DW 55Data Ends=汇编语言程序设计模拟试卷 02=1234567填空(每空225D=(1 分,共 30 分)B =(已知 X= -1011011,求X补=(已知X补=,则X=()H)D。8086CPU在取指令时,会选取段寄存器 (地址2000H: 0480H,其物理地址是(按存储器的位置,可以将存储器分为汇编语言程序的建立及汇编过程为:先用()。) 的值作为段基值,再加上由 () ,段地址是 () ,偏移量是 () 产生源程序,) 提供的偏移地址形成)。然后用 (20 位的物理地址) 产
11、生程序,最后用 (0 产生可执行文件。8执行下列两条指令:MOVBX, 9048HSUBBH, BL执行后,各标志位分别为: CF=(0 , ZF=() , SF=() , OF=() , AF=()。9对于下面的数据定义:DATA1DW10DATA2DB2,8DATA3 DW 100 DUP( 0)请写出下列的MOV指令分别被汇编后的指令形式:MOV BX,( DATA1 LT 5) AND 20)OR ( DATA1 GE 5) AND 30)MOVSI,TYPEDATA2MOVCX,LENGTHDATA3 。MOV CX, SIZE DATA3) 为单位进行的,也就是说,机器10在存储器
12、里以 ( ) 为单位存储信息;在机器里,访问存储器都是以 ( ) (奇或偶)地址访问存储器的11 I/O 端口有 ( ) 和 () 两种编址方式 ,8086 采用 () 编址方式,最大 I/O 寻址是 ( ).二 选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。每小题2 分,共 20 分)1用来存放即将执行的指令的偏移地址的寄存器是( )A ) SP B) IP2源变址寄存器是( )。A ) SI B) DI3.设 SP= 1110H 执行 PUSH AX后,A) SP= 1112H B)SP= 110EH4.语句 DA1 DB 2 DUP( 3, 5, 7)
13、C) BPD) CSC) SPD) BXSP中的内容为()。C SP= 1111HD SP= 110FH汇编后,与该语句功能等同的语句是(A) DA1 DB 3, 5, 7B ) DA1 DB 2, 3, 5, 7C )DA1 DB 3,5,7,2D )DA1 DB 3, 5,7, 3, 5,75下面四个寄存器中,不能用来作为间接寻址的寄存器是( )。A) BX B) CX C) BP D) DI6完成将BX清零,并使标志寄存器 CF清零,下面指令错误的是( )A)SUB BX, BX B) XOR BX, BXC) MOV BX, 0 D ) AND BX, 0000H7下面数据传送指令中,
14、正确的是( )。A ) MOV BUF1, BUF2 B) MOV CS, AXC) MOV CL, 1000 D) MOV DX, WORD PTRBP+DI8下面指令执行后,改变 AL寄存器内容的指令是( )。A、 TEST AL, 02H B 、 OR AL, ALC、 CMP AL, BL D 、AND AL, BL9完成将有符号数 BX的内容除以2的正确指令是( )。A)SHR BX, 1B) SAR BX, 1C)ROR BX, 1D) RCR BX, 110指令LOOPZ勺循环执行条件是()。A)C& 0 且 ZF= 0B) CX 0 或 ZF= 0C)CX 0 且 ZF= 1D
15、 CX 0 或 ZF= 1三 改正下列程序中的错误 (直接在程序中改正 )(12分)1下面是将内存一字节数据高 4位和低4位互换并放回原位置的程序,找出错误并改正。1DATA SEGMENT2DD1 DB 23H3DATA ENDS4CODE SEGMENTASSUME CS: CODE, DS:DATASTART: MOV AX, DATAMOVDS,AXLEASI,OFFSET DD1MOVAL,SIMOV CL, 4RCRAL,CLMOVSI,ALMOVAH,4CHINT21HCODE ENDSEND START下面的程序是将内存单元一字节数据乘以 10 放回单元的程序,找出错误并改正。
16、DATA SEGMENTDA DW 34DATA ENDSCODE SEGMENTASSUME CS: CODE, DS: DATASTART: MOV AX, DATAMOV DS, AXMOV SI ,OFFSET DAMOV AL, SIMUL 10MOV SI , AXMOV AH, 4CHINT 21H67891011121314151621234567891011121314CODE ENDS15END START四 程序分析( 12 分)1 执行完程序后,回答指定的问题。MOV AX, 0MOV BX, 2MOV CX, 50LP: ADD AX, BXADD BX, 2LOOP
17、 LP问:( 1)该程序的功能是:(2)程序执行完成后,(AX) = ( )2 执行完程序后,回答指定的问题。BLOCK DB 20H, 1FH, 08H, 81H, OFFH-RESULTDBSTART:LEASI,BLOCKMOVCH,0MOVCL,SIDECCXINCSIMOVAL,SILOP1:CMPAL,SI+JLENEXTMOVAL,SI+1NEXT:INCSILOOP LOP1MOV RESULT,ALHLT问:( 1)该程序的功能是:(2)该程序的循环次数是( )。五、填语句( 12 分)。1.从键盘输入一个十六进制数码,转换成二进制数放入 HEXNU单元,在横线上填入适当的语
18、句。HEXNUM DBMOV AH,INT 21HCMP AL , 39H NEXTSUB AH,NEXT:SUB AL, 30HMOV H EX N U ,M HLT 六、程序设计题(要求:写出完整的汇编语言源程序,可以上机调试运行,并给出适当的注释, 14分)知在内存中从BLOCK单元起存放有20个带符号字节数据,统计其中负数的个数并放入 COUN单元。DATA SEGMENTBLOCK DB - 7, 1, 12, -90, -70, 34, -1 , 56, 45, -12DB - 3, -4 , 23, 0, 12, 11, -9 , -8 , 67, -56 CN EQU $-BL
19、OCKCOUNT DBDATA ENDS=汇编语言程序设计模拟试卷 03=1填空题(每空 1 分,共 20 分)1计算机系统由 和 组成。2计算机语言是 与 之间交流信息的工具, 计算机语言可分为三类: 3 .= B = Q = H。4. 8086CPU是 位微机,8088CPU是 位微机,80386CPU是 位微机。5.在下列空白处,填上一个属于同类的运算符号:(1)、 *、/ 、 、SHL、SHR(2)AND 、 OR、 、 NOT(3) EQ 、 NE、 LT、 LE、 GT、6.在 8086/8088 中,存储器以 为单位存储信息;在机器里,访问存储器都是以 为单位进行的,也就是说,机
20、器是以(奇或偶)地址访问存储器的。7. 已知X补=,则X= Do2选择题( 在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。 每题 2 分,共 20 分)1 .以8086/8088为CPU勺微机内存最大容量为( )。A)4MB B)1MB C)640KB D)64KB2. 与不等勺数据是( )。A) B) C)3.8 位二进制补码表示勺整数数据范围是( )。A) -128 127 B) -127 127 C)-128 128 D)-127 1284. 下列四个寄存器中,不允许用传送指令赋值勺寄存器是( )。A ) CS B) DS C) ES D) SS5.指令MOV
21、 100SIBP ,AX的目的操作数的隐含段为( )。A)数据段 B)堆栈段 C)代码段 D)附加段6. 确定下列哪些数据在汇编语言中是非法的( )。A) 19AH B) 1372 C)ABH D)145C) 200FFH D) 200FEHCF和SF的值是( )。A)0, 0 B) 0, 1C) 1 , 0 D) 1 , 1A ) 20102H B)20101H8.当执行完下列指令序列后,标志位MOV AL, 0C4HADD AL, 9DH9.JMP WORD PTRBX转移的目标地址是(A) BX中的内容B)SP+ BX的和C) IP + BX之和D) BX指示的内存单元的内容10.808
22、6/8088CPU的I/O指令采用间接寻址时,可使用的间址寄存器是( )A)BX B)DX C)SI D)DI3判断题,若错误,请说明原因或改正(判断每题的正误,对的在题后括号内画“/,错的画“ X”)( 20分,)1 .在 8 位补码表示中,表示的真值为 -0 。( )2奇偶标志位PF,当运算结果的低8位中有偶数个1时,被置为0。()3.CS DS ES和SS段都可以存放指令代码。( )4.INC AX ( )5.MOV DI , SI ( )6.两数相等时转移可用 JZ 指令。( )7.OUT BX , AL( )&当if = 0时,CPU不能响应NMI中断。( )9已知AL、BX为带符号
23、数,计算 AL*BX的乘积,使用下列程序段。CBWIMUL BX( )10.在 8 位补码表示法中,对 -128 求补会产生溢出。( )4程序分析( 10 分)1.试分析下列程序段。ADD AX, BXJNO L1JNC L2SUB AX, BXJNC L3JNO L4JMP SHORT L5如果AX和BX的内容给出如下:AX BX( 1 ) 14C6 80DC(2)B568 54B7( 3 ) 42C8 608D( 4 ) D023 9FD0( 5 ) 9FD0 D023问该程序分别在上面 5 种情况下执行后,程序转向哪里请直接标注在题后。五 宏定义如下,试展开下面的宏调用。(每题 5 分,
24、共 10分)1 Dfmess1 MACRO LAB,NUM,NAMELAB&NUM DB Hello MR.&NAME,0DH,0AH,0ENDM;宏调用语句:;宏展开为:Dfmess1Mess, 1, Assembly2 Dfmess2MACROMESSDB&MESS , 0DH, 0AH, 0ENDS;宏调用语句:Dfmess2 90 Dfmess2 % (10+5 - 2)宏展开为:六写岀实现下列功能的程序片段。(5分)若要测试AL寄存器中第2位是否为1 (但不能改变AL的值),如为1则转移到EXIT去执行,否则将其第 5、3位变反。七程序设计(要求写岀完整的汇编语言源程序,包括段的定义
25、,寄存器保护等,并给岀适当的注释, 15分)已知两个无符号字数据 X、Y分别存放在ADRX和ADRY单元,编制程序,若 X是Y的倍数,则在显示器上显示 0,否则显示1Data SegmentArray_end DW 105N DW 55Data Ends=汇编语言程序设计模拟试卷 04=填空(每空1分,共30分)1冯诺依曼型计算机将计算机的硬件部分分为五大功能部件,分别是 、_、 、 、 。2.119D= B= H3.已知 X= -1011011,求X反= ,X补= 。4十进制数45的组合BCD码为 BCD5. 执行部件EU的主要功能是: 。6. 8086CPU在取指令时,会选取寄存器 的值作
26、为段基值,再加上由 提供的偏移地址形成 20位的物理地址7. 地址2000H: 0480H,其物理地址是 ,段地址是 ,偏移量是 。8将汇编语言源程序翻译成目标程序的过程叫9执行下列两条指令:MOV BX , 7896HADD BH , BL执行完上述指令后,各标志位分别为:CF=_, ZF=_, SF=_, OF=_, AF=10AX的内容。指出下列各指令中源操作数的寻址方式,并计算指令执行后其中:(DS =3000H,( ES =4000H,( SS) =5000H,( AX =1200H,( BX) =1300H,(BP) =1400H,( SI) =1500H,( 42000H) =1
27、999H,( 51400H) =2000H,( 33800H) =2001H。MOVAX, 1250HMOVAX , ES: 2000HMOVAX , BP XCHGAX, BX+SI+1000H;-寻址方式,(寻址方式,(-寻址方式,(寻址方式,(二 选择题(在每小题的四个备选答案中,选岀一个正确的答案,并将其号码填在题干的括号内。每题2分,共30分)1目的变址寄存器是()。A ) SIB) DIC)SPD BX2 下列常用寻址方式中,(属于立即寻址,()属于寄存器间接寻址,()属于变址寻址,()属于寻址。A)MOVAX, ES: 2000H)MOV BX , AXMOVAX, 2000HD
28、) MOV AX, BX+3AHMOVDI+12H,AXF) MOV AX, BX3.设SP= 1110H,执行PUSHAX后,SP中的内容为()。SP= 1112H)SP= 110EHSP= 1111HD) SP= 110FH4下列指令中错误的指令为()和()。A)DA1 DB 3,5, 7C)DA1 DB 3,5, 3, 5,7 6下面四个寄存器中,用来作为A ) BX B) DX7 完成将BX清零,并使标志寄存器A )SUB BX, BXC )MOV BX, 08下面数据传送指令中,正确的是(A) MOV BUF1, BUF2B) MOV CS, AXF)MOV AX, BXE )MOV DI 32H,1845H 5语句 DA1 DB 2 DUP( 3,5), 7 汇编后,与该
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1