【汇编语言程序设计】试题及答案合集 2(1)

合集下载

汇编语言程序设计练习题及参考答案

汇编语言程序设计练习题及参考答案

一、单项选择题从每小题的四个备选答案中,选出一个正确答案,并将正确答案的番号填人括号内。

1.用来存放下一条将要执行的指令地址的寄存器是 (B )A.SP B.IP C.BP D.CS2.要使串处理从低地址向高地址进行,应把标志位置为 (D )A.IF=1 B.TF=0C.DF=1 D.DF=03.使状态标志位CF清零的错误指令是 (C )A.OR AX,AX B.SUB AX,AXC.MOV CF,0 D.CLC4.设SP=1110H,执行PUSH AX指令后,SP的内容为 (B )A.SP=1112H B.SP=110EHC.SP=1111H D.SP=110FH5.汇编源程序出现语法错误的指令有 (D )A.MOV [BX+SI],AL B. MOV AX,[BP+DI]C.MOV DS,AX D. MOV CS,AX6.下列串操作指令中,必须同时指明源串和目的串地址的指令是 (D )A.STOSW B.LODSWC.SCASW D.CMPSW7.设BL中有一无符号数,实现把BL中的数乘以2,应选用的指令是 (B )A.SHR BL,1 B.SHL BL,1C.SAR BL,1 D.RCR BL,18.执行PUSH AX指令的正确步骤是 (A )A.1.SP←SP-1,(SP)←AH B.1.(SP)←AH,SP←SP-12.SP←SP-1,(SP)←AL 2.(SP)←AL,SP←SP-1C.1.SP←SP+1,(SP)←AH D.1.(SP)←AH,SP←SP+12.SP←SP+1,(SP)←AL 2.(SP)←AL,SP←SP+19.CF=1 时转移到目标地址的条件转移指令是 (B )A.JNC B.JC C.JZ D.JS10.在执行NEG指令时,对标志位CF有影响,其影响的规则是 ( C )A.对正数求补时,CF=0 B.对负数求补时,CF=0C.对非零数求补时,CF=1 D.对零求补时,CF=111.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是(A )A.目的操作数最高位为0 B.目的操作数最高位为1C.目的操作数为任意情况 D.无论什么情况都不可能相同12.设AL=04H,BL=0F8H,执行IMUL BL指令后,结果是 ( D )A.AX=0032H B.AX=00E0HC.AX=03E0H D.AX=0FFE0H13.指令的操作数中,允许出现表达式,例如BUF1与BUF2均为变量名,下面指令中语法正确的是 (D )A.MOV AX,BUFl*BUF2B.MOV AX,BUF1/BUF2C.MOV AX,BUF1+ES:BUF2D .MOV AX ,BUF2-BUF114.下面指令中,操作数的寻址方式为寄存器间接寻址的指令是 (C )A .INC WORD PTR [BX+SI]B .INC CX ,[SI+COUNT]C .NEG BYTE PTR [BX]D .ADD AX ,B15.NUM EQU 80HDA DB 34HAND DA ,NUM上述语句执行后,DA 中的内容是 (D )A .0B4HB .80HC .34HD .016.直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为 (A )A .立即、直接、间接B .直接、间接、立即C .直接、立即、间接D .不一定17.语句DA1 DB 2 DUP(3,5,7)汇编后,该语句可等同于的语句是 (D )A .DA1 DB 3,5,7B .DA1 DB 2,3,5,7C .DA1 DB 3,5,7,2D .DA1 DB 3,5,7,3,5,718. MOV AL ,80HMOV CL ,2SAR AL ,CL上述指令序列执行后,结果是 (D )A .AL=40HB .AL=20HC .AL=0C0HD .AL=0E0H19.下面是实现将AL 内容加1的压缩型BCD 码加法程序段,其中正确的指令序列是 (A ) A .INC ALB .ADD AL ,1DAA DASC .ADD AL ,1 D .STCDAA AAA20.现有数据存储如图所示:30100H 30101H 30102H 30103H设AL=01H ,BX=0100H ,DS=3000H 执行换码指令XLAT 后正确的结果是(B )A .AL=20HB .AL=38HC .AL=00HD .AL=41H21.若定义DAT DW 'A',则(DAT)和(DAT+1)两个相邻的内存中存放的数据是 (B )A .0041HB .4100H20H38H41H55HC.xx41H D.41xxH[注]选项C. 和D.中的XX表示任意数据。

汇编语言程序的设计试卷与答案

汇编语言程序的设计试卷与答案

汇编语言程序设计试卷一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。

① 无符号十进制数136② 带符号十进制数-120③ 压缩型BCD码十进制数88④ 8位二进制数-8的补码表示2.指令指针寄存器是()。

① IP② SP③ BP④ PSW3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。

① 表示结果中含1的个数为偶数② 表示结果中含1的个数为奇数③ 表示该数为偶数④ 表示结果中低八位含1的个数为偶数4.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。

① MOV AL,00H② AND AL,00H③ XOR AL,AL④ SUB AL,AL5.下列指令执行后总是使CF=0,OF=0的是()。

① AND② NEG③ NOT④ INC6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。

① MOV AX,BX② MOV BX,AX③ PUSH AXPOP BX④ MOV CX,AXMOV AX,BXMOV BX,CX7.设AH=0,AL=06H,BL=09H,执行指令ADD AL,BLAAA之后,其结果应是()。

① AH=01,AL=05② AH=1 AL=15③ AH=0 AL=0FH④ AH=0 AL=058.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为① OF=1,CF=0② OF=1,CF=1③ OF=0,CF=0④ OF=0,CF=19.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()。

① CX=0且ZF=0② CX=0且ZF=1③ CX=0或ZF=0④ CX=0或ZF=110.下面指令中,合理而有意义的指令是()。

