当前位置:文档之家› 汇编语言程序设计期末考试题

汇编语言程序设计期末考试题

汇编语言程序设计期末考试题学院(系):学号: 姓名: 计分:一、项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。

每小题1分,共10分)1.CPU发出的访问存储器的地址是( )A.物理地址B.偏移地址C.逻辑地址D.段地址2.将高级语言的程序翻译成机器码程序的实用程序是( )A.编译程序 B.汇编程序 C.解释程序 D.目标程序3.DEC BYTE PTR[BX]指令中的操作数的数据类型是( )A.字 B.双字C.字节D.四字4.在下列语句中,BUFFER称为( )BUFFER DB 01H,0AHA.符号 B.变量 C.助记符D.标号5.串操作指令中,源串操作数的段地址一定在( )寄存器中。

A. CS B. SS C. DS D. ES6.使计算机执行某种操作的命令是( )A.伪指令B.指令 C.标号D.助记符7.将数据5618H存放在存储单元中的伪指令是( )A. DATA1 DW 1856HB. DATA1 DB 18H,56HC. DATA1EQU 5618H D. DATA1 DB 18H,00H,56H,00H8.若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=( )A.1400H B. 77F8H C. 0000H D. 0FFFFH9.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。

目前,微机中普遍采用的是( )码。

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)=50H,(31201H)=02H,(31202H)=40H,请写出下列各条指令独立执行完后有关寄存器及存储单元的内容,并指出标志位ZF、CF的值。

A.ADDAX,1200H;问AX=________H,ZF=________B.SUB AX,BX;问AX=________H,ZF=________C.MOV AX,[BX];问AX=________HCF=________D.NEG WORD PTR[1200H];问(31200H)=________HCF=________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.MOVBX,OFFSET ARRAYMOV AX,[BX+8]B.MOV AX,ARRAYC.MOV BX,2MOVSI,3MOVAX,ARRAY[BX][SI]D.MOV BX,2*2MOV SI,3MOV AX,OFFSET ARRAY[BX][SI];在汇编过程中,OFFSET操作将得到变量的偏移值,但对相对基址变址寻址方式形成的值,在汇编指令时还是未知的,所以第三条指令不正确。

INC [AX];第四条指令中,AX不能作为基址寄存器用。

