汇编语言试题及参考答案_第1页
汇编语言试题及参考答案_第2页
汇编语言试题及参考答案_第3页
汇编语言试题及参考答案_第4页
汇编语言试题及参考答案_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、汇编语言试题及参答案一、填空题 1.ZF标志位是标志结果是否为零的,若结果,ZF为( ),否则ZF为( )。当ZF为1时,SF为( ) 2.标号可以有两种类型属性。它们是( )和( ) 3.8位无符号整数的表示范围为0-255,写成16进制形式为( ),8位有符号整数的表示范围为-128-+127,写成16进制形式为( ) 4.伪指令DB,GROUP 和NAME 三个标号名字域必须有名字的是( ),不得有名字的是( ),可有可无名字的是( )。 5.循环程序通常由( )( )( )和循环结果外理四部分构成 6.在数值不达式中,各种运算符可可混合使用,其优先次序规则*,/( )于+,-;XOR,

2、OR( )于AND,LT( )于GT 7. 宏指令定义必须由伪指令( )开始,伪指令( )结束,两者之间的语句称为( ) 8.调用程序与子程序之间的参数传递方法有四种,即堆栈法( )( )( ) 9.分别用一条语句实现下述指明的功能 (1)栈顶内容弹出送字变量AYW( ) (2)双字变量AYD存放的地址指针送ES和SI( ) (3)变量AY2类型属性送AH( ) (4)不允许中断即关中断( ) (5)将字符串HOW ARE YOU!存入变量AYB( ) (6)子程序返回调用程序( ) (7)地址表达式AYY4的偏移地址送字变量ADDR( ) (8)AX的内容加1,要求不影响CF( ) (9)B

3、X的内容加1,要求影响所有标志位( ) (10)若操作结果为零转向短号GOON( ) 二、单选题 1.IBM PC微机中,有符号数是用( )表示的 1原码2补码3反码4BCD码 2.把汇编源程序变成代码程序的过程是( ) 1编译2汇编3编辑4链接 三、己知:VAR1,VAR2的类型属性分别为字和字节,标号LPFAR的类型属性为FAR。指出下列非法语句的错误原因 1.POP CS( ) 2.INC BX ( ) 3.MVL 8( ) 4.JLE LPFAR( ) 5.MOV DB,1800( ) 6.MOVDI,VAR1 7.SUB AX,VAR2( ) 8.CMP SS AX( ) 四、简答题

4、 1.试述子程序的一般结构组成 2.标号有哪三个属性?其含义是什么? 3.试述CMP AX,BX和SUB AX,BX两条语句的异同点? 五、阅读如下程序段,回答所提出的问题,假定X1,X2,.XN为无符号数。 ORG 100H BLOK DW X1,X2,.,XN COUNT EQU ($-BLOK)/2 RESULT DW COUNT,? . LEA BX,BLOK-2 MOV CX,RESULT XOR AX,AX GOON:ADD BX,2 CMP AX,BX JAE NEXT MOV AX,BX NEXT:LOOP GOON MOV RESULT+2,AX 程序段执行完,回答下述问题

5、RESULT+2字存储单元的内容=( ) BX=( ) 程序循环次数=( ) 六、在下述程序段的每一空框内填入一个语句(不得修改其它语句),以实现如下功能:字节变量STR中存放着一个字符串,以0DH为结束标志,试求串长度并送字变量COUNT中。 LEA SI,STR ( ) XOR CX,CX GOON: CMP AL,SI ( ) INC CX ( ) JMP GOON NEXT:MOV COUNT,CX 七、编制将DS段中名为BUFB的字节存储区改写为空白字符(编码为20H)的程序段。假定BUFB存储区定义为BUFB DB N DUP(''),其中N为字面常量。 八、己知宏