专升本《汇编语言程序设计》_试卷_答案

专升本《汇编语言程序设计》_试卷_答案

专升本《汇编语⾔程序设计》_试卷_答案专升本《汇编语⾔程序设计》⼀、(共75题,共150分)1. 使⽤寄存器_________作间址寄存器,寄存器间接寻址的操作数系统默认在堆栈段。

(2分)A.BXB.SPC.BPD.SI标准答案:C2. 两个有符号数相加,通过标志位_________判断结果是否溢出。

(2分)A.ZFB.CFC.SFD.OF标准答案:D3. 汇编语句MOV AX,[AX]语法错误,其原因是_________ (2分)A.源操作数和⽬的操作数不能同时为存贮器操作数.B.操作数类型模糊C.源操作数不能为⽴即⽅式D.AX不能⽤于寄存器间接⽅式标准答案:D4. 设VAR为字变量, A为符号常量,下⾯四个语句中有⼀个错误的,这个错误语句是________. (2分)A.MOV VAR , AB.MOV AX , VARC.MOV A , VARD.MOV VAR , AX标准答案:C5. 在使⽤除法指令作字除法时,余数应放在寄存器________中。

(2分)A.BXB.DXC.CXD.AX标准答案:BCMP AX,BX_______ L (2分)A.JAB.JBC.JGD.JL标准答案:C7. 已知(AX)=1111H (BX)=2222H (CX)=3333H,执⾏“PUSH BX”两次,“PUSH CX”⼀次,“POP AX”两次后, (AX)等于_________。

(2分)A.1111HB.2222HC.3333HD.0标准答案:B8. 若(AX)=3412H,则(AL)的值为_________。

(2分)A.12HB.34HC.1234HD.3412H标准答案:A 9. 在语句INC BYTE PTR [BX]中,操作数使⽤的寻址⽅式是_________。

(2分)A.寄存器寻址B.寄存器间接寻址C.直接寻址D.⽴即寻址标准答案:B10. 在语句INC [BX]中,操作数使⽤的段寄存器是_________。

汇编语言程序设计题目以及答案

汇编语言程序设计题目以及答案

汇编语言程序设计题目以及答案[P1] 汇编语言程序设计题目以及答案汇编语言是一种底层计算机语言,它直接使用机器指令来编写程序。

本文将介绍一些汇编语言程序设计的题目,并提供相应的答案。

通过这些题目和答案的学习,读者可以更好地理解和掌握汇编语言程序设计的基本概念和技巧。

[题目一] 计算两个数的和要求:编写汇编程序,计算两个给定的整数的和,并将结果存储在指定的内存位置中。

答案:```assemblysection .datanum1 dd 10 ; 第一个整数num2 dd 20 ; 第二个整数result dd 0 ; 结果section .textglobal _start_start:mov eax, [num1] ; 将num1值存入寄存器eaxadd eax, [num2] ; 将num2值与eax寄存器中的值相加mov [result], eax ; 将结果存储到result变量mov eax, 1 ; 准备执行系统调用mov ebx, 1 ; 文件描述符:标准输出mov ecx, result ; 输出的数据mov edx, 4 ; 数据长度int 0x80 ; 执行系统调用mov eax, 1 ; 准备执行系统调用xor ebx, ebx ; 正常退出int 0x80 ; 执行系统调用```[题目二] 字符串反转要求:编写汇编程序,将一个给定的字符串反转,并将结果存储在指定的内存位置中。

答案:```assemblysection .datastr db 'Hello', 0 ; 待反转的字符串section .bssreverse resb 6 ; 存储反转后的字符串section .textglobal _start_start:mov esi, str ; esi指向待反转的字符串mov edi, reverse ; edi指向存储反转结果的位置 mov ecx, 5 ; 字符串长度为5mov ebx, 1 ; ebx用于计数reverse_loop:mov al, [esi+ebx]mov [edi-ebx+5], alinc ebxloop reverse_loopmov byte [edi+5], 0 ; 在末尾添加字符串结束符 mov eax, 4 ; 准备执行系统调用mov ebx, 1 ; 文件描述符:标准输出mov ecx, reverse ; 输出的数据mov edx, 6 ; 数据长度int 0x80 ; 执行系统调用mov eax, 1 ; 准备执行系统调用xor ebx, ebx ; 正常退出int 0x80 ; 执行系统调用```[题目三] 求平均数要求:编写汇编程序,计算给定的一组整数的平均数,并将结果存储在指定的内存位置中。

汇编语言程序设计试题参考答案

汇编语言程序设计试题参考答案

汇编语言程序设计参考答案A卷一、单项选择题(本大题共8小题,每小题2分,共16分)1.C2.B3.B4.A5.C6.A7.A8.C9.D 10.B二、名词解释(本大题共5小题,每小题4分,共20分)11.微处理器:也成中央处理器(CPU),是微型计算机的核心部件,包含运算器、控制器、寄存器组及总线接口等,负责对计算机系统各部件进行统一的协调和控制。

12.寻址方式:就是寻找操作数或操作数地址的方式,根据寻址方式可方便地访问各类操作数。

13.伪指令:是发送给汇编程序的命令,在汇编过程中由汇编程序进行处理,如定义数据、分配存储区、定义段及定义过程等。

14.中断源:指能引起中断的外部设备或内部原因。

15.汇编语言:是一种面向CPU指令系统的程序设计语言,采用指令助记符来表示操作码和操作数,用符号地址表示操作数地址。

三、简答题(本大题共4小题,每小题5分,共20分)16.微型计算机系统软件的主要特点是什么?计算机系统软件的主要特点是简化计算机操作,支持应用软件的运行并提供相关服务,通常包括操作系统、语言处理程序等。

17.什么是逻辑地址?他由哪两部分组成?计算机存储器中给每个逻辑段编址的地址称逻辑地址。

