汇编语言习题册,有答案已经收编 .pdf
《汇编语言习题册,有答案已经收编 .pdf》由会员分享,可在线阅读,更多相关《汇编语言习题册,有答案已经收编 .pdf(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、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
2、)=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对于乘法
3、、除法指令,其目的操作数存放在_或_中,而其源操作数可以用除_以外的任一寻址方式。7当指令“ SUB AX,BX ”执行后, CF=1 ,说明最高有效位_;对 _数,说明操作结果溢出。8指令 SAR可用来 _除 2,而指令SHR则可用来 _除 2。9假设( DS )=B000H , (BX )=080AH , (0B080AH )=05AEH , ( 0B080CH )=4000H,执行指令名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 33 页 - - - - - -
4、- - - 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 TA
5、BLEBX后, (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是
6、两个已赋值的变量,两个AND的区别是 _、_。16条件转移指令的目标地址应在本条件转移指令的下一条指令地址的_个字节范围内。17指令 LOOPZ/LOOPE 是结果 _或_发生转移的指令。而指令LOOPNZ/LOOPNE则是结果或发生转移的指令。18调用指令CALL可分为 _、 _、_和 _等四种调用。19换码指令XLAT完成的操作是 _。它经常用于把一种代码转换为另一种代码。如果执行此操作,应首先建立一个字节表格,但表格的长度不能超过_。20下面两条指令执行后,(AH )=_。 ( AL)=_: MOV AH,10H MOV AL,10 21在汇编语言中,一个过程有NEAR和 FAR 两种属
7、性。 NEAR属性表明主程序和子程序_,FAR属性表示主程序和子程序_。22 如果 TABLE为数据段中0032 单元的符号名, 其中存放的内容为1234H, 执行指令“MOV AX ,TABLE ”后,(AX ) =_;而执行指令“LEA AX,TABLE ”后,则( AX )=_。23串处理指令规定源寄存器使用_,源串在 _段中;目的寄存器使用_,目的串必须在_段中。24近过程( NEAR )的 RET指令把当前栈顶的一个字弹出到_;远过程( FAR )的 RET指令弹出一个字到_后又弹出一个字到_;IRET 指令是 _指令,它从堆栈顺序弹出名师资料总结 - - -精品资料欢迎下载 - -
8、 - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 33 页 - - - - - - - - - 3 三个字分别送到_、_和_中。25_过程定义结束伪指令,与_配套使用。 _或是段定义结束伪指令,与_配套使用;或是结构定义结束伪指令,与_配套使用。 _是宏定义结束伪指令,与_配套使用。 _是一个宏模块汇编结束伪指令。26对于指令: MOV BX, ( PORT_VAL LT5 )AND 20)OR ( ( PORT_VAL GE 5 )AND 30)当 PORT_VAL5 时,汇编结果为:MOV BX ,_;否则,汇编结果
9、为:MOV BX ,_。27宏定义中允许使用宏调用,其限制条件是_。28宏的使用要经过三个步骤为_、 _和_。29从外设发出中断请求到CPU响应中断,有两个控制条件是起决定作用的,它们是_和_。这两个条件分别由_和_控制。30一个有 16 个字的数据区,它的起始地址为70A0:DDF6 ,那么该数据区的最后一个字单元的物理地址为_H。31COM 文件只有一个段并限制在64KB之内, COM 程序的堆栈是由_自动产生的,数据定义在 _段内。 COM 程序总是从偏移地址_开始执行。32子程序又称为_,由伪操作 _定义,由 _结束,属性可以是_或_。33在标准子程序中,它所使用的工作寄存器一般要存入
10、_保存,在返回调用程序之前,再 _它们的内容。34填入正确的过程属性。 CODE1 SEGMENT , SUB PROC _ , RET SUB ENDP , CALL SUB , CODE1 ENDS , CODE2 SEGMENT , CALL SUB ,名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 33 页 - - - - - - - - - 4 CODE2 ENDS 35宏定义体包括实现子功能的指令和伪操作,如果宏定义体中有一个或多个标号,则必须用 _伪操作列出
11、所有的标号。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
12、 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 )=_ MO
13、V 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
14、 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
15、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,5
16、4 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的内容给定如
17、下: 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 后, (
18、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 65
19、H,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 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名
20、师精心整理 - - - - - - - 第 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 SEGME
21、NT 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 页 - - - -
22、 - - - - - 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,AD
23、R1 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 页
24、- - - - - - - - - 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 M
25、OV 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
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言习题册 有答案已经收编 2022 汇编语言 习题 答案 已经 收编
限制150内