6、指令为: SHIFT MACRO RR,COUNTMOV AX,COUNTIF RR LE 64MOV CL,3SHR AX,CLIF RR LT 16MOV CL,6SHR AX,CLENDIFENDIFENDM宏调用为:SHIFT 15,7FFFHSHIFT 80,9FFFH 写出宏扩展后的等效源程序段。 九、编写完整程序,功能是把N个8个二进制数据转换成16进制字符数据。假定N个数据存放在字节变量VARB中,转换后的字符数据存放在HVARB中,提示0-9的字符码为30H-39H,A-F的字符码为41H-46H 汇编语言试题答案 一、填空题(1)1,0,0(2)NEAR或近程,FAR或远程

7、(3)0-FFH,80H-7FH(4)GROUP,NAME,DB(5)循环准备,循环体,循环的控制与修改(6)高,低,等(7)MACRO,ENOM,宏体(8)约定寄存器法,约定存储单元法,向量传递法(9)(POP AYW)(LES SI,AYD)(MOV AH,TYPE AY2)(CLI)(AYB DB“HOW ARE YOU!”)(RET)(MOV ADDR,OFFSET AYY4)(INC AX)(ADD BX,1)(JZ GOON)二、选择题2,2三、1.CS不能作目的操作数2.BX=义性3.乘法指令源操作数不能是立即数4.远程标号不能作为条件转移指令的操作数5.立即数不能直接送段寄存器

8、6.两个操作数不能同时为存储器操作数7.操作数不配,AX为字,VAR2为字节8.段寄存器不能作为运算指令的操作数四、简答题1.由保存现场,取入口参数,加工处理,进也口友数,恢复现场和返回程序2.段属性指定义该标号的段地址偏移属性:指该标号的偏移地址类型属性:指标号是在定义它的段内引用还是在其它段引用3.相同点:都执行AX-BX操作,影响所有标志位且对档志位的影响相同不同点:CMP执行后AX,BX 内容不改变,而SUB执行后,AX内为AX-BX之差,即内容变化了五、MAX(X1,X2,。XN)(COUNT-1)六、(MOV AL,ODH)(JE NEXT或JZ NEXT)(INC SI)七、MO

9、V AX,SEG BUFBMOV DS,AXLEA SI BUFBMOV CX,NGOON:MOV BYTE PTRSI,20HINC SILOOP GOON八、MOV AX,7FFFHMOV CL,3SHR AX,CLMOV CL,6SHR AX,CLMOV AX,9FFFH九、DATA SEGMENTVARB DB 45,36,377Q,。,11011011BN EQU $-VARBHVARB DB 2 NDRP(?)DATA ENDSSTACK SEGMENT PARA STACK “STACK”DB 256 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:C

10、OOE,DS:DATA,SS:STACKMAIN PROC FARPUSH DSSUB AX,AXPUSH AXMOV AX,DATAMOV DS,AX MOV DX,NLEA DI,HVARBLEA SI,VARB,置初值GOCN:MOV AH,SIMOV AL,AHAND AH,0F0HMOV CL,4SHR AH,CLCMP AH,9JNA NEXT1ADD AH,7NEXT1:ADD AH,30H,AHAND AL,DFHCMP AL,9JNA NEXT2ADD AL,7NEXT2:ADD AL,30H,ALMOV DI,AHMOV DI,ALADD DI,2INC SIDEC DXJ

11、NZ GOONRETMAIN ENDPCODE ENDSEND MAIN 全国2006年10月高等教育自学考试汇编语言程序设计试题课程代码:02321一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1CPU要访问的某一存储单元的实际地址称()A段地址B偏移地址C物理地址D逻辑地址2某存储单元的物理地址是12345H,可以作为它的段地址有()A2345H B12345HC12340HD1234H3执行后使BX=0的同时也使CF=0,OF=0的指令是()AXOR BX,BXBOR BX

12、,BXCAND BX,BXDCMP BX,BX4循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是()ACX0且ZF=1BCX0且ZF=0CCX0或ZF=1DCX0或ZF=05在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位值送入AH中,对这进位值的操作应是()ADAA校正指令的功能已自动加在AH中B进位值在AF中,校正后根据AF内容再加在AH中C进位值在CF中,校正后根据CF内容再加在AH中D进位值在AL最高位上,校正后根据AL最高位内容再加在AH中6AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是()A指令XOR AX,AX执行后,AX内容不变,