逻辑地址是在程序中使用的地址,他由段地址和偏移地址两部分构成。

18.一个完整的汇编源程序由那些逻辑段组成?各逻辑段的主要作用是什么?一般情况下汇编语言源程序应该由以下3个逻辑段组成:①数据段:用来在内存中建立一个适当容量的工作区,以存放常数,变量等程序需要对其进行操作的数据;②堆栈段:用来在内存中建立一个适当容量的堆栈区,以便在中断、子程序调用时使用;③代码段:包括了许多以符号表示的指令,其内容就是程序需要执行的具体操作。

19. DMA数据传送方式的特点是什么?DMA数据传送方式把外设与内存交换信息的操作与控制交给DMA控制器,简化了CPU对数据交换的控制,数据传送速度快,但这种方式电路结构复杂,硬件开销大。

(完整)汇编语言程序设计试卷2答案,推荐文档

(完整)汇编语言程序设计试卷2答案,推荐文档

汇编语言程序设计试卷2答案注意:答案全部写在最后一张试卷纸上,要求表明题号,字迹清楚,答在试卷上不给分一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共20分)1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。

(A) 无符号十进制数136(B) 带符号十进制数-120(C) 压缩型BCD码十进制数88(D) 8位二进制数-8的补码表示2.指令指针寄存器是()。

(A) IP(B) SP(C) BP(D) PSW3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。

(A) 表示结果中含1的个数为偶数(B) 表示结果中含1的个数为奇数(C) 表示该数为偶数(D) 表示结果中低八位含1的个数为偶数4.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。

(A) MOV AL,00H(B) AND AL,00H(C) XOR AL,AL(D) SUB AL,AL5.下列指令执行后总是使CF=0,OF=0的是()。

(A) AND(B) NEG(C) NOT(D) INC6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。

(A) MOV AX,BX(B) MOV BX,AX(C) PUSH AXPOP BX(D) MOV CX,AXMOV AX,BXMOV BX,CX7.设AH=0,AL=06H,BL=09H,执行指令ADD AL,BLAAA之后,其结果应是()。

(A) AH=01,AL=05(B) AH=1 AL=15(C) AH=0 AL=0FH(D) AH=0 AL=058.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为()。

(A) OF=1,CF=0(B) OF=1,CF=1(C) OF=0,CF=0(D) OF=0,CF=19.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()。

汇编语言程序设计试卷

汇编语言程序设计试卷

汇编语言程序设计试卷一. (共75 题,共150 分)1.下列说法错误的是。

(2 分)A.机器指令的形式包含操作码和地址码B.计算机只能够识别规定好的机器指令C.不同计算机系统之间的机器指令能够相互兼容D.汇编语言的主要操作和机器指令基本上一一对应★检查答案标准答案:C2.两个有符号数相减,通过标志位判断结果是否溢出。

(2 分)A.ZFB.CFC.SFD.OF★检查答案标准答案:D(2 分)3.汇编语言和高级语言的比较,下列说法错误的是A.汇编语言和高级语言都不能被机器直接识别B.完成同样的功能,汇编语言占据空间小C.高级语言可以使用变量,但汇编语言不行D.汇编语言中有类似于高级语言的宏功能★检查答案标准答案:C4.下列寄存器中,哪个寄存器不能供汇编程序直接访问. (2 分)A.SPB.BPC.CSD.IP★检查答案标准答案:D5.下列寄存器,哪个不能作基址寄存器。

(2 分)A.BXB.BPC.SID.ESI★检查答案标准答案:C6.设有关寄存器及存储单元的内容如下:则指令MOV AX, 1100H[BX][SI] 执行完毕后,AX 寄存器中的值是。

(2 分)A.65B7HB.3412HC.4C2AHD.7856H★检查答案标准答案:AA.可以作立即寻址的操作数B.也可作某些存贮器操作数的的位移量组成部分C.在数据定义伪指令语句中给变量赋初值D.可以作目的操作数★检查答案标准答案:D8.若(ECX)=0ABCD1234H(BL)=0E3H,则语句MOVSX ECX,BL执行后:(ECX)的值为。

(2 分)A.0ABCD1234HB.0FFFFFFE3HC.000000E3HD.0ABCD12E3H★检查答案标准答案:B(2 分)9.若(AX)=0FFFDH ,则语句ADD AX,7FFFH 执行后,下列说法正确的是。

A.(AX) =7FFCH,(OF)=1 ,(CF)=1B.(AX) =17FFCH ,(OF)=1 ,(CF)=1C.(AX)=7FFCH,(OF)=0 ,(CF)=1 D.(AX)=17FFCH ,(OF)=0 ,(CF)=1★检查答案标准答案:C10.在语句INC SS:[BX] 中,操作数使用的段寄存器是。

汇编语言程序设计答案

汇编语言程序设计答案

汇编语言程序设计答案2篇汇编语言程序设计答案(一)汇编语言是一种底层的计算机语言,通过程序设计来控制计算机硬件的运行。

它是计算机体系结构的基础,可以用来编写高效的程序,实现各种任务。

下面是两个关于汇编语言程序设计的答案,帮助初学者理解汇编语言的基本概念和编程技巧。

答案一:```assemblymov ax, 5mov bx, 6add ax, bx```这个程序的作用是将寄存器ax的值设置为5,寄存器bx的值设置为6,然后将ax和bx的值相加,结果保存在ax中。

最后,ax的值为11。

答案二:```assemblymov ax, 10mov bx, 2div bx```这个程序的作用是将寄存器ax的值设置为10,寄存器bx的值设置为2,然后将ax和bx的值相除,商保存在ax中,余数保存在dx中。

最后,ax的值为5,dx的值为0。

