1、汇编语言练习题库华中师范大学网络教育学院 汇编语言程序设计练习测试题库 一 .选择题(只有一个正确答案,填在题干前的括号里) 1.一台完整的计算机系统包括_。 A.硬件系统和软件系统 B.系统硬件和系统软件 C.控制器、运算器、存储器、输入设备和输出设备 D.操作系统、机器语言、汇编语言、高级语言 2.汇编程序属于_。 A.硬件系统 B.软件系统 C.系统软件 D.用户软件 3.简单的汇编语言程序可以通过_来建立 A.连接程序 B.调试程序 C.汇编程序 D.编辑程序 4.8086/8088微处理器包含有两个独立的部件_和_。 A.R和ALU B.CS和IP C.BIU和EU D.CPU和I/
2、0设备 5 .进行汇编语言编程时,设计者应该考虑一些基本的要求,下列叙述不正确的是_。 A.程序应该结构化 B.程序应该执行速度快 C.程序应该占用空间大 D.程序应该简明、易读、易懂 6 .一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是_。 A.12C5BH B.12B6BH C.12C59H D.12BFEH 7 .字符串HOLLO的ASCII代码表示为_. A.484F4C4C4FH B.484F4D4D4FH C.494F4C4C4FH D.494F4D4D4FH 8.如果内存中某一单元的物理地址是20B4CH,那么它的逻辑地
3、址是_:212CH。 A. IEA2H B. IEB2H C. IFA2H D. IFB2H 9,现有段地址和偏移地址为1025H:0F2AH,那么它所对应存储单元中的物理地址是 _。 A. 1107AH B. 01F4FH C. 11F4FH D. 1117AH 10.一个有16个字的数据区,它的起始地址是1000H:117AH,请指出这个数据区最末一个字单元的物理地址是_。 A.111ACH B.11190H C .11198H D.1119AH 11.在机器内部操作中,CPU与存储器之间的任何信息交换使用的都是_。 A.逻辑地址 B.物理地址 C.有效地址 D.相对地址 12.十进制数-
4、80用16位补码表示是_。 A. FFBOH B. 8080H C. FF80H D. F080H 13 . 设(DS)=6789H,偏移量为84H,该字节的物理地址是_。 A. 67974H B. 6873H C. 67914H D. 681DH 14.在程序执行过程中,IP寄存器中始终保存的是_。 A.上一条指令的首地址 B.下一条指令的首地址 C.正在执行指令的首地址 D.需计算有效地址后才能确定地址 15.一个16位相对偏移量的范围是_。 A. 0-65535 B. 0000H-FFFFH C. 8000H-7FFFH D. 8000H-FFFFH 16.与BP寄存器组合才能形成堆栈中
5、物理地址的寄存器是_。 A.CS寄存器 B.IP寄存器 C. DS寄存器 D.SS寄存器 17.在程序状态字寄存器PSW中,作为记录指令操作结果的标志是_。 A.CF,OF,PF,AF,SF,ZF B.CF,PP,ZF,SF C.OF,DF,IF,SF,ZF,CF D,1F,DF,OF,CF 18.PSW寄存器中共有_位条件状态位,有_位控制状态位。 A. 6、 3 B. 3、6 C. 8、 4 D. 4、8 19.8086/8088微处理器有_地址线,直接寻址内存空间的范围是_。 A.10条,64KB B.20条,64KB C.16条,1MB D.20条,1MB 20. CPU执行的指令将从
6、代码段取得,而用来给出当前代码段的代码段寄存器是_。 A.CS B.DS C.SS D.ES 21 .用CMP指令判断无符号数AB时,所用条件_。 A.CF=1 B.CF=0 C.SF=OF=1 D.SF=OF=0 22 .在8086/8088中,执行单步中断服务程序的第一条指令时,TF、IF的状态为_。 A.TF=0,IF=0 B.TF=0,IF=1 C.TF=1,IF=0 D.TF=1,IF=1 23 .在数据传送过程中,不能直接与立即数进行传送的是_。 A. 通用寄存器 B.A和D 是正确的 C. 段寄存器 D.存储器 24 . 下面指令中不能完成BX+CXAX的操作的是_。 A.MOV
7、 AX,BX B.ADD BX,CX ADD AX,CX MOV AX,BX C.XCHG AX,CX D.ADD AX,BX ADD AX,BX ADD AX,CX 25 .AND DX,NUM AND 0FFABH 上述指令中出现两个AND,正确的解释是_。 A.均是逻辑运算符 B.均是指令助记符 C.前者是指令助记符,后者为逻辑运算符 D.两个AND操作均在程序执行时得到运算结果 26 .指令代码的地址存放在寄存器_中。 A.DS和SI B.BX和BP C.ES和DI D.CS和IP 27 .Jump WORD PTRSI指令实现的是_。 A.段内直接寻址 B.段内间接寻址 C.段间直接
8、寻址 D.段间间接寻址 28.立即寻址方式中的立即数可以为_位。 A.8 B.9 D.8和16 29.能充当间接寄存器寻址方式的寄存器是_。 A.BX B.AX C.CX D.DX 30.能充当变址寻址方式的基址寄存器是_. A. SI B.BH C. CH D.DH 31.能充当相对变址寻址方式的位移量的位数是_. A.8 B.16 C.32 D.8和16 32.段内直接寻址方式只改变_寄存器的内容。 A.IP B.CS C.AX D.BX 33.段内间接寻址方式只改变_寄存器的内容。 A.AX C.CX D.IP 34.段间直接寻址方式只改变_寄存器的内容。 A.IP B.CS C.DS
9、D.IP和CS 35.段间间接寻址方式只改变_寄存器的内容。 A.IP B.CS C.DS D.IP和CS 36.段内直接寻址方式中的位移量是_位。 A.8 B.16 C.32 D.8和16 37.在寄存器相对寻址方式MOV AX,SI+DAT中,偏移量DAT应是一个_。 A. 原码 B.补码 C.反码 D.移码 38.在下述指令的表示中,不正确的是_。 A. MOV AK,NUMBX B. MOV AX,BXNUMS1 C. MOV AK,BX+BP+NUM D. MOV AX,NUMBP+D1 39.下列指令执行时出错的是_。 A.ADD BUFI,BUF2 B.JMP DWORD PTR
10、 DATBX C.MOV AX,BX+DNUM D.TEST AL,08H 40.指令JMP DWORD PTRSIBX属于_寻址。 A.寄存器间接寻址 B.相对基址变址寻址 C.段内转移直接寻址 D.段间转移间接寻址 41.下述对PSW寄存器中标志位不产生影响的指令是_。 A.JMP NEXT B.TEST AL,80H C.SHL AL,1 D.INC SI 42.下述对PSW寄存器中标志位产生影响的指令是_。 A.LOOP DON B.NOT AX C.NEG AX D.XLAT BUF 43.进行两个补码整数9CH和7AH相加运算后,会产生_。 A.无溢出且无进位 B.无溢出但有进位
11、C. 有溢出且有进位 D. 有溢出但无进位 44.从键盘输入一个十进制数3042,它所对应的非压缩型BCD码的存储形式是_。 A. 03,00,04,02 B. 02,04,00,03 C. 33,30,34,32 D. 32,34,30,33 45.累加器AL中的内容为74H,执行CMP AL,47H指令后,累加器AL中的内容为_。 A. 2DH B. OD3H C. 74H D. 00H 46.已知(AX)=1234H,执行下述三条指令后,(AX)= _。 MOV BX,AX NEG BX ADD AX,BX A. 1234H B. 0EDCCH C. 6DCCH D. 0000H 47.
12、执行IMUL指令时,如果乘积的高一半不是低一半的符号扩展,则( )。 A. CF=0, OF=0 B. CF=0, OF=1 C. CF=1, OP=0 D. CF=1, OF=1 48.若(DS)=2000H,(BX)=0050H,(20050H);12H,(20051H)=34H,执行MOVAX,BX指令后,AX寄存器中的内容是_。 A.(AX)=0050H B.(AX)=0012H C.(AX)=1234H D.(AX)=3412H 49.下列描述不正确的是_。 A.执行指令XOR AX,AX后不会改变累加器原有的内容 B.执行指令TEXTAX,8000H后,不会改变加器原有的内容 C.
13、执行指令AND AX,0FFPFH后,不会改变累加原有的内容 D.执行指令OR AX,0000H后,不会改变累加器原有的内容 50.指出下列指令正确的是_。 A. MOV AX,12H B. ADD ADRI,ADR2 C. 1NC BX D. XOR AX,CX 51.以下指令中不是逻辑运算指令的是_。 A.XOR B.NOT C.OR D.CWD 52.在移位类指令中,只有_指令不仅仅是在空缺位补零。 A.SAL B.SAR C.SHL D.SHR 53.移位类指令使用时,若需移动多位,则应先将该位数置于_中。 A.AL B.AH C.CL D.CH 54._是定义字节变量的。 A.DB
14、B.DD C.DW D.DQ 55._是定义字变量的。 A.DB B.DW C.DD D.DT 56. _是定义双字节变量的。 A.DB B.DW D.DQ 57.若某数据段定义如下: DATA SEGMENT F1 DB 25H, 28H, 46H, 34H F2 DW 3356H,2536H,1242H F3 DD 4 DUP(?) DATA ENDS 则执行指令语句:MOV AH,TYPE Fl MOV AL,TYPE F2 之后,AX中的内容为_。 A.102H B.104H C.201H D.以上均不正确 58.ASSUME伪指令说明了汇编程序所定义段与段寄存器的对应关系,它只影响_
15、的设定。 A.源程序 B.目标程序 C.汇编程序 D.连接程序 59.在汇编过程中,汇编程序在第_遍扫描之后产生机器代码。 A.1 B.2 C.3 60.在ASSUME伪指令设定了段寄存器后,无需在程序段中用指令完成赋值的寄存器是_。 A.CS B.DS C.SS D.ES 61 .流程图中的执行框表明的是某一段程序或某一个模块的功能,它的特点是_。 A.一个入口一个出口 B.一个入口多个出口 C.多个入口一个出口 D.多个入口多个出口 62.在8086/8088基址变址寻址指令中,允许使用的寄存器有_。 A.AX, BX, CX, DX B.SP, IP C.CS, ES, DS, SS D
16、.BX, BP, SI, DI 63.以BUF为起始地址的字节单元中建立一个输入缓冲区,在DOS功能子程序的调用中,执行0AH号功能后,用户从键盘输入的字符是从_个字节开始存放。 A. 第一 B. 第二 C. 第三 D. 第四 64 .下列描述中正确的是_。 A.在汇编语言编程中,必须有数据段和代码段 B.在汇编语言编程中,数据可以安排在代码段中 C.在汇编语言编程中,必须分别完整的定义数据段、堆栈段、附加段和代码段 D.在汇编语言编程中,必须采用过程的形式编写 65 .子程序重定位可选在内存中的整个区域内,进行程序设计时子程序内应采用_。 A.绝对地址 B.逻辑地址 C.相对地址 D.物理地
17、址 66 .在进行二重循环程序设计时,下列描述正确的是_。 A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内 B.外循环初值应置外循环之内;内循环初值应置内循环之内 C.内、外循环初值都应置外循环之外 D.内、外循环初值都应置外循环之内,内循环之外 67.COM文件只能由一个段组成,最大长度为_。 A.1K B. B.64KB C.1MB. D.无限制 二 .判断题(只需判断对错,在题干前括号里对,错) () 1.指令MOV AX,BXSI也可写作MOV AX,BX+SI 。 ()2. CF标志位,不但可以用来判断无符号数有无溢出,而且也可以判断带符号数有无溢出 ()3.立即
18、数是不允许被用作目的操作数的。 ()4.一个符号经EQU赋值后,在整个程序中,这个符号不能再重新赋值。 ()5.因为SP所指栈顶为“实”栈顶,所以在入栈和出栈操作时都要先修改堆栈指针SP,再执行入栈、出栈操作。 ( ) 6 .因为计算机的存储空间是分段管理的,而汇编程序存放在存储器中,无论取指还是存操作,都要访问内存,因此,汇编语言源程序的编写必须遵照存储器分 段编写。 ( )7 .汇编好的目标程序要经过连接和定义之后才能交给机器运行。 ( )8 .存储区存取数据或地址采用的原则和存储程序区存取指令代码的原则一样都是“先进先出”。 ( )9.只有通过汇编才能产生目标程序。 ( )10.换码指令
19、可将累加器AL中的一个值/码翻译为内存表格中的另一个值/码,但不送回AL。 ( )11 .MOV 指令中的源和目的操作数中至少要有一个是寄存器。 ()12. 执行部件负责指令的执行,它主要由寄存器组、算逻部件、标志寄存器组成。()13.在用户程序中,一般都需要用户自己建立堆栈段,大小可由用户根据需要选定,最大不超过64K字节。 ()14. 机器语言指令由操作码和地址码两部分组成. ()15. 寄存器法就是于程序的入口参数和出口参数都在约定的寄存器之中。 ()16. 计算机与外设传送数据的常用方式有如下四种:无条件传送、查询传送、中断传送、直接存储器传送。 ()17.串寻址中,8086规定SI指
20、向目的串,DI指向源串。 ()18.串传送时的串长度值必须放在CL中。 ( )19. 串处理指令处理存放在存储器里的数据串,所有串指令都可以处理字节或字。()20. 变量的偏移地址是指变量所在段的段首址到该变量定义语句的字节距离。()21. 所有移位指令都可以作字或字节操作。 ()22.数据寄存器主要用来保存操作数或运算结果等信息。 ( )23. 指示器变址寄存器组一般用来存放操作数的偏移地址,用作指示器或变址寄存器。 ( )24. 标志寄存器用来保存在一条指令执行之前,CPU所处状态的信息及运算结果的特征。 ()25.8086微处理器只能进行16位地址运算,表示16位地址,寻找操作数的范围最
21、多也只能是64K字节。 ( )26. 逻辑运算是按字节操作的. ( )27. 子程序结构相当于高级语言中的过程。 ( )28.寄存器寻址方式中指令所指明的寄存器就是操作数的存放地址,即操作数的指令指明的寄存器中。 ()29。在变址寻址方式中,操作数在存储器中,而操作数偏移地址EA是指令中指明的寄存器的内容与指令中给出的位移量相加之和。 ()30. IN和OUT指令提供了字和字节两种使用方式,选用哪一种,则取决于外设端口宽度。 ( )31. LEA 有效地址送寄存器指令格式为: LEA REG,SRC ( )32. 减法指令格式: SUB DST,SRC ( )33. 乘法指令对除CF和OF以外
22、的条件码位无定义。 ( )34. 除法指令要求字节操作时商为8位,字操作时商为16位。 ( )35. 在汇编语言中,变量是一个数据存储单元的名字,即数据存放地址的符号表示。 ( )36. 变量的段属性即指定义变量所在段的段首址,当需要访问该变量时,该段首址一定要在某一段寄存器中。 ( )37. 标号是机器指令语句存放地址的符号表示,也可以是过程名。 ( )38.语句MOV SI,OFFSET BUF的功能是:将变量BUF的偏移地址送入SI,其后的源操作数也属于立即寻址方式。 ( )39. 地址表达式中允许出现不带方括号的寄存器符号。 ( )40. 在数据定义语句中,如果表达式中出现变量和标号,
23、则是取其偏移地址值参加运算。 ( )41. 操作项可以是指令、伪操作,但不可以是宏指令的助记符。 ( )42. 存储器的物理地址是由段地址和偏移地址组合而成的。 三.填空题 1.软件是为了_、_和维护计算机而编制的各种_的总和。 2.把汇编源程序翻译成目标程序的语言程序称为_。汇编程序进行翻译的过程叫做 _。 3.控制器负责把指令逐条从 _中取出,经_ 后向全机发出取数、执行和存数等控制命令,以保证完成程序所要求的功能。 5.PSW是一个16位的寄存器,其中状态标志位有_位,控制标志位有_位。 6.存储器按段划分,每个段的大小可在_范围内选取任意个_数。 7.段的起始地址_起始于任意地址,在1
24、MB的地址空间中可以选取 _个段起始地址。 8.计算00000000和01010101的与运算结果是。 9.计算00000000和01010101的或运算结果是。 10.计算00000000和01010101的非运算结果是。 11.计算00000000和01010101的异或运算结果是。 12.加法指令的汇编语言格式为:ADD DST,SRC,其中SRC表示_地址。 13.加法指令的汇编语言格式为:ADD DST,SRC,其中DST表示_地址 14.在SHL指令中移位次数由_决定,CNT可以是_或_。 15. 所有移位指令都可以作_或_操作。 16.算术移位指令适用于_运算;而逻辑移位指令则用
25、于_运算。 17.循环移位指令不影响除_和_以外的其他条件标志。 21.在字操作中,当方向标志DF=0时用_,当方向标志DF=1时用_。 22.转移可以分成两类:_和_。 23.段内转移是指在同一段的范围之内进行转移,此时只需改变_寄存器的内容。段间转移则是要转到另一个段去执行程序,此时不仅要修改IP寄存器的内容,还需要修改_寄存器的内容才能达到目的。 24.转移目标地址由新的_和_两部分组成。 25.段内直接短转移格式只允许在_到_字节的范围内转移。 26.条件转移指令根据上一条指令所设置的_来判别测试条件。 27. RET指令放在子程序的_,它使_程序在功能完成后返回调用程序继续执行。 2
26、8.CALL指令和RET指令都_条件码。 29.中断分为_中断和_中断两类。 30.当CPU响应一次中断时,应将_和_和_保存入栈。 31.变量仅代表本数据存储区中的_数据单元。 32.字类型变量中存放的16位操作数_传送到8位的寄存器AL中? 33._运算符用来指明某个变量、标号或地址表达式的类型属性。 34._是机器指令语句存放地址的符号表示,也可以是过程名。 35.运算符_用于临时给变量、标号或地址表达式指定一个段属性。 36.运算符THIS与_具有类似的功能,即指定某个变量、标号或地址表达式的类型。 37.不带方括号的寄存器符号不是_。 38._运算符分离出其后变量或标号所在段的段首址
27、。 39._运算符分离出其后变量或标号的偏移地址。 40._运算符取其后变量或标号的类型。 41.取变量所含的数据存储单元个数算符_。 42._用来取其后常量或地址表达式的高字节数据作为运算结果。 43.一般说来,名字项可以是_或_。 44.操作项可以是_、_或_。 45.操作数项由一个或多个_组成,多个操作数项之间一般用逗号分开。 46._用来说明一段程序或一条减几条指令的功能,它是可有可无的。 47._可以是常数、寄存器、标号、变量或由表达式组成。 48.无分支,无循环,无转移的程序结构称为程序,这种程序设计方法称为直流法或称为_。 49. 顺序结构程序设计主要考虑如何选择简单的有效_,如
28、何选择_单元和_单元。 50.在顺序结构的流程图中,执行框有_个,但判断框。 51.在汇编语言程序设计中,以中断方式结束程序返回系统,送入AH寄存器中的功能号是_或_。 52.在编写汇编浯言程序时,常常对存储单元赋产一个名字,这些存储单元一般有二种类型的用途:常数单元、_单元及_单元。 53.当循环次数已知时,通常使用_实现循环。 54.循环计数器可根据寄存器的分配情况,选用_通用寄存器或存储单元。 55.LOOP指令往回转向的标号离该指令的下一条指令所在地址的距离范围为_字节。 56.单重循环循环次数分_和_两种情况。 57.所谓_,即其循环体内不再包含循环结构。 58.若测试比较的结果表明_循环条件,则继续循环,否则结束循环。 59.对于循环次数未知的情况,常用_来控制循环。 60.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1