13、但设置了标志位B指令OR DX,1000H执行后,将DX最高位置1,其余各位置0C指令AND AX,OFH执行后,分离出AL低四位DNOT AX,执行后,将AX清07在执行下列指令时,需要使用段寄存器DS的指令是()ASTOSW BADD AL,CLCNEG BXDINC DABX8无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是()AADD BH,01HBOR BH,01HCXOR BH,01HDTEST BH,01H9完成对CL寄存器的内容乘以4的正确操作是()AROL CL,1 BMUL 4 ROL CL,1 CSHL CL,1 DMOV CL,2SH

14、L CL,1       SHL CL,CL10下面各传送指令中,正确的是()AMOV DI,SIBMOVDX+DI,ALCMOV WORD PTR BX,0100HDMOV AL,BX11汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法()A名字的第一个字符可以是大写英文字母及小写英文字母B名字的第一个字符可以是字母、数字及、_ C名字的有效长度31个字符D在名字中不允许出现$12要实现使BETA的值为56,应采用语句为()ABETA DB 56 BBETA DB 56HCBETA EQU 56 DBETA EQU 56H

15、13REPZ CMPSW指令,重复执行的终止条件是()ACX=0或ZF=0 BCX=0且ZF=0CCX=0或ZF=1 DCX=0且ZF=114下面程序段执行后,AL中的内容是()MOV AX,8833HADD AL,AHDAAA21 B21HC0C1H D0DDH15比较两个带符号的数A、B,当A=B时程序转移,测试的条件为()AZF=1 BZF=0CSF=1 DSF=016检查二个无符号数的关系,若要实现ALBL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是()AJNC LOP1 BJA  LOP1CJC LOP1 DJGE  LOP117在下列串

16、操作指令中,同时使用源串和目的串地址指针的指令是()ASTOSW BLODSWCSCASW DCMPSW18设AL=0AH,下列指令执行后能使AL=05H的是()ANOT AL BAND AL,0FHCXOR AL,0FH DOR AL,0FH19DA1  DWAB,CD,EF,GH()         MOV AX,DA1+3  指令执行后AX中的内容是AEF BCDCBC DFC20使用DOS系统功能调用时,使用的软中断指令是()AINT 21 BINT 10HCINT 16H DINT 21H二、填

17、空题(本大题共12空,每空0.5分,共6分)请在每小题的空格中填上正确答案。错填、不填均无分。21十六进制数0FFF8H表示的十进制正数为_,表示的十进制负数为_。22若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,(SI+COUNT)中,源操作数的有效地址EA为_,其物理地址为_。23CPU的标志寄存器中标志位,可以分为两大类,其中一类称为_标志位,另一类称为_标志位。24当标志位_=1时表示无符号数运算产生溢出,而当标志位_=1是表示带符号数运算产生溢出。25如JMP指令采用段间间接寻址,那么由4个相邻字节单元中存放有转移地址,其中前两个字节存放的是_,而后两

18、个字节存放的是_。26在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是_或_才有实际意义。三、简答题(本大题共4小题,每小题2分,共8分)27已知:BX=1357H,DI=2000H,DS=2000H,CS=4000H,分别指出下面各指令中存储器操作数的物理地址。(1)MOV AL,BX(2)MOV CS:BX+DI,AH280P1 DB 1,2 0P2 DW 3412H,5678H MOV AX,OP1+1;字单元(OP1+1) AX MOV BL,OP2+1;字节单元(OP2+1) BL 上述二条传送语句有语法错误,请根据