通过以上两个简单的答案,我们可以看到汇编语言的基本操作和计算能力。

编写汇编语言程序需要了解计算机的底层架构和指令集,因为每种计算机体系结构都有不同的汇编语言。

因此,学习汇编语言需要掌握计算机组成原理和计算机体系结构的基本知识。

在编写汇编语言程序时,我们通常需要使用一些常见的指令,例如mov(数据传送)、add(加法运算)、sub(减法运算)、mul(乘法运算)、div(除法运算)、jmp(跳转指令)等等。

掌握这些常用指令和相应的语法规则是学习汇编语言的基础。

另外,汇编语言程序设计也需要学习如何使用寄存器和内存。

寄存器是存储在CPU内部的非常快速的存储器,可以暂时存储数据和指令。

CPU可以直接读取和写入寄存器中的数据。

内存是存储在计算机主存储器中的大量数据和指令。

CPU需要通过地址来访问内存中的数据和指令。

要编写高效的汇编语言程序,我们需要理解计算机的硬件原理和底层运行机制。

了解汇编语言可以提供对程序的细粒度控制,对程序性能的优化有很大帮助。

总的来说,汇编语言程序设计是一项复杂而有趣的任务。

汇编语言程序设计题目以及答案

汇编语言程序设计题目以及答案

一、单项选择题(每小题1分,共20分)1、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是(A)A、85B92HB、86192HC、BB690HD、12169H2、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(B)A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS3、循环指令LOOPNZ终止循环的条件是(B)。

A、CX=0,且ZF=0B、CX=0,或ZF=1C、CX10,且ZF=0D、CX10,或ZF=14、对寄存器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,15、执行INC指令除对SF、ZF有影响外,还要影响的标志位是(A)。

A、OF,AF,PFB、OF,AF,CFC、OF,PF,CFD、AF,PF,CF6、设DH=10H,执行NEG DH指令后,正确的结果是(D)。

A、DH=10H CF=1B、DH=0F0H CF=0C、DH=10H CF=0D、DH=0F0H CF=17、下列传送指令中有语法错误的是(A)。

A、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX8、下面指令执行后,改变AL寄存器内容的指令是(D)。

A、TEST AL,02HB、OR AL,ALC、CMP AL,BLD、AND AL,BL9、执行除法指令后,影响的标志位是(D)。

A、CF,OFB、SF,ZFC、CF,OF,SFD、AF,CF,OF,PF,SF,ZF都不确定10、执行下面指令序列后,结果是(A)。

MOV AL,82H / CBWA、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H11、与MOV BX,OFFSET VAR指令完全等效的指令是(D)。

汇编语言程序设计习题及答案

汇编语言程序设计习题及答案

汇编语言程序设计习题及答案汇编语言程序设计习题及答案汇编语言是一种底层的计算机语言,它直接操作计算机的硬件资源。

虽然在现代计算机编程中,高级语言如C、Java等更为常见,但了解汇编语言的基本原理和编程技巧对于理解计算机底层工作原理和进行性能优化非常重要。

本文将介绍一些汇编语言程序设计的习题及其答案,帮助读者巩固和提升汇编语言编程能力。

一、基础习题1. 编写一个汇编程序,将存储器中的某个字节的值加1,并将结果存回原位置。

答案:```assemblyMOV AL, [地址]INC ALMOV [地址], AL```2. 编写一个汇编程序,计算存储器中一个数组的和,并将结果存放在指定的寄存器中。

答案:```assemblyMOV CX, 数组长度MOV BX, 数组首地址MOV AX, 0LOOP_START:ADD AX, [BX]ADD BX, 2LOOP LOOP_START```二、进阶习题1. 编写一个汇编程序,实现字符串的逆序输出。

答案:```assemblyMOV SI, 字符串首地址MOV DI, 字符串尾地址MOV CX, 字符串长度DEC CXREVERSE:MOV AL, [SI]MOV AH, [DI]MOV [DI], ALMOV [SI], AHINC SIDEC DILOOP REVERSE```2. 编写一个汇编程序,实现两个16位无符号整数的相乘,并将结果存放在指定的寄存器中。

答案:```assemblyMOV AX, 第一个数MOV BX, 第二个数MUL BX```三、挑战习题1. 编写一个汇编程序,实现一个简单的计算器,支持加法、减法、乘法和除法运算。

答案:```assemblyREAD_INPUT:; 读取用户输入; ...PARSE_INPUT:; 解析用户输入,获取操作数和运算符; ...CALCULATE:; 根据运算符进行相应的计算; ...DISPLAY_RESULT:; 将计算结果显示给用户; ...LOOP:; 循环执行计算器程序; ...```2. 编写一个汇编程序,实现一个简单的迷宫游戏,玩家通过键盘控制角色在迷宫中移动,并找到出口。

《汇编语言程序设计》考试练习题及答案

《汇编语言程序设计》考试练习题及答案

《汇编语言程序设计》考试练习题及答案一、单选题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. 计算机一般由中央处理器、存储器和输入/输出子系统组成,其中()可以存放程序、数据、信息及中间结果。

(完整)汇编语言程序设计试卷2答案,推荐文档

(完整)汇编语言程序设计试卷2答案,推荐文档

汇编语言程序设计试卷2答案注意:答案全部写在最后一张试卷纸上,要求表明题号,字迹清楚,答在试卷上不给分一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共20分)1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。

(A) 无符号十进制数136(B) 带符号十进制数-120(C) 压缩型BCD码十进制数88(D) 8位二进制数-8的补码表示2.指令指针寄存器是()。

(A) IP(B) SP(C) BP(D) PSW3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。

(A) 表示结果中含1的个数为偶数(B) 表示结果中含1的个数为奇数(C) 表示该数为偶数(D) 表示结果中低八位含1的个数为偶数4.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。

