1、浙江广播电视大学春季学期期末复习浙江广播电视大学2006年春季学期期末复习汇编语言程序设计第一部分:复习要点第1章 汇编语言基础知识了解微机及PC机系统的基本软硬件组成、熟悉汇编语言的概念和应用特点、复习掌握数据表达 第2章 数据的表示方法和运算掌握数制、二进制数据的组织和运算掌握符号数和非符号数的表示以及符号扩展与零扩展掌握字符的表示第3章8086/8088微型计算机系统组成掌握微机系统的组成掌握8086/8088CPU功能结构掌握8086/8088CPU内存组织、逻辑地址和物理地址的计算第4章 8086指令系统掌握8086的寄存器组和存储器组织,掌握8086的寻址方式,熟悉8086的基本参
2、数、堆栈工作原理、指令对标志的影响、符号扩展的含义、压缩和非压缩BCD的格式,串操作寻址特点。掌握基本指令:MOVXCHGXLAT、PUSHPOP、LEA;CLCSTCSTC、CLDSTD;ADDADCINC、SUBSBBDECCMPNEG、CBWCWD;ANDORXORNOTTEST、SHLSHRSAR、ROLRORRCLRCR;REP、MOVSLODSSTOS;JMPJCC、JCXZLOOP、CALLRET、INT n 熟悉特色指令:INOUT ;CLISTI;MULIMUL、DIVIDIV、DAADAS、AAAAAS;CMPSSCAS;IRET;NOP 了解不常使用的指令:LAHFSAH
3、FPUSHFPOPF、LDSLES;AAMAAD;REPZREPNZ;LOOPZLOOPNZ;INTO;LOCKHLTESCWAIT掌握DOS、了解ROM-BIOS的字符字符串输入输出功能调用方法 掌握DEBUG调试程序的使用及调试指令和程序段的方法第5章 汇编语言程序格式与程序调试掌握汇编语言语句格式,掌握简化段定义(或完整段定义)源程序格式,掌握常量表达、变量定义及应用,变量、标号和逻辑段的属性 。了解数值表达式、复杂数据结构和DOS的程序结构 ;掌握基本伪指令和操作符:EQU;*;DBDWDD、?DUP;ORG$、OFFSETSEGPTR;.MODEL.STACK.DATA.CODEEN
4、D、SEGMENTENDS 。了解不常使用伪指令和操作符:.RADIX;逻辑、移位和关系运算符;DFDQDT;EVENALIGN;THISSHORTTYPESIZEOFLENGTHOF;ASSUMEGROUP、.SEG.DOSSEG.ALPHA; 掌握汇编语言源程序的编辑、汇编、连接和调试的开发方法掌握伪指令:PROCENDP、MACROENDM、LOCAL;INCLUDEPUBLICEXTERN了解伪指令:REPEATFORFORC、IFxx;第6,7,8,9章顺序结构、分支结构、循环结构、子程序程序设计掌握基本程序结构顺序结构、分支结构、循环结构、子程序和宏及其汇编语言程序设计方法;熟悉常
5、见程序设计问题:多精度运算,查表(查代码、特定值等)、ASCII、BCD及十六进制数据间的代码转换;数据范围判断(09、AZ、az)、字母大小写转换;字符串传送、比较等操作、求最小最大值、数据求和、统计字符个数;子程序的寄存器和共享变量传递参数。第10章 中断掌握中断的基本概念掌握中断的处理过程了解中断控制器8259A了解中断设计第11章 MS-DOS、PC-BIOS系统调用了解系统调用的方法掌握DOS调用和BIOS调用第12章 内存分配与文件操作略第二部分 模拟试卷一、单项选择题1十六进制数88H,可表示成下面几种形式,错误的表示为【C】。A. 无符号十进制数136 B. 带符号十进制数12
6、0 C. 压缩型BCD码十进制数88 D. 8位二进制数8的补码表示2指令指针寄存器是【A】。A. IP B. SP C. BP D.PSW 3当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF1,下面的叙述正确的是【C】。A. 表示结果中含1的个数为偶数B. 表示结果中含1的个数为奇数C. 表示该数为偶数D.表示结果中低八位含1的个数为偶数4完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是【A】。A. MOV AL,00H B. AND AL,00H C. XOR AL,ALD. SUB AL,AL5下列指令执行后总是使CF0,OF0的是【A】。A.
7、AND B. NEG C. NOT D. INC 6完成同指令XCHG AX,BX相同功能的指令或指令序列是【C】。A. MOV AX,BX B. MOV BX,AX C. PUSH AX D. MOV CX,AXPOP BX MOV AX,BXMOV BX,CX 7设AH0,AL06H,BL09H,执行指令ADD AL,BL AAA 之后,其结果应是【A】。A. AH01,AL05 B. AH1 AL15 C. AH0 AL0FH D. AH0 AL05 8设AL0B4H,BL11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为【B】。A. OF1,CF0 B. O
8、F1,CF1 C. OF0,CF0 D. OF0,CF1 9在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是【C】。A. CX0且ZF0B. CX0且ZF1 C. CX0或ZF0 D. CX0或ZF1 10下面指令中,合理而有意义的指令是【C】。A. REP LODSB B. REP SCASB C. REP CMPSB D. REP MOVSB 11在汇编语言程序中,对END语句的叙述正确的是【C】。A. END语句是一可执行语句B. END语句表示程序执行到此结束C. END语句表示源程序到此结束D. END语句在汇编后要产生机器码12下面的数据传送指令中,错误的操作是【C】
9、。A. MOV SS:BX+DI,1000H B. MOV DX,1000H C. MOV WORD PTRBX,1000H D. MOV DS,2000H 13下面指令执行后,变量DAB中的内容是【C】。DAW DW2A05H DAB DB 0FAH : MOV AL,BYTE PRT DAW SUB DAB,AL A. 0DAH B. 0FAH C. 0F5H D. 0D0H 14执行下列指令后,正确的结果是【B】。MOV AL,100 MOV BL,2 A. AL100H B. AL64HBL02H BL0FEH C. AL64H D. AL100HBL82H BL0FEH 15设数据段
10、中已有:DA1 DB 12H,34H DA2 DW 56H,78H 下面有语法错误的语句是【B】。A. ADR1 DW DA1 B. MOV DA11,AX C. MOV BYTE PTR DA21,AL D. MOV WORD PTR DA11,AX 16实现将DX:AX中存放的32位数扩大四倍,正确的程序段是【C】。A. SHL AX,2 ROL DX,2 B. RCL AX,2 SHL DX,2 C. MOV CX,2 LOP:SHL AX,1 RCL DX,1 LOOP LOP D. SHL AX,1 SHL AX,1 RCL DX,1 RCL DX,1 17 DATA SEGMENT
11、 TA1 DW 0102H,0304H,0506H TA2 DB 02H,03H,04H : MOV BX,DS:0006H AND BX,0FFH AND BH,BX 上述指令序列运行后,BX的内容是【B】。A. 0605H B. 0402H C. 0606H D. 0204H 18当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是【C】。A. JLE B. JNL C. JNLED. JL 19下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为【A】。TEST BH,01H K1 A. JNE B. JZ C. JS D. JC 20测试BL寄存器内容
12、是否与数据4FH相等,若相等则转NEXT处执行,可实现的方法是【B】。A. TEST BL,4FH JZ NEXT B. XOR BL,4FHJZ NEXTC. AND BL,4FH JZ NEXT D. OR BL,4FHJZ NEXT1.把若干个模块连接起来成为可执行文件的系统程序是( B) A.汇编程序 B.连接程序 C.机器语言程序 D.源代码程序2.使汇编程序执行某种操作的命令是( C) A.变量 B.指令 C.伪指令 D.宏指令3.串操作指令中,目的操作数的段地址一定在( D)寄存器中 A. CS B. SS C. DS D. ES4.在下列语句中,AGAIN称为( C)AGAIN
13、: INC SI A.符号 B.助记符 C.标号 D.变量5.MOV BH,1000SI,该指令中源操作数采用的寻址方式是( C ) A.立即 B.直接 C.寄存器相对 D.寄存器间接6.OR AL,AL是( D )操作指令。 A.异或 B.加法 C.右移 D.逻辑或7.DOS系统功能调用中,显示单个字符的系统调用号是( B )H。 A. 01H B. 02H C. 08H D. 09H8.使计算机执行某种操作的命令是(B ) A.宏指令 B.指令 C.伪指令 D.语句9.换码指令的助记符是( C ) A. XCHG B. LEAS C. ALXT D. MOV10.计算机能直接识别并执行的语
14、言是( B ) A.汇编语言 B.机器语言 C.高级语言 D.低级语言二、填空1已知 (DS)=091DH , (SS)=1E4AH , (BP)=0024H , (AX)=1234H , (BX)=0024H, (CX)=0078H, (SI)=0012H , (DI)=0032H ,(09226H)=00F6H (09228H)=1E40H ,(1E4F6H)=091DH 。试写出下列语句按顺序执行后有关寄存器和存储单元的结果。MOV CL ,20H BX SI MOV BP DI ,CXLEA BX ,20H BX SI MOV AX ,2 BX MOV SI ,BX (AX) = _
15、(BX) =_ (CX) = _ (1E4F6H)= _ (091E2H)= _ 答:(AX) = _1E40H _ (BX) =0056H_ (CX) = _00F6H_ 1E4F6H)= 00F6H _ (091E2H)= 0056H2已知 DX = 0002 , AX= F365HBX = 0005 , CX= E024H执行指令序列 (1) ADD AX, CX (2) ADC DX, BX1) 执行后,(AX)=H CF= OF= SF= ZF= AF= PF=2) 执行后,(DX)= H 答:CF= OF= SF= ZF= AF= PF=1) 执行后,(AX)= 0D389H CF
16、=1 OF=0 SF=1 ZF=0 AF=0 PF=1 2) 执行后,(DX)= 0008H CF=0 OF=0 SF=0 ZF=0 AF=0 PF=0 3.假设BL=0C5H,CL=2,CF=1,确定下列各条指令独立执行后,BL和CF中的值,并填入括号中。(8分) A. SHR BL,1 ;BL= ( ) CF=( )B. SAR BL,CL ;BL= ( ) CF=( )C. ROR BL,1 ;BL= ( ) CF=( )D. RCL BL,CL ;BL= ( ) CF=( )答:A. 62H, 1 B. 0F1H, 0 C. 0E2H, 1 D. 17H, 1三、综合题1寻址方式答:指
17、令源操作数的寻址方式目的数的寻址方式MOV BX , 1500H立即寻址寄存器寻址MOV 2SI,AX寄存器寻址变址寻址MOV BX , 150H直接寻址寄存器寻址MOV 2BPDI , AX寄存器寻址基址变址寻址MOV BX , DATADI变址寻址寄存器寻址MOV AX , COUTBXSI基址变址寻址寄存器寻址ADD AX ,BX寄存器寻址寄存器寻址MOVSW串寻址2已知 (DS)=2000H , (SS)=1500H , (BP)=1000H , (SI)=0A00H , (DI)=0200H , DATA=0050H , COUNT=0100H 。试求出物理地址的公式和下列指令中源操
18、作数的物理地址。物理地址= 1)MOV AX , SI 物理地址=2)MOV BX ,120H物理地址=3)MOV CX ,DATADI 物理地址=4)MOV AX ,COUNT BP SI 物理地址=解:物理地址=段地址*16d(左移4位)+ 偏移地址1)物理地址 = 2000H*10H +0A00H = 20A00H2)物理地址 = 2000H*10H +120H = 20180H3)物理地址 = 2000H*10H +0050H+0200H = 20250H4)物理地址 = 1500H*10H+ 0100H + 1000H+0A00H = 16B00H3已知:(SP)=40H ,(BX)
19、=1234,(DS)=5678H,如有指令如下: PUSH BX PUSH DS问指令执行后,图中各单元的数据是多少?(SP)=?78563412XXXX78563412XXXX78563412XXXX(SP)=3CH 40H4请指出下列指令错误原因: 1) OR AX,CX 2)ADD SI,BXDI 3) JMP BYTE PTR LOOPS 4)SAR AX,4 5)RCL DX答:1) CX不能作为间接寻址寄存器2) 加法指令不能完成存储单元之间的加法运算 3) 转移指令中,转向标号地址的属性说明错4) 移位指令格式错,当移位次数大于1时,需用CL给出 5) 指令中应指出移位次数5.试
20、根据以下要求,分别写出相应的汇编语言指令。1) 把AX寄存器和BX寄存器的内容相加,结果存入AX中。2) 用BX和SI的基址变址寻址方式,把存储器中的一个字节与DL的内容相加,并把结果送回DL中。3) 把数OBEH与AH内容相加,结果送回AH中。4) 用SI和位移量0200H的寄存器相对寻址方式把存储器中的一个字与AX相加,并把结果送回存储单元中。5) 用位移量0860H的直接寻址方式把存储器中一个字与数2EA0H相加,结果回送存储器中。答: 1) ADD AX,BX 2) ADD DL,BXSI 3) ADD AH,OBEH 4) ADD SI+0200H,AX 5) ADD 0860H,2
21、EA0H 6试分析下面程序段完成什么功能? CON1 DW H CON2 DW H MOV AX,CON1 MOV BX,CON2 CMP AX,BX JGE GREAT LESS解:比较两个16位有符号数,当(CON1)=(CON2)时转GREAT处理,否则转LESS处理。7试分析下面程序段完成什么功能? OR AL,AL JZ L0 CMP AL,1 JZ L1 CMP AL,2 JZ L2 JMP STOP L0: L1: L2: STOP: HLT解: 判断AL中的内容,若AL=0,转L0处理;若AL=1,转L1处理; 若AL=2,转L2处理; 其它转结束(STOP)。8试问下面的程序
22、段完成的功能是什么?程序执行后,AX的内容是什么? XOR AX,AX MOV BX,2 MOV CX,10L: ADD AX,BXADD BX,2LOOP LHLT解: 3.求220之间偶数之和AX=110(或6EH)。9.试分析下面的程序段完成什么功能? MOV CL,04 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL解: 4.把DX、AX中的双字左移四位。四、程序设计题1试编写使AL寄存器中的无符号数乘20的程序段。解: MOV AH,00 MOV BX,AX MOV CL,02 SHL AX,CL MOV DX,AX MOV AX,BX MOV CL,03 SHL AX,CL ADD AX,AX ADD AX,DX2编写程序,统计数据区BUF中3 的个数,并存入RES单元, 数据为: DATA SEGMENT BUF DB 10,5,01,3,2,12,45,3,3,12 RES DB ?DATA ENDS解:程序如下:MOV CX ,10MOV SI ,OFFESET BUFMOV BL,0LOP:MOV AL,SICMP AL,0JNE NEXTINC BLNEXT:INC SILOOP LOPMOV RES ,BL
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1