汇编语言程序设计试题.doc_第1页
汇编语言程序设计试题.doc_第2页
汇编语言程序设计试题.doc_第3页
汇编语言程序设计试题.doc_第4页
汇编语言程序设计试题.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

汇编语言程序设计试题 一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题2分,共50分)1.CPU发出的访问存储器的地址是( A ) A.物理地址 B.偏移地址 C.逻辑地址 D.段地址2.使计算机执行某种操作的命令是( B ) A.伪指令 B.指令 C.标号 D.助记符3.若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=(A) A. 1400H B. 77F8H C. 0000H D. 0FFFFH4.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。目前,微机中普遍采用的是( C)码。A. BCD码 B.二进制码 C.ASCII码 D.十六进制码5.下列关于8086CPU的工作原理的描述错误的是_C_。 A汇编程序员可以通过对各种寄存器中内容的修改实现对CPU的控制。 BCPU在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址。 C任意时刻,CS:IP指向的内容即是此刻CPU正在执行的指令。 D传送指令能够更改所有通用寄存器的内容。6一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是(C)A12CFBH B12B6BH C12C5BH D12BFEH7. 16位结构的CPU 不一定具备的特性是(D)。 A. 运算器一次最多可以处理16位的数据 B. 寄存器的最大宽度为16位 C. 寄存器和运算器之间的通路为16位 D. 地址总线为16根 8. 下列指令的书写正确的是(C) 。A push al B mov cs:0,ds:10 C pop si D mov ds:0,2 9在DEBUG工具中,显示寄存器内容的命令是( D )。A. G B. D C. T D. R10. 能够将ax中的内容送到内存0000:0200H处的指令序列是(D)。 A mov ds,0 mov bx,200h mov bx,ax B mov ax,200h mov ds,ax mov bx,0 mov bx,ax C mov ax,20h mov ds,ax mov bx,0 mov bx,ax D mov bx,20h mov ds,bx mov bx,0 mov bx,ax11若栈顶的物理地址为20100H,当执行完指令PUSH AX后,栈顶的物理地址为 (C)。A. 20098H B. 20102H C. 200FEH D. 20100H12执行下列指令后AL寄存器中的值是(A)MOV AL, 0BFHOR AL, 0FCHA.0FFH B. 0ACH C. 0DCH D. 0BBH13. 已知(DS)=2000H,(BX)=1256H,(SI)=528FH,则执行指令JMP BX后,IP寄存器的内容是(A)。A. 1256H B. 2000H C. 3256H D. 528FH14在程序执行过程中,IP寄存器中始终保存的是(B)A上一条指令的首地址 B下一条指令的首地址 C正在执行指令的首地址 D需计算有效地址后才能确定地址15.8088/8086存储器分段,每个段不超过(D)A64K个字 B32k个字节 C1兆个字节 D64k个字节16.关于伪指令相关描述错误的是(B)。 A伪指令没有对应的机器码,只用来指导汇编过程的。 B伪指令由编译器处理,在程序中可有可无。 C编译器要通过执行伪指令才能对源程序进行相应的处理操作,完成编译工作。 D伪指令是汇编语言源程序不可缺少的组成部分。 17.下列关于堆栈的说法,错误的是(D)A以“先入后出”为原则。 B栈区最高地址单元的前一个单元为栈底。 C运行中SP寄存器动态跟踪栈顶位置。 D压栈和弹出都是以字节为单位。18.关于8086/8088微机系列,下列说法哪个是正确的(D)A一个存储单元由16个二进制位组成,简称字。 B当存储一个字数据时,低字节放高地址位,高字节放低地址位。 C在内存中,可以无限分配段,且段的大小不受限制。 D段与段之间可以邻接,也可以重叠。19.1KB的存储器有_B个存储单元?A1000 B. 1024 C. 512 D. 25620. 下列程序中,出现逻辑错误的是( B)。 A assume cs:code code segment mov ax,2 add ax,ax mov ax,4c00h int 21h code end B assume cs:code code segment mov ax,2 add ax,ax code ends end C aume cs:code code segment mov ax,2 add ax,ax mov ax,4c00h int 21h code ends end D assume cs:code code segment mov ax,2 add ax,ax mov ax,4c00h int 21h code ends 21. 对于如下程序 assume cs:code code segment start:mov ax,code mov ds,ax mov ax,0020h mov es,ax mov bx,0 s:mov al,bx mov es:bx,al inc bx loop s mov ax,4c00h int 21h code ends end 下列说法正确的是(C)。A指令mov ax,code改为mov ax,start对程序要实现的功能没有任何影响。 B程序不能通过编译,因为在loop指令之前,没有对寄存器cx进行设定。 C程序实现的功能是将程序的所有指令复制到内存中以0:200h为起始地址的一段内存空间中。 D程序实现的功能是用内存中以0:200h为起始地址的一段内存空间中的数据将程序的所有指令覆盖。 22.在Intel8086环境下,下列说法合理的是(C)。A 汇编语言程序载入内存后处于64K空间以外的数据和指令将无法使用和执行。 B 一个数据段命名为data,此标号代表这个数据段在内存中的起始地址。 C 如果载入的程序没有返回语句,那么当程序代码执行完毕,将继续读取后续内存空间存储的指令到CPU内部作为指令执行下去,直到遇到返回指令为止。 D 用DW定义进行的数据,只能够以字为单位访问。23. 关于8086、8088微机系列,下列说法哪个是正确的(D)。A)一个存储单元由16个二进制组成,简称字。B)当存储一个字数据时,低字节放高地址位,高字节放低地址位。C)在内存空间中,可以无限分配段,且段得大小不受限制。D)段与段之间可以邻接,也可以重叠。24生成EXE之后用Debug加载后,查看寄存器内容如下: ds=0c3e es=0c3e ss=0b4e cs=0b4f ip=0000 程序的起始地址的段地址是(B)。A 0c3e B 0c4e C 0c4f D 0 25. 在Intel8086环境下,对指令mov ax,bx描述错误的是(D)。A 指令中,源操作数的段地址默认为ds中的内容 B 指令中,源操作数的偏移地址为bx中的内容 C 指令执行后,(al)=(ds)*16+(bx),(ah)=(ds)*16+(bx)+1) D 指令执行后,(ds)*16+(bx)=(al),(ds)*16+(bx)+1)=(ah) 二、填空题(每空2分,共30分)1.通常所说的计算机系统包括_硬件_和_软件_两大部分。2. 8086CPU把1MB存储器分成若干逻辑段,段不能起始于任意地址,必须位于 _个字节的边界上。每个段最大为_字节,8086cpu中设置了4个寄存器用来存放逻辑段的段地址,它们是:_、_、_、_。3.若要源程序从标号START开始执行,源程序结束伪指令的格式为 _END START_。4.8086的地址总线有20根,寻址范围为_1M_字节。5.汇编语言源程序需经过_编译_程序汇编,_连接_程序连接才能生成可执行文件。6.十进制数369转换成8位二进制数为01110001,转换成对应的十六进制数为_ _71H_。 7. mov cx,5 s: mov ax,bx add bx,2 loop s 上面指令序列,当指令第一次执行到add bx,2时cx的值_5_。三、阅读程序题(每题5分,共10分)1已知21000h处字单元的内容为 BE00H,对于如下程序:(1) mov ax,2000h (2) mov ds,ax (3) mov bx,1000h (4) mov ax,bx (5) inc bx (6) inc bx (7) mov bx,ax (8) inc bx (9) inc bx (10) mov bx,ax (11) inc bx (12) mov bx,al (13) inc bx (14) mov bx,al 程序执行后,内存中字单元2000:1005中的内容为_000H_。2. assume cs:code code segment start: mov ax,3 jmp s1 s: mov bx,0 mov ax,bx s1: mov cx,3 s2: add ax,2 loop s2 s3: mov ax,4c00h int 21h code ends end s 上面代码执行到s3处的指令之前,ax的值是_6_。3. mov dx,0 mov ax,1001 mov bx,100 div bx 以上四条指令执行完后,ax值是_1_。 四、完善程序题(每题5分,共10分)1.完善下列程序:实现一次用内存0:0-0:15单元中的数据改写程序中定义的数据。assume cs:codesg codesg segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h start:mov ax,0 mov ds,ax mov bx,0

温馨提示

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

评论

0/150

提交评论