(A) MOV AL,00H(B) AND AL,00H(C) XOR AL,AL(D) SUB AL,AL5.下列指令执行后总是使CF=0,OF=0的是()。

(A) AND(B) NEG(C) NOT(D) INC6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。

(A) MOV AX,BX(B) MOV BX,AX(C) PUSH AXPOP BX(D) MOV CX,AXMOV AX,BXMOV BX,CX7.设AH=0,AL=06H,BL=09H,执行指令ADD AL,BLAAA之后,其结果应是()。

(A) AH=01,AL=05(B) AH=1 AL=15(C) AH=0 AL=0FH(D) AH=0 AL=058.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为()。

(A) OF=1,CF=0(B) OF=1,CF=1(C) OF=0,CF=0(D) OF=0,CF=19.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()。

【汇编语言程序设计】试题及答案合集 2(1)

【汇编语言程序设计】试题及答案合集 2(1)

汇编语言程序设计试题及答案1.对于有符号的数来说,下列哪个值最大()A:0F8HB:11010011BC:82 D:123Q2.下列有关汇编语言中标号的命名规则中,错误的是()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.ENDM12.BUF1 DB 3 DUP(0,2 DUP (1,2),3)COUNT EQU $-BUF1符号COUNT等价的值是()A.6B.18C.16D.913.下列标志位中,可以用来判断计算结果正负的是()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:ES二、填空题 (每小题4 分,共 20 分)1.下列程序段求数组FLD的平均值,结果在AL中。

《汇编语言程序设计》必考试题及答案

《汇编语言程序设计》必考试题及答案

