一、单项选择题(本大题共20小题,每小题1分,共20分在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.设A=186,B=273Q,C=0BBH,它们之间的关系是()A.A>B>CB.A<B<CC.A=B=CD.A<B=C2.8086/8088的存贮器组织是将存储器划分为段,可作为段的起始地址是()A.185A2HB.00020HC.01004HD.0AB568H3.下列指令执行后,能影响标志位的指令是()A.PUSHFB.POPFC.JNLE OPRD.LOOPE LOP4.循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是()A.CX≠0且ZF=1B.CX≠0且ZF=0C.CX≠0或ZF=1D.CX≠0或ZF=05.设V ARl和V AR2是已定义的变量名,非法的表达式是()A.V ARl-V AR2B.V AR2-V ARl[BX]C.V ARl+V AR2D.V ARl[BX]6.设NUM=11011011B,指令MOV AX,NUM SHL 3执行后AX中的值是()A.11011011000BB.1l011000BC.00011011BD.00011011011B7.8088/8086存储器分段,每个段不超过()A.64K个字B.32K个字节C.64K个字节D.1兆个字节8.设AL中已有压缩型BCD码,为实现对AL的减1操作,可选用的指令序列是()A.DEC ALB.SBB AL,0AAS DASC.SUB AL,1D.SUB AL,lAAS DAS9.若AX=-15要得到AX=15应执行的指令是()1A.NEG AXB.NOT AXC.INC AXD.DEC AX10.8086/8088系统执行传送指令MOV()A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志11.下列指令中操作数在代码段中的是()A.MOV AL,42HB.ADD AL,BLC.SUB [BX],DID.INC [DI]12.表示过程定义结束的伪指令是()A.ENDPB.ENDSC.ENDD.ENDM13.条件转换指令JNBE产生转换的条件是()A.CF=0 AND ZF=0B.CF=0 AND ZF=1C.CF=1 AND ZF=0D.CF=1 AND ZF=l14.设(SS)=338AH,(SP)=450H,执行PUSH BX,和PUSHF两条指令后,堆栈顶部的物理地址是()A.33CECHB.33CF2HC.33CF4HD.33CE8H15.要输入端口1234H中的8位数据,其指令应是()A.MOV DX,1234HB.MOV DX,1234HOUT DX,AL IN AL,DXC.IN AX,1234HD.OUT DX,1234H16.标志寄存器中属于控制标志位的是()A.DF,OF,SFB.DF,IF,TFC.OF,CF,PFD.AF,OF,SF17.用一条指令实现将寄存器BX和SI中的内容相加,结果送入AX中,这条指令是()A.ADD AX,[SI][BX]B.MOV AX,[BX+SI]C.AND AX,[BX+SI]D.LEA AX,[BX][SI]18.已知AX,BX中均为带符号数,当进行字相除时,下面指令或指令序列正确的是()A.DIV BXB.CWD2IDIV BXC.XOR DX,DXD.CBWDIV BX IDIV BX19.下列指令执行后对源和目的操作数均无影响的是()A.MOV [BX+2],AXB.SUB AX,2467HC.SBB [SI],BXD.CMP AX,BX20.下列有语法错误的语句是()A.DB 1234HB.DW 4567HC.DD ′AB′,′CD′D.DB ′ABCD′二、填空题(本大题共6小题,每小题1分,共6分)请在每小题的空格中填上正确的答案。
错填、不填均无分。
21.宏定义开始用的伪指令是______________。
22.DF是程序状态字寄存器中的_____________标志位。
23.分支程序结构有两种形式,第一种为__________,第二种为__________。
24.汇编语言程序设计中每个语句的注释项的开始必须用符号___________。
25.从端口地址3AH输入一个16位数据,其指令是____________。
26.设(SP)=001EH,执行段内返回指令RET后(SP)=_____________。
三、简答题(本大题共4小题,每小题2分,共8分)27.假设某数据段的段名为DA TA,段内有一变量BUF,请分别用MOV指令写出与下述二条语句等效的语句。
(1)MOV AX,DA TA(2)LEA BX,BUF28.设MY_DATA为数据段段名(1)MY_DATA应送到哪个段寄存器中?(2)MY_DATA送到相应的寄存器中去,用什么指令?29.某数据段中有语句DB ′AB′,0,0,′CD′,0,0;请分别用DW和DD伪指令改写它。
30.请写出下列指令中存贮器操作数的物理地址表达式。
①MOV AX,20H[BX][SI]②ADD CS:[DI],26H四、程序分析题(本大题共6小题,每小题6分,共36分)331.已知BX=5E5CH,CX=8303H,CF=1ROR BX,CLXOR BH,CHROL BX,CL程序段执行后,BX= ,CF= 。
32.MOV AL,01HROR AL,1OR AL,ALNEG AL上述程序段执行后AL= ,CF 。
33.MOV AL,0FHXOR AL,0FFHMOV CL,7SHR AL,CL(1)上述程序段执行后AL= ;(2)若将指令SHR换成ROR指令后,那么执行后AL= 。
34.DA_WORD EQU WORD PTR DA_BYTEDA_BYTE DB OABH,89H···SHR DA_WORD,1MOV DX,DA_WORDSHL DA_BYTE,lMOV CX,DA_WORD上述指令序列执行后,CX= ,DX= 。
35.设A、B均为长度为10的字节数组,DS、ES已指向同一组数据段A DB 1,2,3,4,5,6,7,8,9,0AHB DB 0AH,9,8,7,6,5,4,3,2,1·4··LEA SI,ALEA DI,BMOV CX,10CLDLOP:LODSBXCHG AL,[DI]XCHG SI,DIDEC DISTOSBXCHG SI,DIINC DILOOP LOP上述程序段执行后,(1)程序段完成什么功能?(2)A和B两个字节数组的内容是什么? 36.已知AL的值为0—F中一位十六进制数HECA PROC FARCMP AL,10JC KKADD AL,7KK:ADD AL,30HMOV DL,ALMOV AH,2INT 21HRETHECA ENDP请回答:(1)该子程序完成什么功能?5(2)如调用子程序时,AL=3,程序执行后,DL= ;(3)如调用子程序时,AL=0FH,程序执行后,DL= 。
五、程序填空题(本大题共2小题,每小题6分,共12分)请在每小题的空格中填上正确的答案。
错填、不填均无分。
37.下列程序段实现将数据区ABUFl首址开始的100个字节数据传送到ABUF2为首址的数据区去。
CLDMOV SI,OFFSET ABUFl______________________________①MOV CX,100____________________________________②38.下面程序段是在DAI开始的10个字节中依次存入数据‘9’,‘8’,……‘1’,‘0’,在横线处填入指令。
MOV CX,10___________________________①MOV AL,′9′CLDLOP:STOSB__________________________②LOOP LOP六、编写程序题(本大题共2小题,第39小题6分,第40小题12分,共l8分)39.限用2条指令把AX中第4到10位都变反,第0—3位,第11到15位都置1。
40.设有一字符串存放在以STRING为首址的数据区中,其最后一个字符′.′(其中ASCⅡ码为2EH)作为结束标志,编程序,计算该字符串的长度送LEN字节单元。
又知被操作的字符串为′IBM PC 8088CPU.′。
6。