19、注释字段的说明,将其改正。29下列语句在存储器中分别为变量分配多少字节? (1)AD2 DW 10 DUP(?),10 (2)AD3 DD 100 DUP(?)30简述下面两条指令分别是什么语法错误? MOV BX,SI MOV AX,DL四、程序分析题(本大题共6小题,每小题6分,共36分)31 MOV DL,AL   NOT DL   TEST DL,04H   JE NEXT         NEXT:

20、0;  若上述程序段执行时产生分支,说明AL中的数第几位一定为1?程序段执行后CF是多少?32DA1  DBABCDEFGHI  DA2  DB  9 DUP(0)        LEA SI,DA1    LEA DI,DA2    MOV CX,9    CLD  LOP: LODSB    SUB AL,10H    ST

21、OSB    LOOP LOP    . . . 试问:写出程序执行后DA2各字节中的数据。保持程序功能情况下,程序中 可否改写为 33已知:BX=4567H   NEG BX   INC BX   NEG BX   DEC BX 程序段执行后,BX=_,CF=_。34   MOV BL,64H     MOV CL,03H     XO

22、R AX,AX AGAIN:ADD AL,BL    ADC AH,0    DEC CL    JNZ AGAIN 问:(1)该程序段完成的功能是:(2)AX=_。35已知数据段中定义 DAT1 DB  12H,34H,56H,78H    MOV CX,0    MOV AX,WORD PTR DAT1    MOV CL,DAT1+3 当程序段执行完后AX=_,

23、CX=_。36DA1  DB 83H,72H,61H,94H,5AH         MOV CX,WORD PTR DA1     AND CX,0FH     MOV AL,DA1+3     SHL AL,CL  上述指令序列执行后,AL=_,CL=_。五、程序填空题(本大题共2小题,每小题6分,共12分)37在NUMW单元存放有一个0-65535范围内的整数,将该数除以500,商

24、和余数分别存入QU1和REM单元,请在空行处各填上一条指令完善该程序。    MOV AX,NUMW _ XOR DX,DX DIV BX MOV QUI,AX  _38某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串COMPUTER(不显示字符$!).试在空白处填上适当的一条指令。 STRING DBCOMPUTER,$  MOV BX,0FFSET STRING LOP:MOV DL,BX    MOV AH,02H 

25、;   INT 21H    _    _    JNE LOP六、编程序题(本大题共2小题,第39小题6分,第40小题12分,共18分)39试编制一程序段,用串操作指令实现以DA_BY为首址的20H个字节单元中存放相同字符Y(设DA_BY存储区已有ES指向)。40试编制一源程序,统计DA1字单元中含0的个数,如统计的个数为奇数,则将进位位置1,否则进位位清0。    DATA  SEGMENT    DA1

26、0; DW  XXXX    DATA ENDS2006年10月汇编语言程序设计试题答案一、1、C;2、D;3、A;4、B;5、C;6、C;7、D;8、B;9、C;10、C;11、B;12、C;13、A;14、B;15、A16、C;17、D;18、C;19、D;20、B二、21、+65528;-3276022、20A8H;11488H23、状态;控制24、CF;OF25、IP;CS26、STOS;CMP三、27、(1)21357H;(2)43357H28、MOV AX,WORD PTR(OP1+1)    MOV BL,BY

27、TE PTR(OP2+1)29、(1)22;(2)40030、MOV指令不能在两个存储器操作数之间进行;    操作数类型不匹配四、31、第2位;CF=032、123456789;不能更改33、BX=4565H;CF=134、AX=012CH,将AX内容乘3送BX中35、AX=3412H,CX=0078H36、AL=0A0H,CL=03H五、37、MOV BX,500    MOV REM,DX38、INC BX    CMP BX,24H六、39、LEA DI,DA_BY  

28、0;     MOV CX,32        MOV AL,Y        CLD        REP STOSB40、CODE SEGMENT          ASSUME CS:CODE,DS:DATA    

29、;   START: MOV  AX,DATA              MOV  DS,AX              LEA  SI,DA1            &

30、#160; MOV  CX,16              XOR BL,BL       AGAIN: MOV  AL,SI              HL AL,1       