《汇编语言程序设计》必考试题及答案一、选择题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```以上为一个简单的汇编语言程序,实现了从键盘输入两个数,并将其相加后输出的功能。

《汇编语言程序设计》期末考试-试卷及答案

《汇编语言程序设计》期末考试-试卷及答案

《汇编语言程序设计》期末考试-试卷及答案一、 选择题(每题1分,共20分)1、下面存储器中属于辅助存储器的是:(、下面存储器中属于辅助存储器的是:(CDE CDE CDE)) A. RAM B. ROM C.C.磁盘磁盘 D.D.光盘光盘 E. 硬盘2、通常说计算机的内存为32M 32M、、64M 或128M 指的是:(指的是:(C C )A. RAM 的容量B. ROM 的容量C. RAM 和ROM 的容量D.硬盘的容量3、下面的说法正确的是:(、下面的说法正确的是:(AE AE AE))A. 存储器是计算机中存放程序和数据的记忆部件。

存储器是计算机中存放程序和数据的记忆部件。

B. 存储器中的信息被读出后即从存储器中消失。

存储器中的信息被读出后即从存储器中消失。

C. 存储器中如果已经存有数据,则不能再向其中写入新的数据。

D. 半导体存储器的存取速度比CD-ROM 的存取速度要慢。

的存取速度要慢。

E. 辅助存储器需要CPU 通过I/O 接口访问,因而速度较慢。

4、下面属于系统软件的有(、下面属于系统软件的有(A A )A. WINDOWS A. WINDOWSB. MASMC. Visual C++D. WORD 5. 5. 汇编语言的优点不包括汇编语言的优点不包括汇编语言的优点不包括__D_____D_____D___。

A A 直接有效地控制硬件直接有效地控制硬件直接有效地控制硬件B B B 生成的代码序列短小生成的代码序列短小生成的代码序列短小C C 运行速度快运行速度快运行速度快D D 编程容易6. 6. 下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( AB) A 、AX AX,,BX BX,,CX CX,,DX B 、BX BX,,BP BP,,SI SI,,DI C 、SP SP,,IP IP,,BP BP,,DX D 、CS CS,,DS DS,,ES ES,,SS7. 7. 可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是(可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是( D D))。

汇编语言程序设计习题及答案

汇编语言程序设计习题及答案

汇编语言程序设计习题及参考答案习题一1.1把下列2、8、16进制数转换成为十进制数(1)(1011011)2(2)(0.10110)2(3)(111111.01)2(4)(1000001.11)2(5)(377)8(6)(0.24)8(7)(3FF)16(8)(2A.4)16解:(1)(1011011)2=64+16+8+2+1=91另解:原式=(5B)16=5×16+11=91(2)(0.10110)2=0.5+0.125+0.0625=0.6875(3)(111111.01)2=32+16+8+4+2+1+0.25=63.25另解:原式=(1000000-1+0.01)2=64-1+0.25=63.25(4)(1000001.11)2=64+1+0.5+0.25=65.75(5)(377)8=3×64+7×8+7=255另解:原式=(400-1)8=4×64-1=255(6)(0.24)8=2×0.125+4×0.015625=0.3125(7)(3FF)16=3×256+15×16+15=1023另解:原式=(400-1)16=4×256-1=1023(8)(2A.4)16=2×16+10+4×0.0625=42.25另解:原式=2×16+10+4÷16=42.251.2 把下列十进制数转换为2、16进制数(1)(127)10(2)(33)10(3)(0.3)10(4)(0.625)10(5)(1023.5)10(6)(377)10(7)(1/1024)10(8)(377/32)10解:(1)(127)10 =64+32+16+8+4+2+1= (111 1111)2=(7F)16另解:原式=(128-1)10=(1000 0000-1)2=(111 1111)2=(7F)16(2)(33)10=32+1= (10 0001)2=(21)16(3)(0.3)10 = (0.0100 1100 1……)2=(0.4CCC……)16(4)(0.625)10= 0.5+0.125=(0.101)2=(0.A)16(5)(1023.5)10 = 512+256+128+64+32+16+8+4+2+1+0.5=(11 1111 1111.1)2=(3FF.8)16(6)(377)10 =256+64+32+16+8+1=(1 0111 1001)2=(179)16(7)(1/1024)10=(0.0000 0000 01)2=(0.004)16(8)(377/32)10=(256+64+32+16+8+1)÷(32)= (101111001)2÷(100000)2=(1011.11001)2=(0B.C1)161.3 把下列二进制数转换为十六进制数(1)(100011)2(2)(0.11101)2(3)(11111.11)2(4)(0.00101)2解:(1)(100011)2=(10‟0011)2=23H(2)(0.11101)2=(0.1110‟1000)2=0.E8H(3)(11111.11)2=(1‟1111.1100)2=1F.CH(4)(0.00101)2=(0.0010‟1000)2=0.28H1.4 把下列十六进制数转换为二进制数(1)(3B6)16(2)(100)16(3)(80.2)16(4)(2FF.A)16解:(1)(3B6)16=(0011 1011 0110)2(2)(100)16=(0001 0000 0000)2(3)(80.2)16=(1000 0000.0010)2(4)(2FF.A)16 =(0010 1111 1111.1010)21.5 如果用24b储存一个无符号数,这个数的范围是什么?如果储存的是一个补码表示的有符号数,那么这个数的范围又是什么?答:如果用24b储存一个无符号数,这个数的范围应为:0~224-1如果用24b储存一个补码表示的有符号数,这个数的范围应为:-223~+223-11.6 两个无符号数,它们的大小等于十进制数210和303,用N位二进制存储时,相加产生了进位,用N+1位二进制存储时,相加没有产生进位。

汇编语言程序设计试题和答案

汇编语言程序设计试题和答案

汇编语⾔程序设计试题和答案《汇编语⾔程序设计》试题专业姓名成绩⼀、单项选择题(每1分,共15分).1将下列⼆进制数0111,1111,1111 转换为16进制数和10进制数是()A.07FFH 3021DB. 6FEH 1021DC. 07FFH 2012DD. 07FFH 2047D2. 在1BM Pc机的IN和OUT 指令中,I/o端⼝号通常是由Dx寄存器来提供的,但有时也可以在指令中⽤⼀个字节来表⽰端⼝号。

试问可以直接由指令指定的I/o端⼝号有多少个?( )A. 127DB.255DC. 256DD.128D3. 设MYDAT是⼀个字变量,下列指令中,错误的是()A.MOV BX,10100BB.MOV DS,AXC.ADD BX,[10100H]D.MOV BX,MYDAT[SI]4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执⾏后,AX寄存器内是()A.5678HB.4C2AHC.2A4CHD.7856H5.⼀台微型计算机的字长为16位,如果采⽤字节编址,那么它可以访问的最⼤存储空间是多少字节( ),试⽤16进制数表⽰该机的地址范围()A.1M 0~FFFFFHB.64K 0~FFFFHC.128K 0~FFFFHD.128K –FFH~FFH理地址是()A.BAA40HB.AAB40HC.AAA40HD.0D603H7.下列指令哪个是错误的(设OP1,OP2 是已经⽤DB定义的变量名)( )A.CMP BL,OP1B.MOV [BX],111001BC. INC OP2D.SAR AX,CL8.假定(DX)=10111001B,(CL)=05,(CF)=1试确定:RCL DL,CL 指令执⾏后,DX中的值是()A.00CEHB.009DHC.00B9HD.003BH9. 有符号定义语句如下:BUFF DB 1,2,3,‘123’EBUFF DB 0L EQU EBUFF - BUFF问L的值为多少( )A.6DB.7DC.3DD.5D.10. IBMPC机中下列那些寄存器可以⽤来存储存储器地址()A、BX,BP,SP,CXB、AX,SI,DI,DXC、BX,SI,DI,SPD、DX,SI,DI,SP11.下列指令中正确的是()A.MOV [BX],[SI]B.MOV AX,[SI][DI]C.MOV BX,OFFSET NAME[SI]12下列程序段执⾏后,寄存器BX中的内容是什么()MOV CL , 3MOV BX , 0B7HROL BX , 1RCR BX , CLA、0EDHB、0DEHC、0CDHD、0CCH13JB指令的测试条件是( )A. CF=0B. CF=1 C .OF∨CF=1 D.OF=114在DEBUG中()命令⽤来汇编⼀句汇编语⾔语句15 A 、A B、U C 、E D、D16. 指令STI 的功能是( )17(A)允许中断(B)不允许中断(C)允许单步(D) 不允许单步⼆.不定项选择题,漏错多选不得分。

汇编语言程序设计试题答案

汇编语言程序设计试题答案

汇编语言程序设计试题答案汇编语言程序设计试题一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。

每小题2分,共50分)1.CPU发出的访问存储器的地址是( )A.偏移地址B.物理地址C.逻辑地址D.段地址2.使计算机执行某种操作的命令是( )A.伪指令B.标号C.指令D.助记符3.若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=( )A. 1400HB. 77F8HC. 0000HD. 0FFFFH4.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。

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

A. BCD码B.二进制码C.十六进制码D.ASCII码5.下列关于8086CPU的工作原理的描述错误的是( )。

A.汇编程序员可以通过对各种寄存器中内容的修改实现对CPU 的控制。

B.CPU在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址。

C.任意时刻,CS:IP指向的内容即是此刻CPU正在执行的指令。

D.传送指令能够更改所有通用寄存器的内容。

6.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是()A.12C5BH B.12C59H C.12B6BH D.12BFEH7. 16位结构的CPU 不一定具备的特性是( )。

A. 运算器一次最多可以处理16位的数据B. 寄存器的最大宽度为16位C. 地址总线为16根D. 寄存器和运算器之间的通路为16位8. 下列指令的书写正确的是()。

A. push alB. mov cs:[0],ds:[10]C. pop siD. mov ds:[0],29.在DEBUG工具中,显示寄存器内容的命令是()。

A. GB. DC. TD. R10. 能够将ax中的内容送到内存0000:0200H处的指令序列是()。

【汇编语言程序设计】试题及答案合集

【汇编语言程序设计】试题及答案合集

汇编语言程序设计试题及答案1.对于有符号的数来说,下列哪个值最大(D)A:0F8HB:11010011BC:82 D:123Q2.下列有关汇编语言中标号的命名规则中,错误的是(D)A:通常由字母打头的字符、数字串组成B:标号长度不能超过31个字符C:?和$不能单独作为标号D:.号不可位于标号首3.8088/8086存储器分段,每个段不超过(D )A.64K个字B.32K个字节C.1兆个字节D.64K个字节4.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式(B)A:寄存器寻址B:相对基址变址寻址C:变址寻址D:基址变址寻址5.若AX= - 15要得到AX=15应执行的指令是(A )A.NEG AXB.NOT AXC.INC AXD.DEC AX6.8086/8088系统执行传送指令MOV时( A)A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志7.若要求一个操作数中的若干位维持不变,若干位置“1”,可以使用(B)A:NOT B:OR C:AND D:XOR8.下列指令中段默认为堆栈段的是( C)A.MOV AX,[BX+SI+10]B.ADD AX,ES:[SI]C.SUB [BX],[BP][DI]D. MOV DX,[1000H]9.关于8086/8088微机系列,下列说法哪个是正确的(D)A:一个存储单元由16个二进制位组成,简称字。

B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。

C:在内存空间中,可以无限分配段,且段的大小不受限制。

D:段与段之间可以邻接,也可以重叠。

10.下列关于堆栈的说法,错误的是(D)A:以“先入后出”为原则。

B:栈区最高地址单元的前一个单元为栈底。

C:运行中SP寄存器动态跟踪栈顶位置。

D:压栈和弹出都是以字节为单位。

11.表示过程定义结束的伪指令是( A)A.ENDPB.ENDSC.ENDD.ENDM12.BUF1 DB 3 DUP(0,2 DUP (1,2),3)COUNT EQU $-BUF1符号COUNT等价的值是( B)A.6B.18C.16D.913.下列标志位中,可以用来判断计算结果正负的是(B)A:PF B:SF C:DF D:OF14.下列指令正确的是( CD)A. MOV [100H], [BX]B.MOV DS, ESC. ADD V[BX], CXD.MOV AX, 34H15.下列哪个寄存器是属于指针寄存器(C)A:SI B:DX C:SP D:ES二、填空题 (每小题4 分,共 20 分)1.下列程序段求数组FLD的平均值,结果在AL中。

【汇编语言程序设计】试题及答案合集 2(1)

【汇编语言程序设计】试题及答案合集 2(1)

汇编语言程序设计试题及答案1.对于有符号的数来说,下列哪个值最大()A:0F8HB:11010011BC:82 D:123Q2.下列有关汇编语言中标号的命名规则中,错误的是()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.ENDM12.BUF1 DB 3 DUP(0,2 DUP (1,2),3)COUNT EQU $-BUF1符号COUNT等价的值是()A.6B.18C.16D.913.下列标志位中,可以用来判断计算结果正负的是()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:ES二、填空题 (每小题4 分,共 20 分)1.下列程序段求数组FLD的平均值,结果在AL中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汇编语言程序设计试题及答案1.对于有符号的数来说,下列哪个值最大()A:0F8HB:11010011BC:82 D:123Q2.下列有关汇编语言中标号的命名规则中,错误的是()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.ENDM12.BUF1 DB 3 DUP(0,2 DUP (1,2),3)COUNT EQU $-BUF1符号COUNT等价的值是()A.6B.18C.16D.913.下列标志位中,可以用来判断计算结果正负的是()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:ES二、填空题 (每小题4 分,共 20 分)1.下列程序段求数组FLD的平均值,结果在AL中。

请将程序填写完整(不考虑溢出)FLD DW 10, -20, 30, -60, -71, 80, 79, 56_______________MOV CX, 8XOR AX, AXR1:____________ADD SI, 2LOOP R1MOV CL, 8IDIV CLHLT2.MOV AX, 1090HSUB AX, 4AE0HJC L1JO L2JMP L3上述程序执行后AX=___________,程序转向________ 3.假设寄存器AX=1234H,DX=0A000HMOV BX, 0MOV CX, BXSUB CX, AX EDCCH 有借位SBB BX, DX 6000H 5FFFMOV AX, CX EDCCHMOV DX, BX上述程序段执行后AX=__________ ,DX=___________ 4.MOV AX, 234HMOV CL, 3ROL AX, CL 注意移的是二进制码DEC AXMOV CX, 4MUL CX此段程序执行完后,(AX)= ________ , (CX)= _______ 5.DA1 DB 83H,72H,61H,94H,5AH┇MOV CX,WORD PTR [DA1]AND CX,0FHMOV AL,[DA1+3]SHL AL,CL上述指令序列执行后,AL=________,CL=________。

三、简答题 (每小题4 分,共 20 分)1.如TABLE为数据段中0100单元的符号名,其中存放的内容为0FF00H,试问以下两条指令有什么区别?指令执行后,AX寄存器的内容是什么?MOV AX,TABLEMOV AX,OFFSET TABLE2.对于下面的数据定义TAB1DW10DUP(?)TAB2DB10DUP(?)TAB3DB‘1234’┇MOV AX,SIZE TAB1MOV BL,SIZE TAB2MOV CL,SIZE TAB3三个寄存器中值分别为多少?4.已知某个人计算机0000:0080~0000:00B0区域的内容如下:0000:0080 CC A1 C8 00 80 89 A8 98 65 43 35 23 12 45 C4 00 0000:0090 A4 78 98 56 90 00 00 78 49 03 28 B7 B8 9C A2 B8 0000:00A0 CC A1 C3 00 80 89 A8 98 65 43 35 23 12 45 C4 00 0000:00B0 2A 1B C8 04 00 33 11 23 DC 41 54 BB 90 45 33 01 试求执行软中断指令INT 23H时,系统将转移到哪里进入中断服务程序。

5.试计算逻辑地址4017:000A,4015:0002A和4010:0007A对应的物理地址。

这三个物理地址说明了什么问题?四、编程题 (每小题30 分,共 30分)1.试编制一程序,统计DT_W字数组中正数、负数和0的个数,并分别保存在C1,C2和C3变量中。

汇编语言程序设计试题及答案一.名词解释(本大题共5小题,每小题3分,共15分)试解释下列名词的含义。

1.逻辑地址:逻辑地址由两个16位的地址分量构成,其中一个为段基值,另一个为偏移量,两个分量均为无符号数编码。

物理地址=段基值×16+偏移量2.物理地址:CPU通过地址总线向外发送的20位地址,在访问内存单元前,CPU必须先将CPU内部的逻辑地址转换为物理地址。

3.标志寄存器:标志寄存器(Flag Register)又称程序状态字(Program Status Word),是8086/088中唯一按位操作的寄存器,该寄存器为16位,有效的标志位共9位。

其中,CF,PF,AF,ZF,SF,OF为状态标志,用于反映最近一次影响标志位的算术或逻辑运算中运算过程、运算结果的一些性质;TF,IF,DF为控制标志,用于控制CPU对某些特定事件的处理方式以及CPU的工作模式。

4.存储器寻址方式:发生在指令的执行周期,需要在执行周期内单独启动总线操作来完成。

比寄存器寻址、立即数寻址速度都慢。

5.补码:计算机系统内部用于表示带符号数的一种编码,正整数的补码为其真值本身,负整数的补码为其真值变反加1的结果。

二.计算题(本大题共5小题,每小题4分,共20分)试按照各小题的要求给出计算结果。

1.将十进制数100分别转换为二进制、十六进制数,它们的表示形式分别为多少?解:二进制为 01100100B,十六进制为64H。

2.假设(DS)=0B00H,(BX)=0210H,对于指令MOV DS:120H[BX],AL,其目的操作数的物理地址为多少?解:EA=(BX)+0120H=0330H,物理地址=(DS)*16+EA=B330H3.假设(BX)=0210H,(DI)=0060H,对于指令ADD DL,[BX][DI],其源操作数的偏移量为多少?解:偏移量=(BX)+(DI)=0270H4.假设当前(SP)=0060H,连续执行5条PUSH指令后,(SP)=?解:(SP)=0060H – 5*2 =0060H -000AH = 0056H5.对于一个十进制数– 65,其二进制补码表示形式为多少?解:先求二进制真值-01000001,变反加一补码为10111111三.排错题(本大题共4小题,每小题5分,共20分)每小题列出了一条指令,判断该指令有无语法错误,如果存在语法错误,请指出具体的错误原因,判断正确给2分,分析正确给3分,判断错误不给分。

1.PUSH 5588H 错误,操作数不能用立即数;2.MOV DS, 1720H 错误,MOV指令不能对段寄存器直接传送立即数;3.ADD AX, CL 错误,寄存器长度不匹配;4.AND AX,[DX] 错误,DX不用于存储器寻址。

四.程序分析题(本大题共6小题,每小题5分,共30分)每小题列出了一段小的程序片段和相关存储单元的初始值,请按题目的要求分析各程序片段的运行结果。

(寄存器中的内容请使用十六进制形式给出)1.阅读如下程序片段MOV AL,4CHADD AL,BL执行上述程序片段后,(AL)= 01H (1分),(BL)= 0B5H (1分),CF= 1 (1分),OF= 0 (1分),PF= 0 (1分)2.阅读如下程序片段MOV AL,0F3HMOV DL,0C4HADD AL,DLAND AL,0FH执行上述程序片段后,(AL)= 07H (1分),(AF)= 不确定(1分),CF= 0 (1分),OF= 0 (1分),PF= 0 (1分)3.阅读如下程序片段MOV AL,7EHMOV CL,04HROL AL,CL执行上述程序片段后,(AL)= 0F9H (2分),(CL)= 04H (1分),CF= 1 (1分),OF= 无意义(1分)4.阅读如下程序片段MOV AX,0632HMOV BX,0C202HSUB AX,BXINC AX执行上述程序片段后,(AX)= 4431H (2分),(CF)= 1 (2分),OF= 0 (1分)5.阅读如下程序片段,假设(DS)=0100H,字节单元(01024H)=56H,字节单元(01025H)=28HMOV BX,0024HLEA BX,[BX]OR BX,0ADC BX,[BX]执行上述程序片段后,(BX)= 287AH (3分),(CF)= 0 (2分),OF= 0 (1分)6.阅读如下程序片段,假设(SP)=0064HMOV AX,0001HMOV BX,0002HPUSH AXPUSH BXPOP AXPOP BX执行上述程序片段后,(AX)= 0002H (2分),(BX)= 0001H (2分),(SP)= 0064H (1分)五.程序设计题(本大题共2小题,第一小题7分,第二小题8分,共15分)1.试编写一程序片段,实现BL高4位与低4位相互交换(7分)解:MOV CL,4;2.试编写一程序片段,不使用乘除法指令,实现((AX)*5+14)/ 2的功能(AX中的数据理解为补码)(8分)解:MOV BX,AXMOV CX,2SAL AX,CXADD AX,BXADD AX,14SAR AX,1汇编语言程序设计试题及答案六.名词解释(本大题共5小题,每小题3分,共15分)试解释下列名词的含义。

相关文档
最新文档