《汇编语言程序设计》复习题
汇编语言程序设计复习2(带答案)1
![汇编语言程序设计复习2(带答案)1](https://img.taocdn.com/s3/m/c76058c580eb6294dd886c8d.png)
汇编语言程序设计练习题2一、单项选择题(答案BDDBA BDADC CCAC CBBDA BDADA BCCB )1、使计算机执行某种操作的命令是( )A.宏指令B.指令C.伪指令D.语句2、某存储单元的物理地址是12345H,可以作为它的段地址有()。
A.2345H B.12345HC.12340H D.1234H3、8088/8086存储器分段,每个段不超过()A.64K个字B.32K个字节C.1兆个字节D.64K个字节4、计算机能直接识别并执行的语言是( )A.汇编语言B.机器语言C.高级语言D.低级语言5. 8086/8088系统执行传送指令MOV时()A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志6、以下各个指令中正确的是()。
A. MOV CS, DXB. MOV DS, BPC. IN 20H,ALD. MOV AH, BX7、下列对OUT指令的叙述正确的是()。
A. 实现从端口中读出数据B. 能直接访问的端口范围是0~1KBC. 能访问的端口为64KBitD. 只能用DX做为间接寻址的寄存器8、已有汇编语句“V AR EQU 1220H”,则语句“mov AX, V AR”中源操作数的寻址方式为()。
A. 立即寻址B. 直接寻址C. 寄存器间接寻址D. 基址寻址9、与MOV BX,OFFSET DATA1指令完全等效的指令是()。
A.MOV BX,DATA1B.LDS BX,DATA1C.LES BX,DATA1D.LEA BX,DATA110、下列指令中段默认为堆栈段的是()A.MOV AX,[BX+SI+10]B.ADD AX,ES:[SI]C.SUB BX,[BP][DI]D. MOV DX,[1000H]11、已知DS=2000H,ES=1000H, SI = 0800H,内存10880H开始的两个单元中存放5678H,内存20880H开始的两个单元中存放8765H,则语句“LEA BX,[SI+80H]”执行后BX 的值为()。
(完整版)汇编语言复习题
![(完整版)汇编语言复习题](https://img.taocdn.com/s3/m/6b30de94b52acfc788ebc989.png)
汇编语言程序设计复习题一、单项选择题1.假设(AL)=0FFH依次执行ADD AL,0FH指令后,标志位ZF和SF的状态分别为(A )A. 0和0B. 0和1C. 1和0D. 1和12.假设V AR为变量,指令MOV BX,V AR 的寻址方式是( A )A.直接寻址B.间接寻址C.立即寻址D.存储器寻址3.下列指令中,不影响标志位的是( C )A.SUB BX,BX B.ROR AL,1 C.JNC Lable D.AND AL,CL4.假定(DS)=4000H,(DI)=0100H,(40100H)=55H,(40101H)=0AAH,试问执行指令MOV BX,[DI]后,(BX)= ( C )A.0100H B.55AAHC.AA55H D.4100H5.执行下列哪一条指令后,就能用条件转移指令判断AL和BL寄存器中的最高位是否相同?(D )A. TEST AL BLB. CMP AL BLC. AND AL BLD. XOR AL BL 6.堆栈中当前出栈的存储单元地址是(A )A. SS*10H+SPB. SS*10H+BPC. SS*10+SPD. SS*10+BP7.已知V AR DW l,2,$+2,5,6 若汇编时V AR分配的偏移地址是0010H,则汇编后0014H单元的内容是( D )A.6H B.14H C.5H D.16H8.循环控制指令REPNZ继续执行循环的条件是(B )A. CX≠0且ZF=1B. CX≠0且ZF=0C. CX≠0或ZF=1D. CX≠0或ZF=09.设NUM=11011011B,指令“MOV AL,NUM SHL 3”执行后AL中的值是(B )A.11011011000BB.11011000BC.00011011BD.00011011011B10.下面XCHG指令语句中,语法正确的是(B)A. XCHG AX,DSB. XCHG BL,[BX]C. XCHG AL,OFHD. XCHG [SI],[DI]11.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是( A )A。
汇编语言程序设计
![汇编语言程序设计](https://img.taocdn.com/s3/m/5237e6d431126edb6e1a1020.png)
汇编语言程序设计复习资料1、(单选、2.5分)汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法________。
A、名字的第一个字符可以是大写英文字母及小写英文字母B、名字的第一个字符可以是字母、数字及、@、_C、名字的有效长度≤31 个字符D、在名字中不允许出现$参考答案:B2、(单选、2.5分)当程序顺序执行时,每取一条指令语句,IP 指针增加的值是__________。
A、1B、2C、3D、由指令长度决定的参考答案:D3、(单选、2.5分)下列属于合法的指令是_________。
A、MOV DS,ESB、MOV [SI],[DI]C、MOV AX,BLD、MOV [DI],BL参考答案:D4、(单选、2.5分)下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是________。
A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS 参考答案:B5、(单选、2.5分)下列传送指令中有语法错误的是_________。
A、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX参考答案:A6、(单选、2.5分)与MOV BX,OFFSET VAR 指令完全等效的指令是_________。
A、MOV BX,VARB、LDS BX,VARC、LES BX,VARD、LEA BX,VAR参考答案:D7、(单选、2.5分)在汇编语言程序中,对END 语句的叙述正确的是________。
A、END 语句是一可执行语句B、END 语句表示源程序到此结束C、END 语句表示程序执行到此结束D、END 语句在汇编后要产生机器码参考答案:C将DX 的内容除以2,正确的指令是_________。
A、DIV 2B、DIV DX,2C、SAR DX,1D、SHL DX,1参考答案:C9、(单选、2.5分)下列数值表达式和地址表达式中,错误的是_________。
《汇编语言程序设计》期末复习题和答案.doc
![《汇编语言程序设计》期末复习题和答案.doc](https://img.taocdn.com/s3/m/f0e30028c1c708a1294a4481.png)
《汇编语言程序设计》期末复习题及答案一、选择(30题)1.下列是8位带符号二进制数的补码,其中最大的是(B )。
B、000000012.在一段汇编语言程序中多次调用另一段程序,用宏指令比用子程序实现(C )C、占内存空间大,但速度快3.数据定义为:EE DB 3, 4CC DW 3456H, 6789H执行指令“MOV CX, WORD PTR EE+1” 后,(CX) = ( B )B、5604H4.有如下指令序列:MOV AL, 95HMOV CL, 2SAR AL, CL上述指令序列执行后,AL的内容是(D )D、0E5H5.设A=186m B=273R,C=0BB E把这三个数看成无符号数,则它们之间的关系是(D )D、A<B=C6.用一条指令实现寄存器BX和SI的内容相加,并将结果送入AX中,这条指令是(D )D、LEA AX, [BX] [SI]7.要从端口1234H中读入8位数据,其指令应是(C )C、MOV DX, 1234HIN AL, DX8.循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是(B )B、CX尹。
且ZF=O9.8088/8086存储器分段,每个段不超过(D )D、64K个字节10.表示过程定义结束的伪指令是(A )A、ENDP11.用来存放下一条将要执行的指令代码段地址的段寄存器是(D )D、CS12.假定(SS) =1000H, (SP) =0100H, (AX) =5609H,执行指令PUSH AX 后,存放数据56H的物理地址是(D )D、100FFH13.执行“SUB AX, [BP] [DI] ”指令,取源操作数时,使用的物理地址表达式是(A )A、16*SS+BP+DI14.设AX中有一带符号数8520H,执行“SA R AX, 1”指令后,AX中的值是(C )C、0C290H15.设(BX) =1234H, (DS) =2000H, (21234H) =5678H,则指令“LEA SI, [BX] ” 执行后的结果是:(B )B、SI=1234H16.测试BL中的数是否为负数,若为负数则转移至AA1处,横线处的指令应为(A )A、JNE17.设DF=O, (SI) =20H, (CX) =10,执行“REP LODSW"指令后,SI 中的内容是(C )C、34H18.在程序执行过程中,IP寄存器中始终保存的是(B )B、下一条指令的首地址19.设SP初值为2000H,执行指令“POP AX”后,SP的值是(A )A、2002H20.若AX=3500H, CX=56B8H,当AND AX, CX 指令执行后,AX= ( A )A、1400H21.汇编源程序时,出现语法错误的语句是(A )A、MOV DS, 1200H22.将数据1234H存放在存储单元中的伪指令是(C )C、DATA1 DB 34H, 12H23.下面指令执行后,可能改变AL寄存器内容的指令是(D )D、AND AL, BL24.操作数地址存放在寄存器的寻址方式称为(B )B、寄存器间接寻址25.用户为了解决自己的问题,用汇编语言所编写的程序,称为(B )B、汇编语言程序26.用DOS功能调用时,子功能调用的编号应放在(C )C、AH27.提供串指令中目的操作数地址的是(C )C、ES: [DI]28.在寄存器间接寻址方式下,能够提供有效地址的寄存器有(B )B、BX, BP, SI, DI29.已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是(A )A、2025 : 0F2A30.中断向量表中的每个中断向量所占内存空间为:(B )B、4个字节二、填空(30题)1.在用直接寻址方式寻址操作数时,系统对段地址的默认值在段寄存器DS 中。
最新《汇编语言程序设计》期末复习题-文库.资料
![最新《汇编语言程序设计》期末复习题-文库.资料](https://img.taocdn.com/s3/m/9306bd6079563c1ec4da7122.png)
一、填空题1.一个十进制数 35.625其对应的二进制数为 100011.101B 、十六进制数为23H2.将 8存放在一个字单元中 , 则该单元中二进制代码是 0008H3.计算机软件分为两个部分即系统软件和应用软件而汇编程序属于系统软件 , 汇编语言应用程序属于应用软件4.把汇编语言源程序翻译成计算机能够识别、执行的目标程序的软件称为汇编程序5.8086/8088 CPU内部一般用来存放数据的寄存器有 AX BX CX DX6.8086/8088 CPU内部用来存放段地址寄存器的有 CS DS SS ES7.逻辑地址由段地址与偏移地址组成8.一个语句的名字项可以是标号或变量 , 在程序中它们两个在书写形式上的主要区别是标号以冒号结尾而变量不以冒号结尾9. 在 PSW 中 , 用以记录当前运算结果特征信息的那些位称为状态标志位 , 一般是由 CPU自动设置。
10.存储器单元与物理地址的关系是一一对应 ,在一个逻辑段内 , 每个单元对应的段地址是相同的 ,而偏移地址是不同的11.在 I/O接口中 , 为每个可访问的寄存器分配的地址是端口地址12.用以指示当前堆栈栈顶的指针寄存器是 SP13.机器指令是一组规定计算机的操作类型及相关操作数的二进制代码14. 假设执行指令前 BX=5678H, CL=8,指令 ROL BX, CL 执行后 BX 的内容是7856H15.一条指令的基本结构一般由操作码字段和操作数字段两个部分组成。
16.8086/8088 存储器地址分段时,每个段起始地址的特征是二进制表示的地址中低四位都为 017.所谓“寻址方式”是指在指令中用以说明操作数所在地址或位置的方法18.在指令中直接给出操作数的寻址方式称为立即数寻址19.无符号数和带符号数的两组条件转移指令,每条指令都有完全等效的两个指令助记符,例如, JL 指令另一个指令助记符是 JNGE20.8086/8088指令系统中 , 用以描述 (说明寄存器操作数的寻址方式是寄存器寻址方式21.设 MASK 为一个变量 , 在“ MOV AX,MASK[SI+BX]”指令中 , 源操作数的寻址方式是基址变址寻址方式22.CPU执行“ JMP BX”指令只改变 2P 内容 ,而不改变 CS 内容。
汇编语言程序设计复习题答案
![汇编语言程序设计复习题答案](https://img.taocdn.com/s3/m/53eb204369eae009581bece9.png)
《汇编语言程序设计》复习题一、填空题1、8086CPU内部结构按功能分为两部分,即 BU(执行部件)和 BIU(总线接口部件)。
2、CPU中的总线接口部件BIU,根据执行部件EU的要求,完成CPU与主存储器或I/0端口之间的数据传送。
3、8086中的BIU由四个 16 位段寄存器、一个 16 位指令指针、 6 字节指令队列、 20 位地址加法器和总线控制电路组成。
4、8086/8088的执行部件EU由 8 个通用寄存器、 1 个专用寄存器、一个标志寄存器和 ALU 等构成。
5、根据功能不同,8086的标志位可分为状态标志和控制标志。
6、8086/8088构成的微机中,每个主存单元对应两种地址:段基值和偏移量。
7、8086CPU具有 20 根地址线,直接寻址能力可达 1M 。
8、逻辑地址由段基值和偏移量组成,其中的段基值是由段寄存器存储。
9、计算机的指令由操作码和地址码两部分组成。
10. 零地址指令是不带地址码的机器指令,其操作数是由隐含指定提供的。
11. 8088CPU中共有 14 个寄存器,这些寄存器为 16 位。
12. F标志寄存器共有9个标志位,除OF、SF、AF和CF外,还有 DF 、 IF 、 TF 、▁ ZF 和 PF ,其中用于记录是否产生进位的标志位是 CF 。
13. 标号和变量所具有的三种属性分别为段属性、偏移量属性和类型属性。
14. 操作数有三种类型,分别为常数操作数、寄存器操作数和存储器操作数。
15. 一个源程序中可以包含代码段、数据段堆栈段及附加段。
其中代码段是源程序中必不可少的,其它的段可有可无。
16. SEGMENT/ENDS称为段定义伪指令;ASSUME称为段寻址伪指令;NAME/END称为模块定义伪指令;源程序结束伪指令为 END ;过程定义伪指令为 PROC/ENDP 。
数据定义伪指令为 DB 、 DW 、DD 。
17. 一般DOS系统功能调用的步骤为:(1) 送入口参数到指定寄存器;(2)送功能号至AH ;(3)软中断指令INT 。
烟台大学《汇编语言程序设计》期末考试复习题及参考答案
![烟台大学《汇编语言程序设计》期末考试复习题及参考答案](https://img.taocdn.com/s3/m/57a7d8c2ccbff121dd3683e2.png)
B. 03200H
C. 20120H
D. 21200H
答 案:C
48、下列指令中不能将AX清0的指令是( )。(2分)
A. SUB AX,AX
B. TEST AX,0
C. XOR AX,AX
D. AND AX,0
答 案:B
49、设AL=0A8H,CX=2,CF=1,执行RCLAL,CL指令后,AL中的值为( )(2分)
A. 80H
B. 160H
C. 80
D. 160
答 案:D
3、设AL=0AH,下列指令执行后能使AL=05H的是( )(2分)
A.NOT AL
B.AND AL,0FH
C.XOR AL,0FH
D.OR AL,0FH
答 案:C
4、CPU要访问的某一存储单元的实际地址称(2分)
A.段地址
B.偏移地址
C.物理地址
CBW
(2分)
A. AX=0FF82H
B. AX=8082H
C. AX=0082H
D. AX=0F82H
答 案:A
31、下面的数据传送指令中,错误的操作是( )(2分)
A. MOV SS:(BX+DI),1000H
B. MOV DX,1000H
C. MOV WORDPTR(BX),1000H
D. MOV DS,2000H
add ax,0f510h
A. of=1
B. cf=1
C. sf=1
D. zf=1
答 案:C
12、JMPWORDPTR(DI)的源操作数的物理地址是( )(2分)
A. 16D×(DS)+(BX)+(SI)
《汇编语言程序设计》期末复习题百度文库
![《汇编语言程序设计》期末复习题百度文库](https://img.taocdn.com/s3/m/e2d63f3d5bcfa1c7aa00b52acfc789eb172d9e8a.png)
《汇编语言程序设计》期末复习题百度文库第一章:汇编语言基础知识概述在开始复习《汇编语言程序设计》之前,我们先来回顾一下汇编语言的基础知识。
1.1 汇编语言的定义和作用汇编语言是一种低级语言,可以直接操作计算机硬件,并且具有较高的执行效率。
它是机器语言的可读性表示,通过一系列指令来实现计算机的基本操作。
汇编语言在计算机系统中发挥着重要的作用,特别适合于编写底层程序和对性能要求较高的应用。
1.2 汇编语言的特点与高级语言相比,汇编语言具有以下特点:- 与硬件相关:汇编语言直接操作计算机硬件,可以实现对寄存器、内存及其他硬件资源的直接访问。
- 相对繁琐:由于直接操作硬件,所以汇编指令的书写比较繁琐,需要对计算机硬件有深入的了解。
- 执行效率高:汇编语言编写的程序执行效率高,能够充分发挥计算机硬件的性能。
1.3 汇编语言的基本概念在学习汇编语言时,需要了解以下基本概念:- 寄存器:汇编语言使用寄存器来存储数据和进行计算,常用的寄存器有通用寄存器和特殊寄存器等。
- 指令:汇编语言通过一系列指令来实现计算机的基本操作,如MOV、ADD、SUB等。
- 内存:汇编语言中使用内存来存储程序和数据,在编写程序时需要合理地管理内存。
- 标志位:用于记录计算过程中的状态信息,可以用于控制程序的执行流程。
第二章:汇编语言程序设计实践2.1 环境准备在进行汇编语言程序设计之前,需要正确配置环境,并安装相应的汇编语言开发工具。
一般来说,常用的汇编语言开发工具有MASM、NASM等。
2.2 汇编语言程序的编写编写汇编语言程序需要按照特定的格式和规范进行,一般包括以下几个步骤:- 定义程序入口:使用`start`指令定义程序的入口点。
- 导入库文件:将需要调用的库文件导入到程序中。
- 定义数据段:使用`data`关键字定义数据段,存放程序中用到的数据。
- 定义代码段:使用`code`关键字定义代码段,存放程序的主体逻辑。
- 定义子程序:可以将一些常用的代码逻辑封装成子程序,便于复用。
《汇编语言程序设计》课程知识 复习 学习材料 试题与参考答案
![《汇编语言程序设计》课程知识 复习 学习材料 试题与参考答案](https://img.taocdn.com/s3/m/fea3ff7dff4733687e21af45b307e87101f6f8bf.png)
《汇编语言程序设计》课程知识复习学习材料试题与参考答案一、单选题1.为了使MOV AX,VAR指令执行后,AX寄存器中的内容为4142H,下面哪一条数据定义会产生不正确的结果?(C)A.VAR DW 4142HB.VAR DW 16706C.VAR DB 42H,41HD.VAR DW ‘AB’2.关于8086/8088微机系列,下列说法哪个是正确的(D)A.一个存储单元由16个二进制位组成,简称字。
B.当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C.在内存中,可以无限分配段,且段的大小不受限制。
D.段与段之间可以邻接,也可以重叠。
3.宏指令库以(C)格式存放在磁盘上。
A.可执行代码B.目标代码C.源代码4.计算机处理问题中会碰到大量的字符.符号,对此必须采用统一的二进制编码。
目前,微机中普遍采用的是( D)码。
A.BCD码B.二进制码C.十六进制码D.ASCII码5.运算器能够完成(C)运算。
A.算术运算B.逻辑运算C.算术运算和逻辑运算D.加减运算6.十六进制数88H,可表示成下面几种形式,请找出错误的表示(D)A.无符号十进制数136B.带符号十进制数-120C.压缩型BCD十进制数88D.8位二进制数-8的补码表示7.用MOV指令将十进制数89以非压缩BCD码格式送入AX,可使用的指令是(B )A.MOV AX,89B.MOV AX,0809HC.MOV AX,89HD.MOV AX,08098.在执行下列指令时,需要使用段寄存器DS的指令是(D)A.STOSWB.ADD AL,CLC.NEG BXD.INC DA[BX]9.假设AL=28H,执行ROL AL,1指令之后的情况是(D ) P125A.AL=14H, CF=1B.AL=50H, CF=1C.AL=14H, CF=0D.AL=50H, CF=010.设AL=04H,BL=0F8H,执行IMUL BL指令后,结果是(D )A.AX=0032HB.AX=00E0HC.AX=03E0HD.AX=0FFE0H11.JMP SI的目标地址偏移量为(A)。
汇编语言程序设计复习(附答案完整版)
![汇编语言程序设计复习(附答案完整版)](https://img.taocdn.com/s3/m/64cfd3c0da38376baf1faebe.png)
一、选择1.下面指令执行后,改变AL寄存器内容的指令是( D )。
A.TEST AL,02HB.OR AL,ALC.CMP AL,BLD.AND AL,BL2.对寄存器AX的内容乘以4的正确指令序列是( B )。
A.SHR AX,1 /SHR AX,1B.SHL AX,1/ SHL,AX,1C.ROL AX,1 /ROL AX,1D.RCR AX,1/ RCR AX,13.设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是( A )A.85B92HB.86192HC.BB690HD.12169H4.指令JMP FAR PTR DONE属于 CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址5.将DX的内容除以2,正确的指令是 CA.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,16.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( D )。
A.CMPB.SUBC.ANDD.MOV7.汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( B )。
A.名字项B.操作项C.操作数项D.注释项8.假设执行ADD指令后AX=006EH,再执行AAA指令,AX中的值是( B )A. 14HB. 0104HC. 74HD. 04H9.用MOV指令将十进制数89以非压缩BCD码格式存入AX,可使用的指令是( D )A. MOV AX,89B. MOV AX,0809C. MOV AX,89HD. MOV AX,0809H10.下列语句中能与“DA1 DB 32H,34H”语句等效的是( A )A. MOV DA1,32HB. MOV DA1,32C. MOV WORD PTR DA1,3234HD. MOV WORD PTR DA1,‘24’MOV DA1+1,34H MOV DA1+1,3411.使用DOS功能调用时,子程序的编号应放在寄存器中( A )A. AHB. ALC. AXD. 任意指定12.下列语句中能实现留空8个字节单元的语句是( D )A. DA1 DT ?B.DA2 DW ?,?C. DA3 DD ?D.DA4 DQ ?13.指令JMP FAR PTR DONE属于CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址14.下列叙述不正确的是BA. 在不改变堆栈段寄存器的情况下,堆栈大小为64KBB. 紧跟设置堆栈段寄存器指令可以是设置堆栈指针以外的任何指令C. 中断服务程序的返回地址在堆栈中D. 堆栈中数据存放的特点是先进后出15.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是CA.12CSBH B.12B6BH C.12C59H D.12BFEH16.在下列指令的表示中,不正确的是CA.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC [BX]D.MUL CL17.在进行二重循环程序设计时,下列描述正确的是AA.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内18.条件转移指令JNE的测试条件为AA.ZF=0 B.CF=0 C.ZF=1 D.CF=119.将DX的内容除以2,正确的指令是CA.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,120.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在(A )中。
汇编语言程序设计复习题
![汇编语言程序设计复习题](https://img.taocdn.com/s3/m/6a4290725b8102d276a20029bd64783e09127d34.png)
汇编语言程序设计复习题汇编语言程序设计复习题汇编语言是一种低级语言,它直接操作计算机的硬件,具有高效性和灵活性。
在计算机科学和工程领域,汇编语言程序设计是一门重要的课程。
下面将给出一些汇编语言程序设计的复习题,帮助读者巩固和加深对该领域的理解。
1. 请写出一段汇编语言代码,实现将一个字节的数据存储到内存地址0x100处。
答案:```assemblyMOV [0x100], AL```2. 请写出一段汇编语言代码,实现将寄存器AX中的值加1。
答案:```assemblyINC AX```3. 请写出一段汇编语言代码,实现将两个寄存器BX和CX中的值相加,并将结果存储到寄存器DX中。
答案:```assemblyADD DX, BXADD DX, CX```4. 请写出一段汇编语言代码,实现将一个字节的数据从内存地址0x200处读取,并存储到寄存器AL中。
答案:```assemblyMOV AL, [0x200]```5. 请写出一段汇编语言代码,实现将寄存器AX中的值存储到内存地址0x300处。
答案:```assemblyMOV [0x300], AX```6. 请写出一段汇编语言代码,实现将寄存器AX中的值与寄存器BX中的值比较,并根据比较结果设置标志位。
答案:```assemblyCMP AX, BX```7. 请写出一段汇编语言代码,实现将两个寄存器CX和DX中的值相乘,并将结果存储到寄存器AX中。
答案:```assemblyMUL CX, DX```8. 请写出一段汇编语言代码,实现将两个寄存器BX和CX中的值相减,并将结果存储到寄存器AX中。
答案:```assemblySUB AX, BXSUB AX, CX```9. 请写出一段汇编语言代码,实现将一个字节的数据从内存地址0x400处读取,并存储到寄存器AL中,然后将AL中的值移位1位,最后将结果存储到内存地址0x500处。
答案:```assemblyMOV AL, [0x400]SHL AL, 1MOV [0x500], AL```10. 请写出一段汇编语言代码,实现将寄存器AX中的值与寄存器BX中的值相除,并将商存储到寄存器DX中,余数存储到寄存器AX中。
《汇编语言程序设计》必考试题及答案
![《汇编语言程序设计》必考试题及答案](https://img.taocdn.com/s3/m/14b947a8f021dd36a32d7375a417866fb84ac0e4.png)
汇编语言程序设计试题及答案一.名词解释(本大题共5小题,每小题3分,共15分)试解释下列名词的含义。
1.寄存器:计算机系统内,位于CPU内部的存储单元,CPU访问此类存储单元不需要使用总线。
2.物理地址:CPU通过地址总线向外发送的20位地址,在访问内存单元前,CPU必须先将CPU内部的逻辑地址转换为物理地址。
3.段基值:逻辑地址的一个组成部分,用于指示一个段在内存中的起始地址。
4.寻址方式:指令获取操作数的方式。
5.补码:计算机系统内部用于表示带符号数的一种编码,正整数的补码为其真值本身,负整数的补码为其真值变反加1的结果。
二.计算题(本大题共5小题,每小题4分,共20分)试按照各小题的要求给出计算结果。
1.将十进制数100分别转换为二进制、十六进制数,它们的表示形式分别为多少?答案:二进制为 01100100B,十六进制为64H2.假设(DS)=0C00H,(BX)=0210H,对于指令MOV DS:100H[BX],AL,其目的操作数的物理地址为多少?答案:EA = (BX)+0100H = 0310H,物理地址 = (DS)*16 + EA = 0C000H + 0310H = 0C310H3.假设(BX)=0100H,(SI)=0020H,对于指令ADD DL,[BX][SI],其源操作数的偏移量为多少?答案:EA = (BX)+(SI)+ 0 = 0120H4.假设当前(SP)=0060H,连续执行5条PUSH指令后,(SP)=?答案:每执行一条PUSH指令,(SP)被减2,因此执行5条PUSH指令后,(SP)=0060H – 5*2 =0060H -000AH = 0056H5.对于一个十进制数– 80,其二进制补码表示形式为多少?答案:首先求得二进制真值为– 01010000B,负数补码为变反加1的结果,即 10110000B三.排错题(本大题共4小题,每小题5分,共20分)每小题列出了一条指令,判断该指令有无语法错误,如果存在语法错误,请指出具体的错误原因,判断正确给2分,分析正确给3分,判断错误不给分。
汇编语言程序设计专科复习题及答案专科复习题
![汇编语言程序设计专科复习题及答案专科复习题](https://img.taocdn.com/s3/m/12e113aced3a87c24028915f804d2b160a4e8647.png)
汇编语言程序设计专科复习题及答案专科复习题复习题一一、单项选择题1.对于有符号的数来说,下列哪个值最大()A:0F8H B:11010011B C:82 D:123Q2.下列有关汇编语言中标号的命名规则中,错误的是(D )A:通常由字母打头的字符、数字串组成B:标号长度不能超过31个字符C:?和$不能单独作为标号D:.号不可位于标号首3.8088/8086存储器分段,每个段不超过()A.64K个字B.32K个字节C.1兆个字节D.64K个字节4.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式()A:寄存器寻址B:相对基址变址寻址C:变址寻址D:基址变址寻址5.若AX= - 15要得到AX=15应执行的指令是()A.NEG AXB.NOT AXC.INC AXD.DEC AX6.8086/8088系统执行传送指令MOV时()A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志7.若要求一个操作数中的若干位维持不变,若干位置“1”,可以使用()A:NOT B:OR C:AND D:XOR8.下列指令中段默认为堆栈段的是()A.MOV AX,[BX+SI+10]B.ADD AX,ES:[SI]C.SUB [BX],[BP][DI]D. MOV DX,[1000H]9.关于8086/8088微机系列,下列说法哪个是正确的()A:一个存储单元由16个二进制位组成,简称字。
B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C:在内存空间中,可以无限分配段,且段的大小不受限制。
D:段与段之间可以邻接,也可以重叠。
10.下列关于堆栈的说法,错误的是()A:以“先入后出”为原则。
B:栈区最高地址单元的前一个单元为栈底。
C:运行中SP寄存器动态跟踪栈顶位置。
D:压栈和弹出都是以字节为单位。
11.表示过程定义结束的伪指令是()A.ENDPB.ENDSC.ENDD.ENDM 12.BUF1 DB 3 DUP(0,2 DUP (1,2),3)COUNT EQU $-BUF1符号COUNT等价的值是()A.6B.18C.16D.9 13.下列标志位中,可以用来判断计算结果正负的是()A:PF B:SF C:DF D:OF14.下列指令正确的是()A. MOV [100H], [BX]B.MOV DS, ESC. ADD V[BX], CXD.MOV AX, 34H15.下列哪个寄存器是属于指针寄存器()A:SI B:DX C:SP D:ES16.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。
《汇编语言程序设计》期末复习题
![《汇编语言程序设计》期末复习题](https://img.taocdn.com/s3/m/620922cc6137ee06eff91815.png)
一、填空题1.一个十进制数35.625其对应的二进制数为 100011.101B 、十六进制数为23H2.将8存放在一个字单元中,则该单元中二进制代码是 0008H3.计算机软件分为两个部分即系统软件和应用软件而汇编程序属于系统软件 , 汇编语言应用程序属于应用软件4.把汇编语言源程序翻译成计算机能够识别、执行的目标程序的软件称为汇编程序5.8086/8088 CPU内部一般用来存放数据的寄存器有AX BX CX DX6.8086/8088 CPU内部用来存放段地址寄存器的有 CS DS SS ES7.逻辑地址由段地址与偏移地址组成8.一个语句的名字项可以是标号或变量,在程序中它们两个在书写形式上的主要区别是标号以冒号结尾而变量不以冒号结尾9.在PSW中,用以记录当前运算结果特征信息的那些位称为状态标志位 , 一般是由 CPU自动设置。
10.存储器单元与物理地址的关系是一一对应 ,在一个逻辑段内,每个单元对应的段地址是相同的 ,而偏移地址是不同的11.在I/O接口中,为每个可访问的寄存器分配的地址是端口地址12.用以指示当前堆栈栈顶的指针寄存器是 SP13.机器指令是一组规定计算机的操作类型及相关操作数的二进制代码14. 假设执行指令前BX=5678H,CL=8,指令ROL BX,CL执行后BX的内容是 7856H15.一条指令的基本结构一般由操作码字段和操作数字段两个部分组成。
16.8086/8088 存储器地址分段时,每个段起始地址的特征是二进制表示的地址中低四位都为017.所谓“寻址方式”是指在指令中用以说明操作数所在地址或位置的方法18.在指令中直接给出操作数的寻址方式称为立即数寻址19.无符号数和带符号数的两组条件转移指令,每条指令都有完全等效的两个指令助记符,例如,JL 指令另一个指令助记符是 JNGE20.8086/8088指令系统中,用以描述(说明)寄存器操作数的寻址方式是寄存器寻址方式21.设MASK为一个变量,在“MOV AX,MASK[SI+BX]”指令中,源操作数的寻址方式是基址变址寻址方式22.CPU执行“JMP BX”指令只改变 2P 内容 ,而不改变 CS 内容。
1!《汇编语言程序设计》试题
![1!《汇编语言程序设计》试题](https://img.taocdn.com/s3/m/453f1ccca48da0116c175f0e7cd184254b351b77.png)
1!《汇编语⾔程序设计》试题《汇编语⾔程序设计》试题1.将8进制的数23转化为3进制的数,其值为(201)。
23(8)=2*8^1+3*8^0=19(10) 19(10)=201(3)2.汇编语⾔程序的开发过程要经历编辑、(汇编)、链接和运⾏调试等⼏个阶段。
3.Intel 8086 CPU中的段寄存器有CS、DS、ES和(SS)。
段寄存器CS、DS、ES、SS4.汇编语⾔指令中操作数分为⽴即数操作数、寄存器操作数和(内存操作数)三类。
5.永远指向堆栈段栈顶单元的寄存器为(SP)。
6. 英⽂⼤写字母A的ASCII码为41H,则英⽂⼤写字母D的ASCII码为(44H)。
A=41H B=42H C=43H D=44H...7. BCD码分为压缩的BCD码和(⾮压缩BCD码)两类。
8. 8086/8088CPU有(20)根地址线,可寻址1M字节的内存空间。
8086/8088CPU提供的地址总线有20位,2的20次⽅等于1M同理,寄存器是16位的,所以就是2的16次⽅等于64K9.80x86CPU有实模式和保护模式两种操作模式,⽽8086/8088CPU只能⼯作在(实)模式下。
10.(堆栈)是内存中的⼀块特定区域,其中的内容是按照后进先出的原则进⾏操作的。
11. 8086/8088CPU中变址寄存器有SI和(DI )两个。
12.主程序和⼦程序之间的参数传递通常有如下三种⽅法:通过寄存器传递、通过存储器传递和通过(堆栈)传递。
13.循环指令loop指令隐含的计数器是(CX )寄存器。
14. 已知8位⼆进制表⽰的整数X的补码为10011011,则-X的补码的⼆进制编码为(01100101)。
先各位取反,0变成1,1变成0。
然后最低位加⼀。
例⼦11111111,0011100;X=10011011 -X=01100101 -2X=(-X左移⼀位补零,多的那位忽略)11001010;1/2 X=11001101(看X,右移⼀位原来第⼀位是什么现在还是什么) ;-1/2X=00110010(同理,看-X)15.有如下定义:BUF DW 4,6,$+2,若汇编时BUF分配的偏移地址是0042H,则汇编后BUF数组中第三个字的值是(0048h)。
汇编语言程序设计复习题
![汇编语言程序设计复习题](https://img.taocdn.com/s3/m/a606043fce2f0066f53322ee.png)
围内。( )
A. -126~129
B. -128~127
C. -127~128 D. -129~126
23. 在循环次数已知的情况下,采用哪种方法控制循环程
序最方便。( )
A. 正计数法
B. 倒计数法
C. 寄存器终值法 D. 条件控制法
24. 当CX=0时,REP MOVSB执行的次数为。 ( )
A. 1次
3. 下面的子程序不完整,将它补充完整。
子程序的说明文件如下:
子程序名:FMAX
子程序功能: 从一组带符号的字节数据中找一个最大数
入口条件: DS:SI=数据的首地址, CX=数据的个数
出口条件: AL=最大数
FMAX PROC
FMAX1: MOV AL,[SI]
FMAX2: INC SI
DEC CX
A. BX的内容
B. SP+BX之和
B. IP+[BX]之和 D. BX指出的内存单元之内容
15.A≥B时转移的转移指令为(A、B为带符号数) ( )
A. JA
B. JAE
C. JG
D. JGE
16. 已知X,Y为带符号数, 两数比较后, 欲判断X≤Y发生
转移, 应使用指令 ( )
A. JBE
B. JL
B. 0,1
C. 1,0
D. 1,1
19. 条 件 转 移 指 令 的 转 移 目 标 距 该 指 令 的 距 离 范 围 为
()
A. -128~127
B. -126~129
C. -130~125
D. -127~128
20. NEXT是程序中标号,下述哪个程序段不能实现转移到
NEXT•语句执行 ( )
《汇编语言程序设计》考试练习题及答案
![《汇编语言程序设计》考试练习题及答案](https://img.taocdn.com/s3/m/662cbe38cbaedd3383c4bb4cf7ec4afe05a1b154.png)
《汇编语言程序设计》考试练习题及答案一、单选题1. 计算机中存取信息或数据的最小单位为()A 、位B 、字节C 、字D 、双字答案:B2. 调用子程序的指令为()A 、CALLB 、RETC 、HLTD 、NOP答案:A3. DOS功能调用是通过()指令去调用DOS系统提供的软件中断处理程序A 、INT 21HB 、INT 23HC 、INT 12HD 、INT 11H答案:A4. 满足()时,CPU允许中断A 、IF=0B 、IF=1C 、DF=0D 、DF=1答案:B5. 完成对CL寄存器的内容乘以4的正确操作是()。
A 、ROL CL,1 ROL CL, 1B 、MUL 4C 、SHL CL, 1 SHL CL, 1D 、MOV CL , 2 SHL CL, CL答案:C6. 下面寄存器中可以分为两个独立8位寄存器的是()A 、AXB 、DIC 、CSD 、SI答案:A7. ()是用二进制编码的机器指令的集合及一组使用机器指令的规则,是CPU能直接识别的唯一语言。
A 、汇编语言B 、机器语言C 、JAVA语言D 、C语言答案:B8. 源程序模块结束语句为()A 、ORGB 、ENDC 、SEGMENTD 、START答案:B9. 8位补码表示的有符号数的表示范围是()A 、0~255B 、-128~+127C 、0~65535D 、-32768~+32767答案:B10. 在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来,下列说法正确的是()A 、占内存空间小,但速度慢B 、占内存空间大,但速度快C 、占内存空间相同,但速度快D 、占内存空间相同,但速度慢答案:B11. 与LEABX ,BUF指令完全等效的指令是()。
A 、MOV BX ,BUFB 、LDS BX ,BUFC 、MOV BX ,OFFSET BUFD 、MOV BX ,WORD PTR BUF答案:C12. 14的非压缩BCD码为()A 、00010100B 、01000001C 、0000000000010100D 、0000000100000100答案:D13. 要实现使BETA的值为56,应采用的语句是()A 、BETA DB 56B 、BETA DB 56HC 、BETA EQU 56HD 、BETA EQU 56答案:D14. ()不可以做目的操作数A 、立即数B 、寄存器C 、存储器操作数D 、累加器答案:A15. 计算机一般由中央处理器、存储器和输入/输出子系统组成,其中()可以存放程序、数据、信息及中间结果。
《汇编语言程序设计》必考试题及答案
![《汇编语言程序设计》必考试题及答案](https://img.taocdn.com/s3/m/fbc90295c0c708a1284ac850ad02de80d4d806a0.png)
《汇编语言程序设计》必考试题及答案一、选择题1. 汇编语言属于 ____。
A. 高级语言B. 机器语言C. 低级语言D. 自然语言答案:C. 低级语言2. 在汇编语言中,寄存器eax主要用于 ____。
A. 存储返回值B. 存储函数参数C. 存储局部变量D. 存储全局变量答案:A. 存储返回值3. 汇编语言中,jmp指令用于 ____。
A. 设置循环条件B. 调用子程序C. 跳转到指定地址D. 返回主程序答案:C. 跳转到指定地址二、简答题1. 请简述汇编语言与高级语言的区别。
汇编语言是一种低级语言,使用助记符来代表机器指令,每条汇编指令对应一条机器指令。
而高级语言更加抽象,采用更接近人类自然语言的表达方式,通过编译器将高级语言编写的程序转换为机器语言。
2. 请列举汇编语言常用的寄存器及其作用。
汇编语言常用的寄存器包括:- eax:主要用于存储返回值。
- ebx、ecx、edx:通用寄存器,用于暂存计算结果。
- esi、edi:源操作数寄存器和目的操作数寄存器,用于存储数据传输时的源地址和目的地址。
- ebp、esp:用于管理函数调用过程中的栈帧。
- eip:指令指针寄存器,存储下一条将要执行的机器指令的地址。
三、编程题请编写汇编语言程序,实现从键盘输入两个数,并将其相加后输出的功能。
```assemblysection .dataprompt db '请输入两个数,以空格分隔:', 0result db '两数相加的结果为:%d', 0section .bssnum1 resb 4num2 resb 4section .textglobal _start_start:; 输出提示信息mov eax, 4mov ebx, 1mov ecx, promptmov edx, 20int 0x80; 输入第一个数mov ebx, 0mov ecx, num1 mov edx, 4int 0x80; 输入第二个数 mov eax, 3mov ebx, 0mov ecx, num2 mov edx, 4int 0x80; 将两个数相加 mov eax, [num1] mov ebx, [num2] add eax, ebx; 输出结果mov ebx, eaxmov eax, 1mov ecx, resultint 0x80; 退出程序mov eax, 1xor ebx, ebxint 0x80```以上为一个简单的汇编语言程序,实现了从键盘输入两个数,并将其相加后输出的功能。
汇编语言程序设计复习
![汇编语言程序设计复习](https://img.taocdn.com/s3/m/dbd277621ed9ad51f01df2ec.png)
5、 (1)、编制汇编语言的一般步骤 、 汇编语言的一般步骤: 、编制汇编语言的一般步骤 (2)、顺序程序设计方法 、顺序程序设计方法: 查表法 6、 (1)、 I/O指令 、 指令: 、 指令 IN AL, PORT OUT PORT, AL (2)、 I/O端口的编址方式 、 端口的编址方式 (3)、 I/O设备的数据传送方式 设备的数据传送方式: 、 设备的数据传送方式 程序查询传送方式 程序中断传送方式 直接存储器存取(DMA)方式 直接存储器存取 方式
7、8、 9 、 、 、 (1)、循环、分支设计方法; 、循环、分支设计方法; (2)、定义子程序时如何确定其属性 、 寄存器的保护和恢复 子程序的参数传递: 子程序的参数传递
用寄存器传递参数 用存储单元传递参数 用堆栈传递参数
11、宏定义、宏调用和宏展开(标号 宏定义、宏调用和宏展开 标号 标号) 宏定义 宏指令和子程序的区别
(2)、 8086的指令系统 、 的指令系统 非法指令的主要现象(课件上有总结) Ⅰ 、非法指令的主要现象(课件上有总结) 对标志位的影响 Ⅱ 、对标志位的影响 常用重要指令: Ⅲ 、常用重要指令: (a)传送类指令: )传送类指令: MOV PUSH POP(先进后出,SP的 变化) (先进后出, 的 变化) XCHG、 XLAT 、 LEA(地址传送和内容传送的区别 ) ( (b)数据操作类指令: )数据操作类指令: ADD、ADC、INC; 、 、 ; SUB、DEC、NEG、CMP 、 、 、 AND、OR、NOT、XOR、TEST ; 、 、 、 、 SHL、SHR 、ROL、ROR 、 、
题型: 题型: 1、填空 (30分) 、 分 2、单项选择(20分 2、单项选择(20分) 3、分析题 (30分) 、 分 4、程序设计(20分) 、程序设计( 分
汇编语言程序设计复习题-xs
![汇编语言程序设计复习题-xs](https://img.taocdn.com/s3/m/94e06a87ec3a87c24028c4ea.png)
汇编语言程序设计复习题04-06/10-00/10(注:将答案写入答题栏内,否则无效)一、单项选择题1.CPU要访问的某一存储单元的实际地址称( c )A.段地址B.偏移地址C.物理地址D.逻辑地址2.某存储单元的物理地址是12345H,可以作为它的段地址有( d )A.2345H B.12345HC.12340H D.1234H3.执行后使BX=0的同时也使CF=0,OF=0的指令是( a )A.XOR BX,BX B.OR BX,BXC.AND BX,BX D.CMP BX,BX4.循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是( b )A.CX≠0且ZF=1 B.CX≠0且ZF=0C.CX≠0或ZF=1 D.CX≠0或ZF=05.在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位值送入AH中,对这进位值的操作应是( c )A.DAA校正指令的功能已自动加在AH中B.进位值在AF中,校正后根据AF内容再加在AH中C.进位值在CF中,校正后根据CF内容再加在AH中D.进位值在AL最高位上,校正后根据AL最高位内容再加在AH中6.AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是( c )A.指令XOR AX,AX执行后,AX内容不变,但设置了标志位B.指令OR DX,1000H执行后,将DX最高位置1,其余各位置0C.指令AND AX,OFH执行后,分离出AL低四位D.NOT AX,执行后,将AX清07.在执行下列指令时,需要使用段寄存器DS的指令是( d )A.STOSW B.ADD AL,CLC.NEG BX D.INC DA[BX]8.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是( b )A.ADD BH,01H B.OR BH,01HC.XOR BH,01H D.TEST BH,01H9.完成对CL寄存器的内容乘以4的正确操作是( c )A.ROL CL,1 B.MUL 4ROL CL,1C.SHL CL,1 D.MOV CL,2SHL CL,1 SHL CL,CL10.下面各传送指令中,正确的是( c )A.MOV [DI],[SI] B.MOV[DX+DI],ALC.MOV WORD PTR [BX],0100H D.MOV AL,BX11.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法( b )A.名字的第一个字符可以是大写英文字母及小写英文字母B.名字的第一个字符可以是字母、数字及、@、_C.名字的有效长度≤31个字符D.在名字中不允许出现$12.要实现使BETA的值为56,应采用语句为( c )A.BETA DB 56 B.BETA DB 56HC.BETA EQU 56 D.BETA EQU 56H13.REPZ CMPSW指令,重复执行的终止条件是( a )A.CX=0或ZF=0 B.CX=0且ZF=0C.CX=0或ZF=1 D.CX=0且ZF=114.下面程序段执行后,AL中的内容是( b )MOV AX,8833HADD AL,AHDAAA.21 B.21HC.0C1H D.0DDH15.比较两个带符号的数A、B,当A=B时程序转移,测试的条件为( a )A.ZF=1 B.ZF=0C.SF=1 D.SF=0一,单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)1.指令JMP FAR PTR DONE属于 CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址2.下列叙述正确的是 CA.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是 CA.12CSBH B.12B6BH C.12C59H D.12BFEH4.在下列指令的表示中,不正确的是 CA.MOV AL,[BX+SI] B.JMP SHORT DONI C.DEC [BX] D.MUL CL5.在进行二重循环程序设计时,下列描述正确的是 AA.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内6.条件转移指令JNE的测试条件为 AA.ZF=0 B.CF=0 C.ZF=1 D.CF=17.8086CPU在基址加变址的寻址方式中,变址寄存器可以为 DA.BX或CX B.CX或SI C.DX或SI D.SI或DI8.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在()中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
)
D.MOV CL,2
B. MOV[DX+DI],AL D. MOV AL,BX
15. MOV AX,ES:[1000H] 源操作数的寻址方式是( A. 立即寻址 B. 直接寻址 C. 变址寻址
) D. 基址寻址 )Fra bibliotek16.对 AND,OR,XOR,NOT 四条逻辑运算指令,下面正确的是( A.指令 XOR AX,AX 执行后,AX 内容不变,但设置了标志位 B.指令 OR DX,1000H 执行后,将 DX 最高位置 1,其余各位置 0 C.指令 AND AX,OFH 执行后,分离出 AL 低四位 D.NOT AX,执行后,将 AX 清 0 17.若 AX=1020H, BX=1200H,CF=1,则 SBB AX,BX 的执行结果为( A. 0EF1FH B. 0FEFFH C. 0FE1FH D. 0FE21H
C. 0FFH C. 49H C. AL C. 7EH C. -2
3.已知[X]补=98H, 则[X]补/2=(
.在计算机的 CPU 中执行算术逻辑运算的部件是(
5.将 125 转换成二进制数的结果(
6.执行指令 PUCH CX 后堆栈指针 SP 自动( 7.在标志寄存器中表示溢出的标志( C. OF
C. AND BX,BX ) D.SEG
11.取变量偏移属性的分析运算符是( 12.已知 X=76, 则[X]补=(
13.完成对 CL 寄存器的内容乘以 4 的正确操作是( A.ROL CL,1 C.SHL CL,1 ) 14.下面各传送指令中,正确的是( A. MOV [DI],[SI] C. MOV WORD PTR [BX],0100H
21.比较两个带符号的数 A、B,当 A=B 时程序转移,测试的条件为( B. ZF=0 22.在段定义中,( )是默认的定位类型。 D.BYTE ) D.[BP+BX] ) C. 变址寻址 ) C. 变址寻址 ) C. 直接寻址 C. 0FE20H ) D. 8138H C. 9138H C.[BX+2]
) D. 14H D. FFFFH
31.指令 MOV BX,[SI][BX],若(SI)=3500H, SS=1200H, DS=1000H, BX=1000H,那么物 理地址为( ) A. 17500H B. 16500H C. 14500H D. 13500H 32.指令 MOV AX,COUNT[BX],若 COUNT=0400H, SS=1200H,DS=1000H,BX=5000H,那么物理 地址为( ) A. 17400H B. 17000H C. 15400H D. 14500H SS=7200H, D. 78700H D、END D、AL 和 20H D、?ABC D、[BP+BX] D、-2 ) D、STACK D、疑问号 D、BYTE ) C、操作数域 ) C、绝对寻址 D、 D、注释域 DS=5400H, 33. 指 令 MOV DX,DELTA[BX][SI], 若 DELTA=1300H, BX=0500H,SI=4000H,那么物理地址为( ) A. 6F300H A、ENDP A、MOV A、AXYZ A、[BX-SI] A、2 A、NONE A、表达式 41.在段定义中,( A、PAGE A、标号名字域 A、直接寻址 间接寻址 B. 77800H ) C、END MAIN ) C、AL 或 20H ) C、@ATT ) C、[BX+2] C、4 C、COMMON C、DUP C、WORD ) B、ENDS B、SKY B、5SKY B、[BP-DI] B、-1 B、PUBLIC B、字符串 B、PARA B、助记符域 C. 59800H 34.源程序结束语句为(
B.PARA C.WORD B.[BP-DI]
23.下列地址表达式正确的是(
24.MOV AX,ES:[1000H] 源操作数的寻址方式是( B. 直接寻址 B. 立即寻址 B. 基址寻址 B. 0FEFFH B. 8039H 25.MOV AX,ES:COUNT[DI] 源操作数的寻址方式是( 26.MOV DX,COUNT[BP][DI]的源操作数的寻址方式是(
42.汇编语言指令中唯一不可缺少的域是( 43.段内直接转移指令采用的寻址方式是( B、相对寻址
44.下列指令中等价的是( A、JC 和 JO 和 JG A、DS*2*2*2*2+SI C、ES*2*2*2*2+SI 46.条件转移指令的转移范围( A、-128 -- +127 C、0 -- +255 A、段地址和偏移地址 C、偏移地址
35.SKY: MOV AL,20H 中操作数为( 36.下列为不合法的标志符的是( 37.下列地址表达式正确的是( 38.NEAR 标号的类型值为(
39.组合类型中本段与其它段无逻辑关系,每段均有自己的基址的组合类型是( 40.分析运算符 LENGTH 只有用( )定义的变量才有意义。
)是默认的定位类型。
) B、JNC 和 JNO C、JP 和 JPE ) D、JA
45.在 MOVB 指令中,其目的串的物理地址为( B、DS*2*2*2*2+DI D、ES*2*2*2*2+DI )
B、-32768 -- +32767 D、0 -- +65535 ) B、段地址 D. 不用保存
47.执行段间调用指令 CALL 时,首先保护断点的(
4. 下列语句在存储器中分别为变量分配多少字节? 5.解释下列指令序列完成的功能:
ROR BX,CL 8.设置一个数据段为 DATAX,在此段中按顺序定义以下内容: (1) X1 为一个显示串“Display string”,加回车,最后以'$'结尾。 (2) X2 存放一个逻辑地址 A000H:0122H。 9. 已知数据段有如下定义: ORG 1000H X DB 12H Y DW X Z DD Y (DS)=3879H, (BX)=1000H, (SI)=0002H 求下列指令执行完后指定寄存器的内容 MOV AX, [1000H] ; (AX)=( ) MOV BX, [BX]; (AX)= ( ) MOV AX, [BX+SI]; (AX)= ( ) MOV AX, [Y+1]; (AX)= ( ) LEA DX, X; (DX)= ( ) 10. 说明下述四条指令中哪些需要加上 PTR 伪操作? X1 DW 10H, 20H Y1 DW 1000H MOV BX, OFFSET X1 (1) MOV AL, X1 (2) MOV DL, [BX+2] (3) SUB [BX],2 (4) ADD AL, Y1+1
《汇编语言程序设计》复习题
一、单项选择题
1.在微机系统中分析并控制指令执行的部件是( A. 寄存器 A. 80H A. 0CCH 4 A. ALU A. 7DH A. +1 A. AF B. 数据寄存器 B. 0 B. 4CH B. PC B. 7CH B. 不操作 B.CF C. CPU ) D. -80H ) D. 31H ) D. AR ) ) D. 7BH D.-1 ) ) C. D.SF B.10010011 ) D.逻辑地址 D. NOT BX D. EU 2.已知[X]补=80H, 则 X=( )
8.将 93H 看成一个组合 BCD 码,其结果是( A. 10010101 10000011 D.10000001 A.段地址 B.偏移地址
9.CPU 要访问的某一存储单元的实际地址称( C.物理地址 ) 10.执行后使 BX=0 的指令是( A. XOR BX,BX A.OFFSET A. 76H B. OR BX,BX B.TYPE B. 4CH B.MUL 4 C.SIZE ) C. 0B4H D. 0CCH
三、简答题
1.指出下列各条指令单独执行时,所涉及寄存器的值。 DATAX SEGMENT PARA
X1 DD 12345678h X2 LABEL BYTE X3 DW 1234h ORG 100h X4 EQU $-X1 DATAX ENDS (1)MOV BX,OFFSET X3 ; BX= (2)MOV AX,X4 ; AX= (3)MOV CX,WORD PTR X1+3 ; CX= 2. 现 有 (DS)=2000H , (BX)=0100H , (SI)=0002H , (20100)=12H , (20101)=34H , (20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,试说明下列各条指令执行 完后 AX 寄存器的内容。 (1)MOV AX,[1200] (3)MOV AX,1100[BX] 3.指出下列指令的错误: (1)MOV AH,BX (3)MOV AX,[SI][DI] (1)AD2 DW 10 DUP(?),10 MOV AX, DATA2 MOV DX, DATA2+2 MOV DATA1, AX MOV DATA1+ 2,DX 6.有数据定义如下: X1 DW ? X2 DB ? X3 DW ? 编写程序块实现 X3=X2+X1。 7.下列指令序列执行完后,BX 寄存器的内容是什么? MOV CL,3 MOV BX,0B7H ROL BX,1 (2)MOV [BX],[SI] (4) MOV CS,AX (2)AD3 DB 100 DUP(?),’computer’ (2)MOV AX,[BX] (4)MOV AX,[BX][SI]
D. 基址寻址 D. 基址变址寻址 D. 基址变址寻址 ) D. 0FE21H
27.若 AX=1020H,BX=1200H,CF=0,则 SBB AX,BX 的执行结果为( 28.若 AX=2000H,CL=90H,则 DIV CL 执行后,AX=(
29.若 BL=83H,CF=1,则 ADC BL,90H 执行后,BL=( A. 15H A. 0000H B. 16H B. 1111H C. 17H C. 1010H 30.若 DX=1010H,则 AND DX,DX 的执行结果为( )