31、0;      JC NEXT              INC BL       NEXT:INC SI              LOOP AGAIN      &#

32、160;       TEST BL,01H              JNE  L1              CLC            

33、60; JMP DONE           L1: STC         DONE: MOV AH,4CH               INT 21H         CODE ENDS 

34、;             END START 浙江省2001年10月汇编语言程序设计试题课程代码:02321一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共10分)1.把若干个模块连接起来成为可执行文件的系统程序是( ) A.汇编程序 B.连接程序 C.机器语言程序 D.源代码程序2.使汇编程序执行某种操作的命令是( ) A.变量 B.指令 C.伪指令 D.宏指令3.串操作指令中,目的操作数的段地址一定在( )寄

35、存器中 A. CS B. SS C. DS D. ES4.在下列语句中,AGAIN称为( ) AGAIN: INC SI A.符号 B.助记符 C.标号 D.变量5.MOV BH,1000SI,该指令中源操作数采用的寻址方式是( ) A.立即 B.直接 C.寄存器相对 D.寄存器间接6.OR AL,AL是( )操作指令。 A.异或 B.加法 C.右移 D.逻辑或7.DOS系统功能调用中,显示单个字符的系统调用号是( )H。 A. 01H B. 02H C. 08H D. 09H8.使计算机执行某种操作的命令是( ) A.宏指令 B.指令 C.伪指令 D.语句9.换码指令的助记符是( ) A.

36、XCHG B. LEAS C. ALXT D. MOV10.计算机能直接识别并执行的语言是( ) A.汇编语言 B.机器语言 C.高级语言 D.低级语言二、填空题(共20分)1.假设BL=0C5H,CL=2,CF=1,确定下列各条指令独立执行后,BL和CF中的值,并填入括号中。 A. SHR BL,1;BL=( ) CF=( ) B. SAR BL,CL;BL=( ) CF=( ) C. ROR BL,1;BL=( ) CF=( ) D. RCL BL,CL;BL=( ) CF=( )2.现有数据定义伪指令如下,写出对应的数据在存储单元中的存放形式。BUF1 DB 01,52HBUF2 DW

37、3 DUP(?,0)BUF3 DB 2 DUP(0,2DUP(1,2),3)BUF1BUF2BUF33.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。目前,微机中普遍采用的是_码,称为美国_码。4.8086/8088CPU中,有二个变址寄存器,分别是_和_,二个指针寄存器,分别是_和_。三、简答题(每小题5分,共20分)1.请指出下列指令错误原因: A. OR AX,CX B. ADD SI,BXDI C. JMP BYTE PTR LOOPS D. SAR AX,4 E. RCL DX2. A.下面两个语句有何区别? X1 EQU 1000H X2=1000H B.下

38、面的程序段有错吗?若有,请指出错误。 CRAY PROC PUSH AX ADD AX,BX RET ENDP CRAY3.假设程序中的数据定义如下: ARRAY1 DW ? ARRAY2 DB 16 DUP(?) ARRAY3 DD ? PLENTH EQU $-ARRAY1 问PLENTH的值为多少?它表示什么意义?4.试根据以下要求,分别写出相应的汇编语言指令。 A.把AX寄存器和BX寄存器的内容相加,结果存入AX中。 B.用BX和SI的基址变址寻址方式,把存储器中的一个字节与DL的内容相加,并把结果送回DL中。 C.把数OBEH与AH内容相加,结果送回AH中。 D.用SI和位移量020

39、0H的寄存器相对寻址方式把存储器中的一个字与AX相加,并把结果送回存储单元中。 E.用位移量0860H的直接寻址方式把存储器中一个字与数2EA0H相加,结果回送存储器中。四、程序分析题(每小题5分,共20分)1.试分析下面程序段完成什么功能? CON1 DW ××××H CON2 DW ××××H MOV AX,CON1 MOV BX,CON2 CMP AX,BX JGE GREAT LESS2.试分析下面程序段完成什么功能? OR AL,AL JZ L0 CMP AL,1 JZ L1 CMP AL,2 JZ L2

