资源预览内容
第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
第9页 / 共13页
第10页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第第 4 章章 汇编语言程序格式汇编语言程序格式 习题习题练习题练习题1 单项选择题单项选择题1下列选项中不能作为名字项的是( C)。AFH BA3 C3B DFADC2下列指令不正确的是( )。AMOV AL,123 BMOV AL,123Q CMOV AL,123D DMOV AL,123H3下列指令不正确的是( )。AMOV BL,OFFSET A (偏移量 16 位) BLEA BX,ACMOV BX,OFFSET A DMOV BX,A4若定义“BUF DB 1,2,3,4”,执行 MOV AL,TYPE BUF 后 AL=( )。A0 B1 C2 D35若定义“A EQU 100”,执行“MOV AX,A”后,AX=( )。AA 的偏移地址 BA 单元中的内容C100 DA 的段地址6若定义“B DW 1,2,10 DUP(0)”,则该伪指令分配( )字节单元。A10 B20 C22 D247若定义“C DD 2,4”,则该伪指令分配( )个字节单元。A2 B4 C6 D88、伪指令是( )规定的汇编说明符,它在源程序汇编时进行说明。A、DEBUG B、LINK C、MASM (汇编程序) D、EDIT9在上机操作过程中,MASM 命令执行后,除了生成一个目标文件外,根据选择还可以生成一个( )文件。A LST B EXE C MAP D ASM10LINK 命令执行后可以生成一个以( )为扩展名的文件。AASM BEXE COBJ DCOM11一个段最大可定义( )字节。A1M B64K C32K D16K12若要求一个段的起始位置能被 256 整除的单元开始,在定位方式选项中应选( )。ABYTE BWORD CPARA DPAGE(页)13宏指令与子程序相比,在多次调用时,宏指令调用的目标程序长度比子程序调用的( )。A相同 B长 C短 D不定14宏指令与子程序相比,子程序调用的执行速度比宏指令的( )。A相同 B快 C慢 (恢复断点、保护现场、恢复现场) D不定15ASSUME 伪指令说明了汇编程序所定义段与段寄存器的关系,它只影响( )的设定。A源程序 B目标程序 C汇编程序 D连接程序16设 A 和 B 为字变量,C 为标号,下列指令中不正确的是( )。AMOV AX,A (变量) BMOV AX,B CJNE A DJMP C17代码段中的语句( )表示该段结束。AASSUME BCODE ENDS CSTART:MOV AX,DATA DEND START18过程定义语句以“过程名 PROC”开始,以过程名( )结束。AENDS BENDP CENDM DEND19一个段可以放在内存的任何地方,但起始地址应该从一个能被( )整除的单元地址开始。A16 B32 C64 D12820在数据定义语句中,下列描述不正确的是( )。A存放存储单元的地址可以用字节表示B存放存储单元的地址可以用字表示C存放存储单元的地址可以用双字表示D存放存储单元的地址可以用四字表示2 多项选择题多项选择题1在 8086 汇编语言中,语句的种类有( )。A指令性语句 B指示性语句 C汇编语句 D说明语句2在下列的选项中,不能作为名字的有( )。AAX B3MA CABCD DMOV3在下列的选项中,作为变量的类型有( )。A字节 B字 C双字 D近程4在下列的选项中,作为标号的类型有( )。ADB BDD CNEAR DFAR5在运算符 OFFSET 后可以是( )。A标号 B变量 C表达式 D数字6在指令“LEA BX,X”中的 X 可以是( )。A标号 B变量 C表达式 D数字7不能分配内存单元的伪指令语句有( )。AEQU BDW C= DDD8定义一个段的伪指令语句有( )。ANAME SEGMENT BNAME PROCCNAME ENDP DNAME ENDS9定义一个过程的伪指令语句有( )。ANAME SEGMENT BNAME PROCCNAME ENDP DNAME ENDS10宏指令与子程序的主要区别在于( )。A完成的功能完全不同 B目标程序的长度不同C执行程序的速度不同 D汇编时处理的方式不同3 填空题填空题1汇编语言的语句有指令语句和 指示性语句 ,宏指令是 指令语句 的另一种形式。2标号的三个属性是段地址、 偏移地址 和类型。3变量的三个属性是段地址、 偏移地址 和类型。偏移地址4标号的类型有 NEAR 和 FAR 。5变量的类型有 字节 、 字 、 双字 、四字(八字节)和十字节。6等价语句不能重复定义、等号语句 重复定义。7等价语句和等号语句 内存单元。8语句“MOV BX,OFFSET A”可用 LEA BX,A 一条指令代替。9若定义“A DW 1234H”,指令“MOV AL,BYTE PTR A”执行后,AL= 34H 。10若定义“B DW 1,2,30 DUP(5)”,则 B 分配的内存单元数是 64 字节。11若定义 C DW AB,则“MOV AL,BYTE PTR C”执行后,AL= 。12在程序的操作数项中使用的段名、标号名、变量名和符号名都必须在源程序中先 定义 ,否则汇编程序进行汇编时就会 报错 。13使用伪指令 和 定义一个段。14使用伪指令 和 定义一个过程。利用过程定义语句可以把程序分成小段,以便于 、 、调试和修改。15伪指令 表示整个程序结束。16宏展开就是用宏定义取代源程序中的宏指令。若实元个数大于变元个数,则多余的实元 。若实元个数少于变元个数,则多余的变元用 代替。17汇编语言源程序经 产生目标文件,它 直接在机器上运行,还必须经过后形成可执行文件。18在数据段中使用字符串时,该字符必须用 括起来。当定义含有多个字符的字符串时,只能使用 伪指令。19用汇编语言编写的程序称为 ,其扩展名为 。20在源程序中只要对某一独立功能的程序段进行一次宏定义,就可以 次调用它。4 简答题简答题1按照下列题目要求写出每小题的伪指令。(1)将 12H、34H、56H、78H 存放在字节变量 A 的存储单元中。(2)将 12、1638H、0E52H 存放在字变量 B 的存储单元中。(3)将字符串 COMPUTER 存放在 C 变量的存储单元中。(4)将 D 字节变量的 100 个单元设置为 0。(5)将 D 的偏移地址存放在 E 变量中。2设数据段定义如下:DATA SEGMENTBUF1 DB 2,3BUF2 DW 4,5,6BUF3 DB 2,100 DUP(0)BUF4 DB ABCDEBUF5 DW BUF3BUF6 EQU $BUF3DATA ENDS请回答 :(1)该数据段占用的内存有多少字节?(2)BUF5 单元中的值是多少?(3)BUF6 的值是多少?(4)执行“MOV AL,BUF4+2”指令后,AL= 。(5)执行“MOV AX,WORD PTR BUF1”指令后,AX= 。3设数据段定义如下:DATA SEGMENTA DW 23,45B DW EFC = $+5D DB 10 DUP(?)E EQU $DF DW DDATA ENDS请回答:(1)该数据段占用的内存有多少字节?(2)C 的值为多少?(3)E 的值为多少?(4)执行“MOV AX,F”指令后,AX= 。(5)执行“MOV AL,BYTE PTR B”指令后,AL= 。4设数据段定义如下:DATA SEGMENTBUF1 DB 36H,3,2BUF2 DW 1364H,253HBUF3 DB 30 DUP(ABC)BUF4 DW $BUF3BUF5 DB 100 DUP(0)DATA ENDS请回答 :(1)执行“MOV AX,WORD PTR BUF1”后,AX= 。(2)执行“LEA BX,BUF3”后,BX= 。(3)执行“MOV CX,BUF4”后,CX= 。(4)执行“MOV AL,BUF3+2”后,AL= 。(5)执行“MOV AX,BUF2+1”后,AH= 。5设数据段定义如下:DATA SEGMENTA1 DB 10 DUP( )A2 DW 1234H,5678H,341HA3 DW $A2A4 DW A2A5 DB 7,3,2DATA ENDS请回答:(1)用一条指令将 A2 的偏移地址送 BX。(2)将 A1 的第 6 个字节送字符A的 ASCII 码(3)将 A2 的第 3 个字节的内容送 AL。(4)将 A2 的第 3 个单元开始的字内容送 AX。(5)用一条伪指令求出 A1 和 A2 所占字节数(设伪指
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号