2.如TABLE为数据段中0100单元的符号名,其中存放的内容为0FF00H,试问以下两条指令有什么区别?指令执行后,AX寄存器的内容是什么?(3分)MOV AX,TABLEMOV AX,OFFSET TABLE3.对于下面的数据定义,三条MOV指令分别汇编成什么?(3分,答案写在对应指令的右边)TAB1 DW 10 DUP(?)TAB2DB 10 DUP(?TAB3 DB '1234'┇MOV AX,LENGTH TAB1MOV BL,LENGTH TAB2MOV CL,LENGTH TAB34.子程序的说明文件中应包括哪几方面的内容?(5分)5、分别指出下列指令中源操作数的寻址方式:(5分,答案写在对应指令的右边)A.MOV SI,100立即寻址B.MOV CX,DATA[SI]寄存器相对寻址C.MOV [SI],AX寄存器寻址D.ADD AX,[BX][DI]基址变址寻址三、简答题(共20分)1. A.正确B.数据类型不匹配错C.前两条指令正确,第三条数据类型不匹配D.前两条正确,后两条不正确,在汇编过程中,OFFSET操作将得到变量的偏移值,但对相对基址变址寻址方式形成的值在汇编指令时还是未知的,所以第三条指令不正确。

第四条指令中,AX不能作为基址寄存器用。

ﻫ2.第一条指令传送的是0100H单元中的内容AX=0FF00Hﻫ第二条指令传送的是地址0100H AX=0100Hﻫ3.MOV AX,10ﻫMOV BL,10ﻫMOV CL,14. A.子程序名B.子程序的功能C.子程序所用到的寄存器、工作单元的情况ﻫD.子程序的输入参数E.子程序的输出参数5.A.立即寻址ﻫB.寄存器相对寻址ﻫC.寄存器寻址D.基址加变址寻址E.寄存器寻址四、程序分析(每小题5分,共20分)1.把DA T1+20存储单元开始的10个字节搬到DAT2开始的连续10个存储单元中。

ﻫ2.3000Hﻫ3.判断A L的内容,若为'A'~'Z'的大写字母时,程序转LETTER处理,否则转OTHER处理。

ﻫ4.0F00HﻫE.POPHF四、程序分析(每小题5分,共20分,答案写在程序右边空白处。

)1.列程序段完成什么工作?DAT1 DB 30 DUP(?)DAT2 DB 10 DUP(?)┇MOV CX,10MOV BX,20MOV SI,0MOV DI,0NEXT:MOV AL,DAT1[BX][SI]MOV DAT2[DI],ALINC SIINC DILOOP NEXT2.执行下列指令后,AX寄存器中的内容是什么?START DW 10H,20H,30H,40H,50HEE1 DW 3┇MOV BX,OFFSETSTARTADD BX,EE1MOVAX,[BX]3.试分析下面程序段的功能是什么?CMP AL,'A'JC OTHERCMP AL,'Z'+1JNC OTHERJMP LETTER┇OTHER:┇LETTER:┇4.下面程序段执行完以后,AL的内容是什么?MOV BX,00FFHANDBX,0FFFHOR BX,0F0FHXOR BX,00FFH五、程序设计(每小题10分,共30分)1.试编写出把DX、AX中的双字右移四位的程序段。

2. 定义一个数据区,它包含有23H,24H,25H和26H四个字符数据,把这个数据区复制20次,并显示出复制结果。

3. 内存自BUF单元开始的缓冲区连续存放着100个学生的英文分数,编程序统计其中90~100,60~89,60以下者各有多少人?并把结果连续存放到自RESUT开始的单元中,(要求画出程序流程图,各段定义完整)汇编语言程序设计试题答案一、单项选择题(每小题1分,共10分)ﻫ1.A 2.A 3.C 4.B5.C6.B7.B 8.A9.C 10.Aﻫ二、填空题(每空1分,共20分)1.SCASﻫ2.硬件软件3.CSDS ESSSﻫ4.A.3200H0ﻫB.0E00H0C.0250H 不影响D.0B0H 1ﻫ5.A.0A2B1HﻫB.1000HﻫC.0B2B1HD.0B3B1HE.1100Hﻫ三、简答题(共20分)ﻫ1. A.正确ﻫB.数据类型不匹配错C.前两条指令正确,第三条数据类型不匹配ﻫD.前两条正确,后两条不正确,在汇编过程中,OFFSET操作将得到变量的偏移值,但对相对基址变址寻址方式形成的值在汇编指令时还是未知的,所以第三条指令不正确。

第四条指令中,AX不能作为基址寄存器用。

2.第一条指令传送的是0100H单元中的内容AX=0FF00Hﻫ第二条指令传送的是地址0100H AX=0100H3.MOV AX,10MOV BL,10ﻫMOV CL,14.A.子程序名ﻫB.子程序的功能ﻫC.子程序所用到的寄存器、工作单元的情况D.子程序的输入参数ﻫE.子程序的输出参数5.A.立即寻址B.寄存器相对寻址C.寄存器寻址D.基址加变址寻址ﻫE.寄存器寻址ﻫ四、程序分析(每小题5分,共20分)1.把DAT1+20存储单元开始的10个字节搬到DA T2开始的连续10个存储单元中。

2.3000Hﻫ3.判断AL的内容,若为'A'~'Z'的大写字母时,程序转LETTER处理,否则转OTHER处理。

ﻫ4.0F00Hﻫ五、程序设计(每小题10分,共30分)1.MOV CL,04SHR AX,CLﻫMOV BL,DLSHR DX,CLﻫSHL BL,CLORBL,AHﻫ2.DA TA SEGMENTﻫPA TTERN DB23H,24H,25H,26HDISPLAY DB80DUP(''),'$'ﻫDA TE ENDSﻫCODE SEGMENT┇ﻫCLDﻫLEA SI,PATTERNﻫLEA DI,DISPLAYﻫMOV CX,80REP MOVSBﻫMOVAH,09HLEA DX,DISPLAYINT21HﻫRETﻫCODE ENDSﻫ3.DA TASEGMENTﻫBUF DB40H,64H,51H…ﻫRESUT DB 3 D UP(0)ﻫDA TA ENDSSTACKSEGMENT STACKDB 100 DUP(0)STACK ENDSCODE SEGMENTﻫASSUME DS∶DATA,ES∶DATA,SS∶STACK,CS∶CODEﻫSTART PROC FARPUSH DSMOV AX,0ﻫPUSH AXMOVAX,DATAMOV DS,AXMOV ES,AXMOV、AX,STACKMOV SS,AXLEA SI,BUFMOV CX,100ﻫCLDAO: LODSBCMP AL,5AHﻫJLL60INC[RESUT]ﻫJMP COML60:CMPAL,3CHJGEK8960INC [RESUT+1]JMP COMK8960:INC[RESUT+2]ﻫCOM: LOOP AORETﻫSTART ENDPﻫCODE ENDSﻫENDSTART。

相关主题