40、 JMP STOP L0: L1: L2: STOP: HLT3.试问下面的程序段完成的功能是什么?程序执行后,AX的内容是什么? XOR AX,AX MOV BX,2 MOV CX,10 L: ADD AX,BXADD BX,2LOOP LHLT4.试分析下面的程序段完成什么功能? MOV CL,04 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL五、程序设计(每小题10分,共30分) 1.试编写使AL寄存器中的无符号数乘20的程序段。 2.编写程序将ELEMS中的100个字节数据的位置颠倒过来(即第一个字节和第100个字节的内容交换,第二个

41、字节和第99个字节的内容交换)。 3.仔细阅读下列程序段,它是二个ASCII码转换为一字节十六进制数的子程序,请回答下列问题: A.说明一个ASCII码字符转换为一位十六进制数的算法。 B.程序执行结束后,HEXBUF字节单元中的内容是什么? C.对程序进行注释,说明指令执行的工作。 ASCBUF DB 38H,41HHEXBUF DB ? LEA SI,ASCBUFLEA DI,HEXBUFMOV CL,4MOV AL,SICALL ASC-HEXMOV DI,ALMOV AL,SI+1CALL ASC-HEXOR DI,ALHLTASC_HEX PROC NEARCMP AL,3AHJC

42、ASC1SUB AL,7ASC1: SUB AL,30HRET 浙江省2001年10月汇编语言程序设计试卷参考答案课程代码:02321一、单项选择题(每小题1分,共10分) 1.B 2.C 3.D 4.C 5.C 6.D 7.B 8.B 9.C 10.B二、填空题(共20分)1.(8分) A. 62H, 1 B. 0F1H, 0 C. 0E2H, 1 D. 17H, 12.(每题2分,共6分)BUF101BUF2-BUF3052-10201-2-30001-2-102033. ASCII 标准信息4. SI DI SP BP三、简答题(每小题5分,共20分)1.A.CX不能作为间接寻址寄存器

43、B.加法指令不能完成存储单元之间的加法运算 C.转移指令中,转向标号地址的属性说明错 D.移位指令格式错,当移位次数大于1时,需用CL给出 E.指令中应指出移位次数2.A.第一个语句中,X1不能多次赋值,而X2可以多次赋值 B.程序最后一行有错,应写成: CRAY ENDP3. 22它表示ARRAY1到ARRAY3所占存储单元的字节数4. A. ADD AX,BX B. ADD DL,BXSI C. ADD AH,OBEH D. ADD SI+0200H,AX E. ADD 0860H,2EA0H 四、程序分析题(每小题5分,共20分) 1.比较两个16位有符号数,当(CON1)>=(C

44、ON2)时转GREAT处理,否则转LESS处理。 2.判断AL中的内容,若AL=0,转L0处理; 若AL=1,转L1处理; 若AL=2,转L2处理; 其它转结束(STOP)。 3.求220之间偶数之和AX=110(或6EH)。 4.把DX、AX中的双字左移四位。五、程序设计(每小题10分,共30分) 1. 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,DX 2. MOV CX,50 LEA SI,ELEMS LEA DI,ELEMS+99 REVE

45、RSE:MOV AL,SI XCHG AL,DI MOV SI,AL INC SI INC DI LOOP REVERSE3.A.十六进制数的ASCII码,09对应3039H(ASCII码),AF对应41H45H(ASCII码),此算法是:首先ASCII码与3AH比较,若小于3AH,就是09的ASCII码,将它减去30H,即得十六进制数09;否则,要再减去7(如41H-37H=0AH),即可得AF的十六进制数。B. 8AH LEA SI,ASCBUF;SIASCBUF偏移地址 LEA DI,HEXBUF;DIHEXBUF偏移地址 MOV CL,04;CL移位次数4 MOV AL,SI;AL第一

