汇编语言习题册,有答案已经收编 .pdf
1 汇编语言习题册(汇编语言课程设计组编制)汇编语言程序设计习题一填空题1 汇编语言是一种_,它用 _来表示操作码,用或来表示操作数或操作数地址,它与_是一一对应的。2 计算机中的指令由_和_两部分组成。3 指出下列指令源操作数的寻址方式: MOV AX, ARRAYFSI _ MOV AX, ES:BX _ MOV AX, 200H _ MOV AX, BX+DI _ MOV AX, BX _ MOV AX, 1200H _ MOV AX, 20BX+SI _ MOV AX, DI+20 _ 4. 现有( DS )=2000H, (BX )=0100H, (SI)=0002H, (20100)=12H, (20101)=34,(20102)=56H , (20103)=78H, (21200)=2AH , (21201)=4CH , (21202)=B7H ,I(21203)=65H,下列指令执行后填入AX寄存器的内容:MOV AX ,1200H ;(AX )=_ MOV AX, BX ;(AX )=_ MOV AX ,1200H ;(AX )=_ MOV AX, BX ;(AX )=_ MOV AX ,1100BX ;(AX )=_ MOV AX ,BXSI ;(AX )=_ MOV AX ,1100BXSI ;(AX )=_ 5. 条件码中最主要的是_、_、_、_。6对于乘法、除法指令,其目的操作数存放在_或_中,而其源操作数可以用除_以外的任一寻址方式。7当指令“ SUB AX,BX ”执行后, CF=1 ,说明最高有效位_;对 _数,说明操作结果溢出。8指令 SAR可用来 _除 2,而指令SHR则可用来 _除 2。9假设( DS )=B000H , (BX )=080AH , (0B080AH )=05AEH , ( 0B080CH )=4000H,执行指令名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 33 页 - - - - - - - - - 2 “LES DI ,BX ”后, (DI)=_, (ES )=_。10对于指令XCHG BX ,BP+SI ,如果指令执行前, (BX )=6F30H , (BP )=0200H, (SI)=0046H, (SS )=2F00H , (2F246H )=4154H,则执行指令后, (BX )=_, (2F246H)=_。11. 假设( DS )=2000H, (BX ) =21256H, (SI) =528FH ;位移量TABLE=20A1H , (232F7H)=3280H, (264E5H )=2450H,则执行指令 JMP BXSI后, (IP)=_;执行指令 JMP TABLEBX后, (IP)=_;执行指令 JMP BX后, (IP)=_。12在 1000H单元中有一条二字节指令JMP SHORT LAB , 如果其中偏移量分别为30H、6CH 、0B8H ,则转向地址LAB的值分别为 _、_、_。13数据段中有以下定义: ARRAY1 EQU 16H ARRAY2 DW 16H 请指出下面两条指令的寻址方式: MOV AX,ARRAY1 ;寻址方式:_ MOV AX,ARRAY2 ;寻址地址:_ 14下面两个语句的区别在于_、_。X1 EQU 1000H X2=1000H 15指令“ AND AX,STR1 AND STR2 ”中, STR1和 STR2是两个已赋值的变量,两个AND的区别是 _、_。16条件转移指令的目标地址应在本条件转移指令的下一条指令地址的_个字节范围内。17指令 LOOPZ/LOOPE 是结果 _或_发生转移的指令。而指令LOOPNZ/LOOPNE则是结果或发生转移的指令。18调用指令CALL可分为 _、 _、_和 _等四种调用。19换码指令XLAT完成的操作是 _。它经常用于把一种代码转换为另一种代码。如果执行此操作,应首先建立一个字节表格,但表格的长度不能超过_。20下面两条指令执行后,(AH )=_。 ( AL)=_: MOV AH,10H MOV AL,10 21在汇编语言中,一个过程有NEAR和 FAR 两种属性。 NEAR属性表明主程序和子程序_,FAR属性表示主程序和子程序_。22 如果 TABLE为数据段中0032 单元的符号名, 其中存放的内容为1234H, 执行指令“MOV AX ,TABLE ”后,(AX ) =_;而执行指令“LEA AX,TABLE ”后,则( AX )=_。23串处理指令规定源寄存器使用_,源串在 _段中;目的寄存器使用_,目的串必须在_段中。24近过程( NEAR )的 RET指令把当前栈顶的一个字弹出到_;远过程( FAR )的 RET指令弹出一个字到_后又弹出一个字到_;IRET 指令是 _指令,它从堆栈顺序弹出名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 33 页 - - - - - - - - - 3 三个字分别送到_、_和_中。25_过程定义结束伪指令,与_配套使用。 _或是段定义结束伪指令,与_配套使用;或是结构定义结束伪指令,与_配套使用。 _是宏定义结束伪指令,与_配套使用。 _是一个宏模块汇编结束伪指令。26对于指令: MOV BX, ( PORT_VAL LT5 )AND 20)OR ( ( PORT_VAL GE 5 )AND 30)当 PORT_VAL5 时,汇编结果为:MOV BX ,_;否则,汇编结果为:MOV BX ,_。27宏定义中允许使用宏调用,其限制条件是_。28宏的使用要经过三个步骤为_、 _和_。29从外设发出中断请求到CPU响应中断,有两个控制条件是起决定作用的,它们是_和_。这两个条件分别由_和_控制。30一个有 16 个字的数据区,它的起始地址为70A0:DDF6 ,那么该数据区的最后一个字单元的物理地址为_H。31COM 文件只有一个段并限制在64KB之内, COM 程序的堆栈是由_自动产生的,数据定义在 _段内。 COM 程序总是从偏移地址_开始执行。32子程序又称为_,由伪操作 _定义,由 _结束,属性可以是_或_。33在标准子程序中,它所使用的工作寄存器一般要存入_保存,在返回调用程序之前,再 _它们的内容。34填入正确的过程属性。 CODE1 SEGMENT , SUB PROC _ , RET SUB ENDP , CALL SUB , CODE1 ENDS , CODE2 SEGMENT , CALL SUB ,名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 33 页 - - - - - - - - - 4 CODE2 ENDS 35宏定义体包括实现子功能的指令和伪操作,如果宏定义体中有一个或多个标号,则必须用 _伪操作列出所有的标号。36令( AL)=98H, ( BL)=12H,则执行指令MUL BL后, (AX )=_, ( OF )=_,(CF)=_;而执行指令MUL BL 后,它的结果是(AX )=_, (OF )=_, (CF)=_。37执行下列指令序列后,完成的功能是将(DX ,AX )的值 _ MOV CL,04 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL ,BL MOV BL,DL SHR DX,CL SHR BL,CL OR AH ,BL 或者采用下面的方法,将(DX ,AX )向右移四位。 MOV CX,04 NEXT : SHR DX , 1 RCR AX, 1 LOOP NEXT 38对于下面的数据定义: A1 DW 20 DUP(?) A2 DW 20 DUP(?) A3 DW 987654321, MOV AX,LENGTH A1 MOV BX,LENGTH A2 MOV CX,LENGTH A3 各条指令执行后, 相应寄存器的内容为: (AX ) =_, (BX ) =_, (CX ) =_。39对于下面的数据定义,各条MOV 指令单独执行后,请填充有关寄存器的内容。 TABLE1 DB ? TABLE2 DW 20 DUP(?) TABLE3 DB ABCD , MOV AX,TYPE TABLE1 (AX )=_ MOV BX,TYPE TABLE2 (BX )=_ MOV CX,LENGTH TABLE2 (CX )=_ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 33 页 - - - - - - - - - 5 MOV DX,SIZE TABLE2 (DX )=_ MOV SI,LENGTH TABLE3 (SI)=_ 40某程序的数据段定义如下,请填写完整。 DATA SEGMENT TAB DB MICROSOFT DB MS-DOS 6.22 DW 1234 DB IBM PS/2 TABLEN EQU_ ;数据长度 DATA ENDS 41程序段如下: DATA SEGMENT ORG 2000H TWO=2 NUM DB 3,4 WORDS DW 1011H,2022H CHAR1 DB 2 DUP (?) TEN EQU 10 CHAR2 DB 5 DATA ENDS CODE SEGMENT ASSUME CS: CODE ,DS :DATA MAIN PROC FAR START:PUSH DS XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX MOV AL,TWO MOV WORK, AL TWO=TWO-1 ADD AL,TWO MOV WORK+1,AL RET MAIN ENDP CODE ENDS END START 程序执行后, 内存单元DS : 2000HDS : 200AH的值分别是 _、 _、 _、 _、_、_、_、_、_、 _、_,TWO 的值为 _。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 33 页 - - - - - - - - - 6 42下列程序段运行后,A单元的内容为_。 DATA SEGMENT A DW 0 B DW 0 C DW 230,20,54 DATA ENDS CODE SEGMENT ASSUME CS: CODE ,DS :DATA START PROC FAR PUSH DS XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX MOV BX,OFFSET C MOV AX,BX MOV B,AX MOV AX,2BX ADD AX,B MOV A,AX RET START ENDP CODE ENDS END START 43分析以下程序段: ADD AX,BX JNO L1 JNC L2 SUB AX,BX JNC L3 JNO L4 JMP SHORT L5 如果 AX和 BX的内容给定如下: AX BX 147B 80DC B568 54B7 42C8 608D D023 9FD0 94B7 B568 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 33 页 - - - - - - - - - 7 该程序执行后,程序转向_、_、_、 _、_。44设( SS )=0FFA0H , (SP )=00B0H, (AX )=8057H, (BX )=0F79H,执行指令“ PUSH AX ”后, (SP )=_;再执行指令 PUSH BX POP AX 后, (SP )=_, (AX )=_, (BX )=_。45阅读下面的程序段。堆栈段分配了_个 ABCD 结构的空间,堆栈长度为_个字。如果程序中没有再设置SS 、SP ,那么经过汇编、连接后,( SP )=_。 ABCD STRUC DLD_BP DW ? RET_IP DW ? RET_CS DW ? PAR_2 DW ? PAR_1 DW ? ABCD ENDS S_SEG SEGMENT STACK ABCD 10 DUP ( ) S_SEG ENDS 46阅读下列程序: DS_SEG SEGMENT COUNT DB 4 BLK1 DB 96H,74H,32H,16H BLK2 DB 65H,94H,87H,29H BLK3 DB 4 DUP (?) DS_SEG ENDS CS_SEG SEGMENT MAIN PROC FAR ASSUME CS:CS_SEG ,DS :DS_SEG START: PUSH DS SUB AX,AX PUSH AX MOV AX,DS_SEG MOV DS,AX MOV SI,OFFSET BLK1 MOV DI,OFFSET BLK2 MOV BX,OFFSET BLK3 MOV CL,COUNT MOV CH,0 CLC 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 33 页 - - - - - - - - - 8 NEXT:MOV AL ,SI INC SI ADS AL,DI INC DI DAA MOV BX,AL INC BX LOOP NEXT RET MAIN ENDP CS_SEG ENDS END START 该程序执行后,请填入BLK3的偏移地址和其中各字节单元的内容。_ _ BLK3 _ _ 以及 _ _ 47在下列程序的括号中分别填入如下指令:(1) LOOP L20 (2) LOOPE L20 (3) LOOPNE L20 TITLE EXLOOP.COM CODE SEGMENT ASSUME CS :CODE ,SS :CODE ORG 100H BEGIN :MOV AX ,01 MOV BX,02 MOV DX,03 MOV CX,04 L20: INC AX ADD BX,AX SHR DX,1 () RET CODE ENDS END BEGIN 在上述三种情况下, 程序执行完后, (AX) =_、 (BX ) =_、 (CX ) =_、 (DX )_ _ _ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 33 页 - - - - - - - - - 9 =_。48已知下列程序段: DATA SEGMENT DB1 DB 12H,34H,0,56H DW1 DW 78H ,90H,0AB46H ,1234H ADR1 DW DB1 ADR2 DW DW1 BUF DB 5 DUP(0) DATA ENDS CODE SEGMENT ASSUME CS:CODE ,DS :DATA MAIN PROC FAR START :PUSH DS XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX XOR CX,CX MOV CL,3 ADD ADR1,CX SUB ADR2,CX MOV BX,ADR1 MOV DI,BX MOV SI,ADR2 MOV AL,DB1BX MOV BUFDI,AL MOV AX,DW1BXSI MOV WORD PTR BUF,AX RET MAIN ENDP CODE ENDS END START 程序执行后,填入BUF的偏移地址和其中各字节单元的内容。偏移地址内 容? _ ? _ ? _ ? _ ? _ 49.在以 DS:5OC1为? _ ? _ ? _ ? _ ? _ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 33 页 - - - - - - - - - 10 起始地址的表中存有字符串, 它以 NULL(00H)作串结束符 ,在 DS:CHAR 中存有关键字。 从上述表中查找第一个此关键字的程序段如下。若找到此关键字,寄存器 CX中存放该关键字在ES段中的位移量;若串中无此关键字,CX返回 -1 值。请将该程序段的空格补充完整。 MOV DI, OFFSET SOC1 MOV CX, 0 CPO: CMP ES: _,00H JNE COUNT MOV BX, CX MOV DI, OFFSET CHAR MOV AL, DI MOV DI, OFFSET SOC1 CLD _SCASB JZ FOUND MOV CX, _ RET FOUND :_DI MOV CX, DI RET COUNT :INC DI INC CX JMP CPO 50 (AL)=9AH , (BL) =0BCH ,当分别进行下列指令运算后,请写出标志位的内容:? ADD AL,BL ;ZF=_,PF=_, CF=_ ,SF=_,OF=_ 。? SUB AL,BL ;ZF=_,PF=_, CF=_ ,SF=_,OF=_ 。? AND AL,BL ;ZF=_,PF=_, CF=_ ,SF=_,OF=_ 。? OR AL,BL ;ZF=_,PF=_, CF=_ ,SF=_,OF=_ 。? XOR AL,BL ;ZF=_,PF=_, CF=_ ,SF=_,OF=_ 。51假设 X和 X+2单元的内容为双精度P,Y和 Y+2单元的内容为双精度数Q (X,Y为低位数) ,下列程序段使2PQ时, (AX )=1;2P Q时, (AX ) =2,请把程序填写完整。 MOV DX,X+2 MOV AX,X ADD AX,X ADC DX,X+2 CMP DX,Y+2 _L2 _L1 CMP AX,Y _L2 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 33 页 - - - - - - - - - 11 L1: MOV AX,1 JMP EXIT L2: MOV AX,2 EXIT:INT 20H 52阅读下面的程序。在_的情况下 , 本段程序的执行结果是(AX )=0;在 _的情况下,其结果为(AH ) =0FFH 。 IN AL, 20H TEST AL,80H JZ A MOV AH, 0 JMP B A: MOV AH, OFFH B: HLT 53已知程序如下: DATA SEGMENT (假定 DS=00BFH ) ORG 1000H BLOCK DB 48H,8DH RESUL DB ? DATA ENDS STACK SEGMENT PARA STACK STACK DB 64 DUP (?) STACK ENDS CODE SEGMENT ASSUME CS:CODE ,SS:STACK ,DS :DATA START PROC 0000H BEGIN:MOV AX ,DATA 0003H MOV DS,AX 0005H MOV SP,4000H 0008H LEA BX,BLOCK 000CH MOV AL,BX 000EH SUB AL,BX+1 0011H PUSH AX 0012H PUSHF 0013H CALL SUB1 0016H POPF 0017H POP AX 0018H MOV BX+2,AL 001BH HLT START ENDP 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 33 页 - - - - - - - - - 12 001CH SUB1 PRO 001CH ADD AL,AL 001EH RET SUB1 ENDP CODE ENDS END BEGIN 程序运行后,请输入数据段、堆栈段的数据存放情况:(1) 数据段数据存放情况:偏移地址内 容_ _ _ (2) 堆栈段数据存放情况:偏移地址内 容_ _ _ _ _ _ _ (3) 最后标志位为_。54下列程序段是比较AX ,BX ,CX中带符号数的大小,将最大的数放在AX中。请将程序填充完整。 CMP AX,BX _NEXT XCHG AX,BX NEXT :_AX,CX JGE OUT _AX,CX OUT :,55以下程序实现的功能,结果存放在中。 STRAT:IN AL ,20H MOV BL,AL INT AL,30H MOV CL,AL MOV AX,0 NEXT:ADD AL ,BL _ _ _ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 33 页 - - - - - - - - - 13 ADC AH,0 DEC CL JNZ NEXT HLT 56下面程序是查找STRING中是否有“ A”这个字符,如果有则转向YES去执行;没有则转向 NO去执行。请将程序填充完整: MOV CX,20 ;假设 STRING的长度为 20 MOV BX,-1 MOV AL, ANEXT :_BX CMP AL,STRINGBX _NEXT JNZ_ YES : , JMP_ NO :,EXIT:RET 57当执行下列指令后, (AL)=_, (DX )=_。 STR1 LABEL WORD STR2 DB 12H DB 34H , MOV AL,STR2 MOV DX,STR1 58在数据段定义有一变量如下: DATA SEGMENT ARRAY DW 2,$+2,5,7,$+6,0DH DATA ENDS 填入数据段ARRAY 区存储单元的内容。偏移地址内 容偏移地址内 容(1)_ (7) _ (2)_ (8) _ (3)_ (9) _ (4)_ (10)_ (5)_ (11)_ (6)_ (12)_ 59执行下列指令: TA BLE DW 10,20,30,40,50 _ _ _ _ _ _ _ _ _ _ _ _ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 33 页 - - - - - - - - - 14 EN TRY DW 3 , MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,BX 寄存器( AX )=_。60以下程序段的作用是_ 。 STR1 DB 300 DUP(?) STR2 DB 100 DUP(?), MOV CX,100 MOV BX,200 MOV SI,0 NEXT :MOV AL ,STR1BXSI MOV STR2DI,AL LNC SI LNC DI LOOP NEXT 61下面程序的功能是:数组A包含 15 个互不相等的整数,数组B包含 20 个互不相等的整数,将既在数组A中又在数组B中出现的整数存放在数组C中。请将程序填充完整。 DATA SEGMENT A DB 15 DUP(?) B DB 20 DUP(?) C DB 15 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE , DS :DATA MAIN PROC FAR START: PUSH DS XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX MOV ES,AX BEGIN: MOV SI,0 MOV BX,0 MOV CX,15 NEXT1: PUSH CX MOV DI,0 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 33 页 - - - - - - - - - 15 MOV CX,20 MOV AX,_ NEXT2: CMP BDI ,AX JNE _ MOV CBX,AX ADD BX,2 ABCD: ADD DI ,2 LOOP _ ADD SI,2 _CX LOOP NEXT1 RET MAIN ENDP CODE ENDS END START 62已知程序如下,假设本程序的(CS)=10C9H DATA SEGMENT ORG 0008H BLOCK DB 54H,9CH CHA DB ? DATA ENDS STACK SEGMENT PARA STACK STACK DB 100 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE , SS :STACK ,DS :DATA START PROC FAR 0000H BEGIN :MOV AX ,DATA 0003H MOV DS,AX 0005H MOV ES,AX 0007H MOV SP,2000H 000AH XOR AX,AX 000CH LEA BX,BLOCK 0010H MOV AL,BX ;有中断发生 0012H SUB AL,BX+1 0015H PUSH AX 0016H PUSHF 0017H CALL SUB1 001AH POPF 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 33 页 - - - - - - - - - 16 0018H POP AX 001CH MOV BX+2,AL 001FH MOV AH,4CH 0021H INT 21H START ENDP SUB1 PROC 0023H ADD AL,AL 0025H RET SUB1 ENDP CODE ENDS END BEGIN 中断处理程序: ZHD: PUSH AX PUSH BX MOV AL, 10H OUT 20H,AL POP BX POP AX IRET 程序执行后,请填入正确内容:(1) 据段数据存放情况:偏移地址内 容_ _ _ (2) 堆栈段操作的情况:偏移地址内 容_ _ _ _ _ _ _ _ _ _ 11_ (3)最后标志位的状态:_。_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 33 页 - - - - - - - - - 17 63如果数据段中有一个如图所示的字节型表TAB ,并且有一个名为DISP的字节型内存变量区,请阅读如下指令,它完成_的功能。 MOV CX,4 MOV BX,OFFSET TAB TAB +0 MOV DI,OFFSET DISP +1 HT: SHL ,DX,1 . RCL AL, 1 . SHL DX, 1 . RCL AL, 1 +9 SHL DX, 1 +0A RCL AL, 1 +0B SHL DX, 1 +OC RCL AL, 1 +OD AND AL, 0FH +OE XLAT TAB +0F MOV DI,AL INC DI LOOP HT 二选择题1. 一般地,我们将计算机指令的集合称为_。A. 机器语言 B.汇编语言C. 模拟语言 D.仿真语言2. 计算机系统软件中的汇编程序是一种_。 A.汇编语言程序 B.编辑程序 C.翻译程序 D.将高级语言程序转换成汇编语言程序的程序3. 汇编语言源程序经汇编后不能直接生成_ A.OBJ文件 B.LST文件 C.EXE文件 D.CRF文件4. 寄存器间接寻址方式中, 操作数在 _中 A.通用寄存器 B.堆栈 C.主存单元 D.段寄存器5. 运算型指令的寻址和转移型指令的寻址,其不同点在于 _ A. 前者取操作数 , 后者决定程序的转移地址B. 后者取操作数 , 前者决定程序的转移地址C. 两者都是取操作数D. 两者都是决定程序的转移地址6. 直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为_ A直接、立即、间接 B.直接、间接、立即 C立即、直接、间接 D.不一定30H 31H ,39H 41H 42H 43H 44H 45H 46H 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 33 页 - - - - - - - - - 18 7MOV AX ,ES : BXSI的源操作数的物理地址是_ A16dx( DS )+(BX )+(SI) B.16dx(ES )+(BX )+(SI) C16dx( SS )+(BX )+(SI) D.16dx(CS )+(BX )+(SI)8JMP WORD PTR DI是_ A段内间接转移 B段间间接转移 C. 段内直接转移 D. 段间直接转移9. JMP FAR PTRA ABCD (ABCD是符号地址 ) 是 _ A段内间接转移 B段间间接转移 C. 段内直接转移 D. 段间直接转移10. INC指令不影响 _标志 A. OF B.CF C. SF D.ZF 11. 条件转移指令JNE的测试条件是 _ A. ZF=1 B. CF=0 C. ZF=0 D. CF=1 12. 逻辑位移指令SHL用于 _ A. 带符号数乘2 B. 带符号数除2 C. 无符号数乘2 D. 无符号数除2 而算术位移指令SAL用于 _ A. 带符号数乘2 B. 带符号数除2 C. 无符号数乘2 D. 无符号数除2 13. “ 先工作后判断 ” 的循环程序结构中, 循环体执行的次数最少是_次 A. 1 B.0 C. 2 D.不定14. “ 先判断后工作 ” 的循环程序结构中, 循环体执行的次数最少是_次 A. 1 B. 0 C. 2 D.不定15. 下列指令中 , 有语法错误的是_ A. MOV SI,DI B. IN AL,DX C. JMP WORD PTR BX+8 D.PUSH WORD PTR 20BX+SI-2 16. 在一段汇编程序中多次调用另一段程序, 用宏指令比用子程序实现_ A. 占内存空间小 , 但速度慢 B. 占内存空间大, 但速度快 C. 占内存空间相同, 速度快 D. 占内存空间相同, 速度慢17在汇编语言程序设计中,若调用不在本模块中的过程,则对该过程必须用伪操作命令 _说明。 APUBLIC B. COMMON C. EXTERN D. ASSUME 18. 在 MOV WORD PTR 0074H, 55BBH指令的机器代码中,最后一个字节是_. A. 00H B. 74H 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 33 页 - - - - - - - - - 19 C. 55H D. BBH 19. 假定 (SS):2000H,(SP)=0100H,(AX)=2107H,执行命令 ,PUSH AX后,存放数据21H的物理地址是 _. A. 20102H B.20101H C. 200FEH D.200FFH 20. 执行下列命令后: MOV AX,1234H MOV CL,4 ROL AX,CL DEC AX MOV CX,4 MUL CX HLT 寄存器 AH的值是 _, 寄存器 AL 的值是 _. 1) A.92H B.8CH C.8DH D.00H 2) A.60H B.00H C.04H D.0AH 21.执行下列指令后:STR1 DW ,AB ?STR2 DB 16 DUP(?) CNT EQU $-STR1 MOV CX,CNT MOV AX,STR1 HLT 寄存器 CL的值是 _, 寄存器 AX的值是 _. 1) A.10H B.12H C.0EH D.0FH 2) A.00ABH B.00BAH C.4142H D.4241H 22通常情况下,一个外中断服务程序的第一条指令是STI,其目的是 _. A.开放所有屏蔽中断. B.允许低一级中断产生. C.允许高一级中断产生. D.允许同一级中断产生. 23PC机采用向量的中断方式处理8 级外中断,中断号依次为08H-0FH,在 RAM 0 : 2CH 单元开始依次存放23H ,FFH ,00H和 F0H四个字节,该向量对应的中断号和中断程序入口是_ A. OCH,23FF:00F0H B. OBH,F000:FF23H C. 0BH,00F0:23FFH D. OCH,F000:FF23H 24. 执行返回指令 , 退出中断服务程序, 这时返回地址来自_. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 33 页 - - - - - - - - - 20 A. ROM区 B. 程序计数器C. 堆栈区 D. CPU的暂时寄存器25. 执行下列程序 : MOV AX,0 MOV BX,1 A: ADD AX,BX INC BX LOOP A HLT 执行后的结果为(BX)=_ _,(AX)=_ _. A. 99 B. 100 C. 101 D. 102 A. 5000 B. 5050 C. 5100 D. 5150 26. 下面的程序是10个 8 位的无符号数按递减次序排序。请选择正确的答案将程序填充完整。 DATA SEGMENT ARRAY DB 05H,78H,FFH , 7BH , 00H DB 8CH,20H,A0H , FOH , 60H DATA ENDS CODE SEGMENT ASSUME CS:CODE , DS :DATA MAIN PROC FAR START :PUSH DS XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX AB1: MOV SI,OFFSET ARRAY MOV BL,0 MOV CX,0 _ AGAIN :MOV AL ,SI INC SI CMP AL,SI _CD1 MOV AH,SI MOV SI,AL DEC SI MOV SI,AH 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 33 页 - - - - - - - - - 21 INC SI MOV BL,1 CD1: LOOP AGAIN DEC BL _AB1 RET MAIN ENDP CODE ENDS END START A. INC BL B. INC SI C. DEC CX D. INC CX A. JC B.JNC C. JE D. JA A. JC B. JNE C. JZ D. JP 27对于下列程序段: AGAIN:MOV AL , SI MOV ES: D