46、个ASCII码 CALL ASC_HEX;调用ASCII码转换一位十六进制数子程序 SHL AL,CL;转换后的十六进制一位数移入高位 MOV DI,AL;HEXBUF单元转换十六进制数 MOV AL,SI+1;AL第二个ASCII码 CALL ASC-HEX;调用转换子程序 OR DI,AL;高位与低位组合成一字节十六进制数 HLT ASC_HEX PROC NEAR ; 子程序名定义 CMP AL,3AH;ASCII码与3AH比较 JC ASC1;小于,转ASC1 SUB AL,7;大于,ASCII码减7 ASC1:SUB AL,30H;ASCII码减30H RET ;子程序返回指令浙江省

47、2002年1月高等教育自学考试汇编语言程序设计试题课程代码:02321一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共10分)1.CPU发出的访问存储器的地址是( ) A.物理地址B.偏移地址 C.逻辑地址D.段地址2.将高级语言的程序翻译成机器码程序的实用程序是( ) A.编译程序B.汇编程序 C.解释程序D.目标程序3.DEC BYTE PTRBX指令中的操作数的数据类型是( ) A.字B.双字C.字节D.四字4.在下列语句中,BUFFER称为( ) BUFFER DB 01H,0AH A.符号B.变量C.助记符D.标号5.串操

48、作指令中,源串操作数的段地址一定在( )寄存器中。 A. CSB. SSC. DSD. ES6.使计算机执行某种操作的命令是( ) A.伪指令B.指令C.标号D.助记符7.将数据5618H存放在存储单元中的伪指令是( ) A. DATA1 DW 1856H B. DATA1 DB 18H,56H C. DATA1 EQU 5618H D. DATA1 DB 18H,00H,56H,00H8.若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=( ) A. 1400HB. 77F8HC. 0000HD. 0FFFFH9.计算机处理问题中会碰到大量的字符、符号,对此必须采用

49、统一的二进制编码。目前,微机中普遍采用的是( )码。 A. BCD码B.二进制码C.ASCII码D.十六进制码10.用指令的助记符、符号地址、标号和伪指令、宏指令以及规定的格式书写程序的语言称为( )A.汇编语言B.高级语言C.机器语言D.低级语言二、填空题(每空1分,共20分)1.在8086/8088汇编语言中,有五条串操作指令,其中搜索字符串指令的助记符是_。2.通常所说的计算机系统包括_和_两大部分。3.8086/8088存储器分四个段,这四个段的段名所对应的段寄存器分别是_、_、_、_。4.现有AX=2000H,BX=1200H,DS=3000H,DI=0002H,(31200H)=5

50、0H,(31201H)=02H,(31202H)=40H,请写出下列各条指令独立执行完后有关寄存器及存储单元的内容,并指出标志位ZF、CF的值。 A.ADD AX,1200H;问AX=_H ZF=_ B.SUB AX,BX;问AX=_H ZF=_ C.MOV AX,BX;问AX=_H CF=_ D.NEG WORD PTR1200H;问(31200H)=_H CF=_5.设DS=2200H,BX=1000H,SI=0100H,偏移量D=0A2B1H,试计算出下列各种寻址方式下的有效地址,填入括号中。 A.使用D的直接寻址( ) B.使用BX的寄存器间接寻址( ) C.使用BX和D的寄存器相对寻址( ) D.使用BX、SI和D的相对基址变址寻址( ) E.使用BX、SI的基址变址寻址( )三、简答题(共20分)1.程序在数据段中定义的数组如下:(4分)ARRAY DB YES IS DB 20 DB DO NOT请指出下列指令是否正确?若不正确,错在哪里? A.MOV BX,OFFSET ARRAY MOV AX,BX+8 B.MOV AX,ARRAY C.MOV BX,2 MOV SI,3 MOV AX,ARRAYBXSI D.MOV BX,2*2 MOV SI,3 MOV AX,OFFSET ARRAYBXSI INC AX2.如TABLE为数据段中0100单元的符号名,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论