汇编语言题库
汇编语言题库
汇编语⾔题库1⼤学课程《汇编语⾔程序设计》模拟试题⼀、单项选择题1、指令JMPFARPTRDONE属于(C)。
A.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址2、执⾏下⾯指令序列后,结果是(A)。
MOVAL,82HCBWA.AX=0FF82HB.AX=8082HC.AX=0082HD.AX=0F82H3、8088/8086存储器分段,每个段不超过(D)。
A.64K个字B.32K个字节C.1兆个字节D.64K个字节4、CPU发出的访问存储器的地址是(A)。
A.物理地址B.偏移地址C.逻辑地址D.段地址5、BUFDW10HDUP(3DUP(2,10H),3,5)上述语句汇编后,为变量BUF分配的存储单元字节数是(B)。
A.80HB.100HC.124D.1926、若AX=-15要得到AX=15应执⾏的指令是(A)。
A.NEGAXB.NOTAXC.INCAXD.DECAX7、8086/8088系统执⾏传送指令MOV时(A)。
A.不影响标志位B.影响DF⽅向标志C.影响SF符号标志D.影响CF进位标志8、MOVAL,79ADDAL,0B1H上⾯指令执⾏后,设置的标志位CF和OF的值是(D)。
A.CF=0,OF=1B.CF=1,OF=1C.CF=0,OF=1D.CF=1,OF=09、检查BUF的内容是否为正偶数,如是正偶数,则AL=0。
下⾯程序段正确的是(C)。
A.MOVAL,BUFB.MOVAL,BUFJNCK1MOVAL,0MOVAL,0K2:……K1:C.MOVAL,BUFD.MOVAL,BUFTESTAL,81HJNPK4JNZK3TESTAL,80HMOVAL,0JNZK4K3:MOVAL,0K4:10、下列指令中操作数在代码段中的是(A)。
A.MOVAL,42HB.ADDAL,BLC.SUB[BX],DID.INC[DI]11、与MOVBX,OFFSETVAR指令完全等效的指令是(D)。
《汇编语言》练习题库
《汇编语言》练习题库
汇编语言是计算机硬件和软件之间的桥梁,是一种基于机器指令的
低级程序设计语言。
掌握汇编语言对于理解计算机的工作原理和进行
底层编程具有重要意义。
下面是一份《汇编语言》练习题库,旨在帮
助读者巩固和应用所学知识。
一、基础题
1. 使用汇编语言编写一个程序,实现两个数相加的功能。
2. 编写一个汇编语言程序,将一个字符串逆序输出。
3. 设计一个程序,判断一个数是否为偶数。
4. 编写一个程序,实现一个简单的计算器,可以进行加减乘除运算。
二、中级题
1. 设计一个程序,实现排序算法中的冒泡排序。
2. 编写一个汇编语言程序,判断一个字符串是否为回文串。
3. 设计一个程序,将一个数组中的奇数和偶数分别存放在两个新的
数组中。
4. 编写一个程序,实现一个简单的文本编辑器,可以实现插入、删除、替换等功能。
三、高级题
1. 设计一个程序,实现图像的旋转和缩放功能。
2. 编写一个汇编语言程序,实现一个简单的操作系统。
3. 设计一个程序,实现一个简易的数据库系统,可以进行数据的增删查改操作。
4. 编写一个程序,实现一个简单的网络聊天室。
以上是《汇编语言》练习题库的部分题目,通过做题可以提高对汇编语言的理解和应用能力。
同时,建议读者在做题的过程中,结合教材和其他学习资料,加深对汇编语言的学习和掌握。
祝愿大家在汇编语言的学习中取得优异的成绩!。
汇编语言题库及部分答案
汇编语言题库及部分答案一、单项选择题1、在下列的选项中,能够组成计算机系统的是(A )。
A.硬件系统和软件系统B.CPU、存储器、输入/输出设备C.操作系统、各种语言D.系统软件和应用软件2、汇编语言属于( B )。
A.用户软件B.系统软件C.高级语言D.机器语言3、汇编语言源程序经汇编程序汇编后产生的文件的扩展名是(B )。
A.EXE B.OBJ C.ASM D.LST4、汇编语言的什么文件经链接(LINK)后产生可执行文件?(D) A.ASM B.EXE C.LST D.OBJ5、中央处理器CPU是由(D )组成的。
A.运算器B.控制器C.寄存器组D.前三者6、IBM PC机的DOS是属于( B )。
A.用户软件B.系统软件C.系统硬件D.一种语言7、汇编语言源程序是( A )程序。
A.不可直接执行的B.可直接执行的C.经汇编程序汇编后就可执行的D.经连接后就可直接执行的8、8086/8088 CPU的寄存器组中,8位的寄存器共有(C )个。
A.4B.6C.8D.109、8086/8088 CPU的寄存器组中,16位的寄存器共有(D )个。
A.10B.12C.13D.1410、8086/8088 CPU执行算术运算时PSW共有( C )个标志位会受影响。
A.4B.5C.6D.711、在程序执行过程中,IP寄存器始终保存的是(B )。
A.上一条指令的首地址B.本条指令的首地址。
C.下一条指令的首地址D.需计算有效地址后才能确定地址。
12、IBM PC机的存储器可分( D )个段。
A.4B.256C.512D.6553613、当使用BP作编程地址时,此时使用的是(D )段。
A.CSB.DSC.ESD.SS14、如果指令的运算结果为0,则( C )标志位为1。
A.SFB.OFC.ZFD.CF15、如果指令的运算结果中有奇数个1,则(A )标志位为0。
A.PFB.CFC.OFD.SF16、IBM PC机的内存是按(B )是编址的。
汇编语言试题及答案
汇编语言试题及答案一、单项选择题(每题2分,共20分)1. 汇编语言是一种()。
A. 高级语言B. 低级语言C. 机器语言D. 符号语言答案:D2. 汇编语言程序必须经过()才能被计算机执行。
A. 编译B. 汇编C. 链接D. 解释答案:B3. 在汇编语言中,指令通常由()组成。
A. 操作码和操作数B. 操作码和地址码C. 操作码和数据D. 地址码和数据答案:A4. 汇编语言中的寄存器主要用于()。
A. 存储数据B. 存储指令C. 存储地址D. 存储控制信息答案:A5. 汇编语言中的立即寻址方式是指()。
A. 操作数在寄存器中B. 操作数在内存中C. 操作数在指令中D. 操作数在输入/输出端口中答案:C6. 在汇编语言中,指令“MOV AX, 1234H”的作用是()。
A. 将内存地址1234H的内容移动到AX寄存器B. 将立即数1234H移动到AX寄存器C. 将AX寄存器的内容移动到内存地址1234HD. 将AX寄存器的内容移动到另一个寄存器答案:B7. 汇编语言中的循环结构通常使用()指令实现。
A. JZB. JNZC. LOOPD. CALL答案:C8. 在汇编语言中,子程序调用通常使用()指令。
A. JZB. JNZC. CALLD. RET答案:C9. 汇编语言中的堆栈操作通常使用()指令。
A. PUSHB. POPC. MOVD. ADD答案:A10. 在汇编语言中,中断服务程序的结束通常使用()指令。
A. INTB. IRETC. RETD. CALL答案:B二、填空题(每题2分,共20分)1. 汇编语言中的指令通常由______和______两部分组成。
答案:操作码;操作数2. 汇编语言中的寄存器可以分为______、______和______三类。
答案:通用寄存器;段寄存器;控制寄存器3. 汇编语言中的寻址方式包括______、______、______和______等。
答案:立即寻址;直接寻址;间接寻址;寄存器寻址4. 在汇编语言中,指令“MOV AX, BX”的作用是将BX寄存器的内容______到AX寄存器。
汇编语言试题及参考答案
汇编语言试题及参考答案一、选择题(每题2分,共20分)1. 汇编语言中的指令通常由哪两部分组成?A. 操作码和操作数B. 地址和数据C. 指令和数据D. 操作码和地址答案:A2. 以下哪个不是汇编语言中的寻址方式?A. 直接寻址B. 间接寻址C. 立即寻址D. 寄存器寻址答案:B3. 在汇编语言中,以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. CMPC. ADDD. SUB答案:A4. 汇编语言中,以下哪个指令用于比较两个寄存器的内容?A. MOVB. CMPC. ADDD. SUB答案:B5. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与立即数相加?A. MOVB. CMPC. ADDD. SUB答案:C6. 汇编语言中的条件跳转指令通常使用哪些条件?A. 零、非零B. 正、负C. 溢出、非溢出D. 所有上述条件答案:D7. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与另一个寄存器的内容相减?A. MOVB. CMPC. ADDD. SUB答案:D8. 汇编语言中的循环结构通常使用哪种类型的跳转指令?A. 无条件跳转B. 条件跳转C. 直接跳转D. 间接跳转答案:B9. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与内存中的内容相加?A. MOVB. CMPC. ADDD. SUB答案:C10. 汇编语言中,以下哪个指令用于将一个寄存器的内容与另一个寄存器的内容进行逻辑与操作?A. ANDB. ORC. NOTD. XOR答案:A二、填空题(每题2分,共20分)1. 在汇编语言中,指令MOV AX, BX的作用是将寄存器________的内容复制到寄存器________中。
答案:BX,AX2. 汇编语言中的指令JMP FAR PTR 100H:200H的作用是跳转到内存地址________。
答案:100H:200H3. 汇编语言中,指令CALL的作用是________。
汇编语言试题(有答案))
汇编语言试题及参答案一、填空题1.ZF标志位是标志结果是否为零的,若结果,ZF为(1),否则ZF为(0)。
当ZF为1时,SF为(0)2.标号可以有两种类型属性。
它们是(近程)和(远程)3.8位无符号整数的表示范围为0--255,写成16进制形式为(0--FFH),8位有符号整数的表示范围为-128--+127,写成16进制形式为(80H--7FH)4.伪指令DB,GROUP 和NAME 三个标号名字域必须有名字的是(GROUP),不得有名字的是(NAME),可有可无名字的是(DB)。
5.循环程序通常由(循环准备)(循环体)(循环的控制与修改)和循环结果外理四部分构成6.在数值不达式中,各种运算符可可混合使用,其优先次序规则*,/(高)于+,-;XOR,OR(低)于AND,LT(等)于GT7. 宏指令定义必须由伪指令(MACRO)开始,伪指令(ENDM)结束,两者之间的语句称为(宏定义体)8.调用程序与子程序之间的参数传递方法有四种,即堆栈法(约定寄存器法)(约定存储单元法)(向量传递法)9.分别用一条语句实现下述指明的功能(1)栈顶内容弹出送字变量AYW(POP AYW)(2)双字变量AYD存放的地址指针送ES和SI(LES SI,AYD)(3)变量AY2类型属性送AH(MOV AH,TYPE AY2)(4)不允许中断即关中断(CLI)(5)将字符串‘HOW ARE YOU!’存入变量AYB(AYB DB“HOW ARE YOU!”)(6)子程序返回调用程序(RET)(7)地址表达式AYY[4]的偏移地址送字变量ADDR(MOV ADDR,OFFSET AYY[4])(8)AX的内容加1,要求不影响CF(INC AX)(9)BX的内容加1,要求影响所有标志位(ADD BX,1)(10)若操作结果为零转向短号GOON(JZ GOON)二、单选题1.IBM PC微机中,有符号数是用(2 )表示的1.原码2.补码3.反码4.BCD码2.把汇编源程序变成代码程序的过程是(2 )1.编译2.汇编3.编辑4.链接三、己知:VAR1,VAR2的类型属性分别为字和字节,标号LPFAR的类型属性为FAR。
汇编语言复习题附答案
汇编语言复习题附答案一、选择题1. 汇编语言是一种()。
A. 高级语言B. 机器语言C. 低级语言D. 面向对象语言答案:C2. 在汇编语言中,指令通常由()组成。
A. 操作码和操作数B. 操作数和地址C. 操作码和地址D. 操作码、操作数和地址答案:A3. 汇编语言中的寄存器通常用来()。
A. 存储数据B. 存储指令C. 存储程序D. 存储地址答案:A4. 汇编语言中的指令MOV AX, BX的作用是()。
A. 将AX寄存器的值移动到BX寄存器B. 将BX寄存器的值移动到AX寄存器C. 将AX和BX寄存器的值相加D. 将AX和BX寄存器的值相减答案:B5. 汇编语言中的循环结构通常使用()指令实现。
A. JZB. JNZC. LOOPD. CALL答案:C二、填空题1. 汇编语言中的指令ADD AX, BX表示将AX和BX寄存器的值相加,并将结果存入____寄存器。
答案:AX2. 汇编语言中的指令SUB AX, BX表示将AX寄存器的值减去BX寄存器的值,并将结果存入____寄存器。
答案:AX3. 汇编语言中的指令CMP AX, BX用于比较AX和BX寄存器的值,但不进行存储操作,结果影响____标志。
答案:标志寄存器4. 汇编语言中的指令JMP LABEL用于无条件跳转到标签____处执行。
答案:LABEL5. 汇编语言中的指令PUSH AX将AX寄存器的值压入____。
答案:堆栈三、简答题1. 简述汇编语言与机器语言的区别。
答案:汇编语言是一种低级语言,它使用助记符来表示机器语言的指令,更易于人类理解和编写。
机器语言则是由二进制代码组成的指令集,直接被计算机硬件执行,但对人类来说难以阅读和编写。
2. 描述汇编语言中如何实现条件跳转。
答案:汇编语言中实现条件跳转通常使用条件跳转指令,如JZ(跳转如果零)、JNZ(跳转如果非零)、JMP(无条件跳转)等。
这些指令根据CPU的状态寄存器中的条件码标志来决定是否跳转到指定的标签处执行。
计算机技术汇编语言试题含答案
计算机技术汇编语言试题含答案第一部分:选择题1. 汇编语言是计算机硬件的一种低级编程语言,其特点是()。
A. 高级、易读易写B. 低级、复杂C. 低级、易读易写D. 高级、复杂答案:C2. 汇编语言是一种()。
A. 人机交互语言B. 低级语言C. 高级语言D. 自然语言答案:B3. 汇编语言最主要的作用是()。
A. 提高计算机运行速度B. 完成特定的计算任务C. 方便程序员编写高级语言程序D. 简化计算机指令的执行过程答案:C4. 汇编语言的指令是由()组成的。
A. 二进制代码B. 十进制代码C. 字母和数字D. 中文字符答案:A5. 汇编语言与机器语言之间的关系是()。
A. 完全相同B. 相似但不完全一样C. 完全不同D. 无法确定答案:B第二部分:简答题1. 什么是汇编器?它的作用是什么?汇编器是一种用于将汇编语言代码翻译成机器代码的软件工具。
其作用是将人类可读的汇编语言指令转换成计算机能够理解的二进制代码,以便计算机能够执行相应的操作。
2. 谈谈汇编语言的优点和缺点。
汇编语言的优点包括:- 直接操作底层硬件,可精确控制计算机执行指令,提高程序执行效率。
- 可以直接访问和利用硬件资源,如寄存器、内存等。
- 可以编写高效的程序,适用于对性能要求较高的场景。
- 编写汇编语言程序相对来说较为简单,可以更好地理解计算机的工作原理。
汇编语言的缺点包括:- 难以学习和掌握,对于初学者来说门槛较高。
- 编写的程序复杂度高,维护困难。
- 汇编语言代码的可移植性差,不同的计算机体系结构需要不同的汇编指令集。
- 缺乏高级语言的抽象和封装特性,代码可读性差。
第三部分:编程题请编写一段汇编语言代码,实现将数组 A 中所有元素加 1 的功能。
数组 A 的起始地址保存在寄存器 AX 中,数组长度保存在寄存器 BX 中。
假设数组 A 的元素都是字节类型。
```asmMOV CX, 0 ; 用于循环计数的寄存器MOV SI, AX ; 用于保存数组起始地址的寄存器LOOP_START:MOV AL, [SI] ; 将当前数组元素的值加载到 AL 寄存器ADD AL, 1 ; 将 AL 寄存器中的值加 1MOV [SI], AL ; 将 AL 寄存器中的值存回数组对应位置INC CX ; 循环计数器加 1INC SI ; 数组地址指针加 1CMP CX, BX ; 比较循环计数器和数组长度JL LOOP_START ; 如果循环计数器小于数组长度,则跳转到LOOP_START 继续循环```答案:以上汇编语言代码实现了将数组 A 中的所有元素加 1 的功能。
汇编语言试题及答案
汇编语言试题及答案一、选择题1. 汇编语言是一种:A. 高级语言B. 低级语言C. 机器语言D. 标记语言答案:B2. 汇编程序的编译过程包括:A. 预处理、编译、链接B. 编译、链接、运行C. 编译、预处理、链接D. 链接、编译、预处理答案:A3. 下列哪项是汇编语言的指令:A. MOV AX, BXB. int main()C. print "Hello, World!"D. System.out.println("Hello, World!");答案:A二、填空题4. 在汇编语言中,指令______用于将数据从内存传送到寄存器。
答案:MOV5. 汇编语言中的______指令用于实现无条件跳转。
答案:JMP6. 汇编语言中的______指令用于实现条件跳转。
答案:JZ 或 JE(零标志跳转)三、简答题7. 简述汇编语言的特点。
答案:汇编语言是一种低级语言,它非常接近机器语言,通常用于编写硬件操作和系统软件。
其特点是执行效率高,但编程复杂度高,可读性和可移植性较差。
8. 汇编语言与机器语言有何区别?答案:汇编语言是一种符号化的机器语言,它使用助记符代替机器语言中的二进制代码,更易于人类理解和编写。
机器语言则是计算机硬件直接执行的指令集,通常以二进制形式存在。
四、编程题9. 编写一段汇编语言程序,实现将AX寄存器的值加1。
答案:INC AX10. 编写一段汇编语言程序,实现将内存地址[100]处的值与BX寄存器的值相加,并将结果存回内存地址[100]。
答案:MOV AX, [100]ADD AX, BXMOV [100], AX五、论述题11. 论述汇编语言在现代计算机系统中的作用和局限性。
答案:汇编语言在现代计算机系统中主要用于系统底层开发、硬件驱动编写、嵌入式系统编程等领域。
其作用在于能够直接控制硬件,实现高效的资源利用。
然而,由于其复杂度高、可读性差、可移植性低,它在高级应用开发中的使用受到限制。
汇编考试题及答案详解
汇编考试题及答案详解一、选择题(每题2分,共20分)1. 下列哪一项是汇编语言的特点?A. 高级语言B. 面向对象C. 接近硬件D. 自动内存管理答案:C2. 汇编指令MOV AX, [BX]的含义是:A. 将AX寄存器的内容移动到BX寄存器B. 将BX寄存器的内容移动到AX寄存器C. 将内存地址BX指向的内容移动到AX寄存器D. 将AX寄存器的内容存储到内存地址BX指向的位置答案:C3. 下列哪一项不是汇编语言的伪操作码?A. ORGB. DBC. IFD. MOV答案:D4. 在汇编语言中,立即数的寻址方式是:A. 直接寻址C. 间接寻址D. 基址寻址答案:A5. 汇编程序中,用于定义数据的伪操作码是:A. EQUB. ENDC. DBD. DW答案:C6. 汇编语言中,指令JMP FAR PTR LABEL的作用是:A. 跳转到当前段内的LABELB. 跳转到其他段内的LABELC. 跳转到当前段的开始位置D. 跳转到其他段的开始位置答案:B7. 汇编语言中的段寄存器CS的作用是:A. 存储当前代码段的基地址B. 存储当前数据段的基地址C. 存储当前堆栈段的基地址D. 存储当前附加段的基地址答案:A8. 下列哪一项不是汇编指令的寻址方式?B. 寄存器寻址C. 相对寻址D. 绝对寻址答案:C9. 汇编语言中,指令PUSH AX的作用是:A. 将AX寄存器的内容压入堆栈B. 将AX寄存器的内容弹出堆栈C. 将AX寄存器的内容移动到其他寄存器D. 将AX寄存器的内容存储到内存答案:A10. 汇编语言中,指令DIV AX的作用是:A. 将AX寄存器的内容除以AL寄存器的内容B. 将AX寄存器的内容除以AH寄存器的内容C. 将AX寄存器的内容除以DX寄存器的内容D. 将AX寄存器的内容除以立即数答案:A二、简答题(每题5分,共10分)1. 解释汇编语言中的堆栈操作。
答案:堆栈操作是汇编语言中的一种数据结构操作,它遵循后进先出(LIFO)的原则。
《汇编语言》练习题库
华中师范大学网络教育学院《汇编语言程序设计》练习测试题库一 .选择题(只有一个正确答案,填在题干前的括号里)1.一台完整的计算机系统包括_________。
A.硬件系统和软件系统B.系统硬件和系统软件C.控制器、运算器、存储器、输入设备和输出设备D.操作系统、机器语言、汇编语言、高级语言2.汇编程序属于_________。
A.硬件系统B.软件系统C.系统软件D.用户软件3.简单的汇编语言程序可以通过_________来建立A.连接程序B.调试程序C.汇编程序D.编辑程序4.8086/8088微处理器包含有两个独立的部件_________和_________。
A.R和ALUB.CS和IPC.BIU和EUD.CPU和I/0设备5 .进行汇编语言编程时,设计者应该考虑一些基本的要求,下列叙述不正确的是____。
A.程序应该结构化B.程序应该执行速度快C.程序应该占用空间大D.程序应该简明、易读、易懂6 .一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是____。
A.12C5BHB.12B6BHC.12C59HD.12BFEH7 .字符串HOLLO的ASCII代码表示为____.A.484F4C4C4FHB.484F4D4D4FHC.494F4C4C4FHD.494F4D4D4FH8.如果内存中某一单元的物理地址是20B4CH,那么它的逻辑地址是_________:212CH。
A. IEA2HB. IEB2HC. IFA2HD. IFB2H9,现有段地址和偏移地址为1025H:0F2AH,那么它所对应存储单元中的物理地址是_________。
A. 1107AHB. 01F4FHC. 11F4FHD. 1117AH10.一个有16个字的数据区,它的起始地址是1000H:117AH,请指出这个数据区最末一个字单元的物理地址是_________。
A.111ACHB.11190HC .11198HD.1119AH11.在机器内部操作中,CPU与存储器之间的任何信息交换使用的都是_________。
汇编语言题库
汇编语言题库
一、简介
汇编语言是一种底层编程语言,用于编写与计算机硬件直接交互的程序。
相比高级编程语言,汇编语言更加接近计算机的底层结构,可以对硬件进行更精细的控制和操作。
本文将为您提供一系列汇编语言题目,帮助您巩固对该语言的理解和应用能力。
二、题库
1. 将寄存器AX中的数值加1,并将结果存入DX寄存器中。
2. 编写一个程序,实现将内存地址为0x1000处的数据逐个累加,并将结果存储到0x2000处。
3. 编写一个循环程序,实现对数组中的元素逐个进行加法运算并存储到另一个数组中。
4. 编写一个汇编程序,实现将一个字符串翻转输出。
5. 编写一个汇编程序,实现对数组进行排序。
6. 模拟实现一个简单的计算器程序,实现加法、减法、乘法和除法运算。
7. 编写一个汇编程序,实现对输入的字符串进行检测,判断是否为回文字符串。
8. 编写一个汇编程序,实现对输入的字符串进行统计,输出其中每个字符出现的次数。
9. 编写一个程序,实现对输入的整数进行二进制转换。
10. 编写一个汇编程序,实现对输入的字符串进行加密,输出加密后的字符串。
三、总结
通过完成以上汇编语言题目,您可以提升对汇编语言的熟练程度和理解能力。
这些题目涵盖了汇编语言中的基本操作和常见应用场景,帮助您更好地掌握该语言的使用。
同时,通过编写和调试这些程序,您也可以加深对计算机底层原理的理解。
(汇编语言)练习题
(汇编语言)练习题【一】填空题〔每题0.5分,共10分〕1、26.25D= B= O= H2、-56D的原码为 B,反码为 B,补码为 B。
3、0C51H的反码为 B,补码为 B。
4、十进制数87的压缩BCD码为 B,非压缩BCD码为 B。
6、设〔BX〕=1000H,〔DI〕=0010H,〔DS〕=2100H,在指令MOV AX,[BX+DI]中,源操作7、设BUF为数据段0234H单元的符号名,其中存放的内容为3456H。
写出以下指令单独执行后的结果。
〔1〕MOVAX,BUF〔AX〕=〔2〕LEAAX,BUF〔AX〕=8、子程序的参数传递方法包括、、。
9、实模式下存储器的20位物理地址由加形成。
【二】选择题〔每题1分,共10分〕1、以下通用数据传送指令的几种传送中,错误的传送方式是()。
A、从累加器到存储器B、马上数到存储器C、从寄存器到存储器D、从存储器到存储器2、使进位位置1的指令是()。
A、CLCB、CMCC、STCD、NOP3、设AL,BL中基本上有符号数,当AL<=BL时转至NEXT处,在CMPAL,BL指令后,应选用正确的条件转移指令是()。
A、JBEB、JNGC、JNAD、JNLE4、指令LOOPZ的循环执行条件是()。
A、CX<>0同时ZF=0B、CX<>0或ZF=0C、CX<>0同时ZF=1D、CX<>0或ZF=15、以下合法的变量名称是〔〕。
A、9BUFB、ADDC、BUF9D、ASSUME6、一条指令中目的操作数不同意使用的寻址方式是()。
A、寄存器寻址B、马上数寻址C、变址寻址D、寄存器间接寻址7、DOS的功能调用号必须送〔〕寄存器。
A、DLB、DHC、ALD、AH8、在实模式下,存储器治理采纳分段模式,每段大小可达〔〕。
A、64MB、1MC、64KD、16字节9、用来存放下一条将要执行的指令地址的寄存器是()。
A、SPB、IPC、BPD、CS10、要使串操作从低地址向高地址进行,应把标志位设置为()。
汇编语言题库
《汇编语言程序设计》习题一、选择题1. 机器数为10000000B, 它代表-127D,则它是()。
A. 补码B. 原码C. 反码D. 原码或反码2.已知VAR为字节变量,下面是关于①MOV BX, OFFSET VAR和②LEA BX, V AR 指令的说明,正确的是()。
A.指令①执行速度比指令②执行速度快B.指令①中OFFSET只能与简单的符号地址相连,不能与诸如VAR[SI]等复杂数相连。
指令②LEA没有这个限制C.指令①有错误,因为VAR为字节变量,而BX为字D.指令①与指令②的作用完全相同3.下列指令中正确的是( )。
A.MOV 100,CL B.MOV CL,100HC.MOV CL,1000 D.MOV CL,1004.设(BX)=8D16H,执行指令序列MOV CL,7 SAR BX,CL 后BX寄存器的内容是()。
A.011AH B.0FF1AH C.2D1AH D.0B00H 5.在程序运行过程中,确定下一条指令的物理地址的计算表达式是()。
A.CS*16+IP B.BX*16+DIC.SS*16+SP D.ES*16+SI6.提示下列指令序列执行后的正确结果是()。
MOV BX,OFFFCHMOV CL,2SAR BX,CLA.3FFFH B.0FFFH C.0FFFCH D.0FFF5H 7.下列指令中不影响标志位的是()。
A.SUB AX,BX B.ROR AL,1C.JNC LABLE D.INT n8.将寄存器AX的内容取负的正确操作是()。
A.NEG AX B.CMP AX,0FFFHC.NOT AX D.CMP AX,AX9. 指令SCAS的寻址方式是()。
A 源操作数为寄存器寻址,目的操作数为寄存器间接寻址B 源操作数为寄存器间接寻址,目的操作数为寄存器间接寻址C 源操作数为寄存器间接寻址,目的操作数为寄存器寻址D 源操作数为寄存器寻址,目的操作数为寄存器寻址10. TABLE为字变量,下面是关于指令①MOV AX,TABLE与指令②LEA AX,TABLE的说明,错误的是()。
(完整版)汇编语言试题及答案
一,单项选择题(每小题1 分,共20 分1-10CCCCAADACB 11-20.ADBBAADDCC1.指令JMP FAR PTR DONE 属于( CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址2.下列叙述正确的是(A.对两个无符号数进行比较采用CMP 指令,对两个有符号数比较用CMP S指令B.对两个无符号数进行比较采用CMPS 指令,对两个有符号数比较用CM P 指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/J NL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/J NB指令3.一个有128 个字的数据区,它的起始地址为12ABH:00ABH, 请给出这个数据区最末一个字单元的物理地址是(A.12CSBHB.12B6BHC.12C59HD.12BFEH4.在下列指令的表示中,不正确的是(A.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC [BX]D.MUL CL5.在进行二重循环程序设计时,下列描述正确的是(A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内6.条件转移指令JNE 的测试条件为( A.ZF=0B.CF=0C.ZF=1D.CF=17.8086CPU 在基址加变址的寻址方式中,变址寄存器可以为(A.BX 或CXB.CX 或SIC.DX 或SID.SI或DI8.已知BX=2000H,SI=1234H, 则指令MOV A X,[BX+SI+2] 的源操作在(中。
A.数据段中偏移量为3236H 的字节B.附加段中偏移量为3234H的字节C.数据段中偏移量为3234H 的字节D.附加段中偏移量为3236H 的字节9.执行如下程序:( MOV AX,0MOV AX,0MOV BX,1MOV CX,100A:ADD AX,BXINC BXLOOP AHLT执行后(BX=(A.99B.100C.101D.10210.上题的程序执行后(AX=(A.5000B.5050C.5100D.515011.对于下列程序段:(AGAIN:MOV AL,[SI]MOV ES:[DI],ALINC SIINC DILOOP AGAIN也可用指令完成同样的功能。
汇编语言考试题库及答案
汇编语言考试题库及答案一、选择题1. 在汇编语言中,以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. ADDC. SUBD. MUL答案:A2. 假设寄存器AX的值为1234H,执行指令“AND AX, 0F0H”后,AX 的值是多少?A. 1230HB. 0F34HC. 0F30HD. 1234H答案:C二、填空题1. 在汇编语言中,________指令用于将立即数加载到寄存器中。
答案:MOV2. 寄存器EAX的高16位是_______。
答案:AX三、简答题1. 解释汇编语言中的“段”是什么概念?答案:在汇编语言中,“段”是内存管理的一个概念,用于将程序的不同部分(如代码、数据、堆栈)分隔开来。
每个段都是内存中的一个区域,它有一个段基址,程序中的地址由段基址和偏移量组合而成。
2. 描述汇编语言中循环结构的实现方式。
答案:循环结构在汇编语言中通常通过标签和跳转指令实现。
首先定义一个循环的开始标签,然后在循环体中执行需要重复的操作。
循环结束前使用条件跳转指令(如JE、JNE等)跳回循环开始的标签,直到满足跳出循环的条件。
四、编程题1. 编写一个汇编程序,实现将两个16位无符号数相加,并将结果存储在寄存器AX中。
答案:```MOV AX, 1234HMOV BX, 5678HADD AX, BX```上述程序首先将1234H加载到AX寄存器中,然后将5678H加载到BX寄存器中,最后使用ADD指令将BX中的值加到AX中,结果存储在AX寄存器中。
2. 编写一个汇编程序,实现将字符串"Hello, World!"存储在内存中。
答案:```.DATAString DB 'Hello, World!', 0```上述程序在数据段定义了一个字符串"Hello, World!",后面跟着一个空字符作为字符串的结束标记。
汇编语言 - 题库
如下程序段中的“DEC CX”指令执行了几次MOV CX,4JCXZ NEXTAGAIN: DEC CXJNZ AGAINNEXT: ....A:1 B:5 C:0 D:4 √下列语句无异义的是A:MOV AL,[BX] √B:INC [AX] C:MOV [AX],5 D:JMP [BP]解答:MOV AL,[BX]无异义, 是字节操作;INC [AX]和MOV [AX],5无法知道是字节操作还是字操作;JMP [BP]不知是段内间接转移还是段间间接转移。
在汇编语言编程中,结束用户程序返回操作系统应使用的中断指令是A:RET 2 B:INT 10H C:RET D:INT 20H √指令MOV ES:[BX],AX中,目的操作数的寻址方式为A:寄存器寻址B:存储器直接寻址C:立即寻址D:寄存器间接寻址√指令MOV AX,1234H中的立即数1234H是存储在A:数据段√B:堆栈段C:代码段D:附加段十进制数–100 的8 位二进制数的补码为A:10011100 √B:10011101 C:1100100 D:10011011将10个字数据3456H存放在存储单元中的伪指令是A:DW 10 DUP(5634H) B:DD 10 DUP(5634H) C:DW 10 DUP(3456H) √D:DD 10 DUP(3456H)条件转移指令JNE 的测试条件是A:CF=1 B:CF=0 C:ZF=1 D:ZF=0 √解答:JNZ 指令和JNE 指令的测试条件都是ZF=0, 即上一次的运算结果不为零/不相等, 则转移。
移位指令SAL用于A:无符号数除2 B:有符号数乘2 C:无符号数乘2 √D:有符号数除2解答:在8086指令集中,算术左移SAL不存在,等价于逻辑左移SHL下述对PSW寄存器中标志位不产生影响的指令是A:JMP NEXT √B:SHL AL,1 C:TEST AL,80H D:INC SI假设VAR为变量,指令MOV BX, OFFSET VAR 的寻址方式是A:直接寻址B:存储器寻址C:立即数寻址√D:间接寻址在条件转移指令中,结果不为0则转移的指令是A:JZ B:JNS C:JS D:JNZ √对于LOOP NEXT循环指令,循环的范围是A:在-256~+256字节之内B:在-128字节之内C:在-128~+127字节之内√D:在+127字节之内A:AND AX,0 B:MOV AX,0 √C:SUB AX,AX D:XOR AX,AX下面指令中影响状态位CF的指令是A:INC AX B:NOT AX C:DEC AX D:NEG AX √在分支指令中,利用符号进行判断的指令是A:JZ B:JS √C:JC D:JO子程序是通过什么来定义的。
汇编语言试题及答案
汇编语言试题及答案一、选择题1. 下列汇编指令中,用于加载立即数至寄存器的是:A. MOVB. ADDC. SUBD. XOR答案:A. MOV2. MOV指令中,源操作数与目的操作数的位数必须相同吗?A. 是B. 否答案:B. 否3. 下列指令中,用于从内存读取数据的是:A. MOVB. JMPC. ADDD. LEA答案:D. LEA4. 下列寻址方式中,可以直接给出操作数的地址的是:A. 直接寻址B. 间接寻址C. 寄存器寻址D. 寄存器间接寻址答案:A. 直接寻址5. CPU中的程序计数器(PC)用于保存:A. 下一条指令的地址B. 当前指令的地址C. 上一条指令的地址D. 中断服务程序的地址答案:A. 下一条指令的地址二、填空题1. 8086处理器的数据总线位数是_________。
答案:162. MOV AX, BX 汇编指令是将______的值复制到______。
答案:BX,AX3. 寻址方式LEA BX, [SI+DI]的含义是将_______与_______的和作为BX的值。
答案:SI,DI4. 8086处理器的寻址空间大小是_________。
答案:1MB5. 标志寄存器中的ZF标志位表示_________。
答案:零标志位,表示结果为零三、简答题1. 简述什么是汇编语言?汇编语言是一种底层的程序设计语言,通过使用助记符来代替具体的操作码,使得编写的代码易于阅读和理解。
汇编语言直接操作计算机硬件,与机器语言密切相关,最终会被翻译成机器语言运行在计算机上。
2. 什么是寄存器?寄存器是计算机内部用于存储数据和执行操作的高速存储器。
不同的计算机体系结构会有不同的寄存器数量和用途。
寄存器的访问速度非常快,因此在编写汇编语言代码时,经常使用寄存器来进行数据的操作和传递。
3. 请举例说明MOV指令的用法及其作用。
MOV指令用于将数据从一个位置复制到另一个位置。
它可以将立即数、寄存器或内存中的数据复制到目标寄存器或内存位置。
汇编语言试题
一、填空题(每空1分,共70分)二、单选(每题1分,共40分)40题三、多选(每题2分,共20分)10题四、判断(每题0.5分,共10分)20题五、程序分析(40分)8题六、编程(20分)2题一、填空题(每空1分,共70分)中央处理器包括、、。
(运算器控制器寄存器组)(出自第1章)物理地址是指实际的位主存单元地址,每个存储单元对应唯一的物理地址。
(20)(出自第1章)十进制数11.375转换为二进制数为;二进制数1101101转换为十进制数为。
(1011.011 109)(出自第1章)十进制数28转换为十六进制数为, 十六进制数3A转换为十进制数为。
(1CH 58)(出自第1章)十六进制数A2B转换为二进制数为, 二进制数110111100101.1011转换为十六进制数为。
(101000101011 0DE5.BH)(出自第1章)37的压缩BCD编码是。
(00110111B)(出自第1章)用二进制代码书写指令和程序的语言,称为。
(机器语言)(出自第1章)计算机中的指令由和两部分组成。
(操作码操作数)(出自第5章)把A和B两个寄存器的内容进行异或运算,若运算结果是,那么A、B寄存器的内容必定相同。
(零或0)(出自第7章)AL,BL中存放着压缩的BCD数,(AL)=18H,(BL)=47H,执行如下两条指令ADD AL,BL 和DAA后,(AL)=________。
(65H)(出自第7章)当指令“SUB AX,BX”执行后,CF=1,说明最高有效位;对数,说明操作结果溢出。
(有借位有符号)(出自第7章)指令SAR可用于除以2,而指令SHR则可用于除以2。
(有符号数无符号数)(出自第7章)假设(DS)=0B000H,(BX)=080AH,(0B080AH)=05AEH,(0B080CH)=4000H,当执行指令“LES DI,[BX]”后,(DI)= ,(ES)= 。
(05AEH 4000H)(出自第6章)对于指令XCHG BX,[BP+SI],如果指令执行前,(BX)=6F30H,(BP)=0200H,(SI)=0046H,(SS)=2F00H,(2F246H)=4154H,则执行指令后:(BX)=,(2F246H)= 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二、填空题1.假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那么该字的字地址是________。
2.“SHL OPR,CNT”指令中OPR可以是除______以外的任何寻址方式。
3.“VAR DB 5 DUP(8,2 DUP(5))”语句汇编应分配______个字节单元。
4.指令“MOV AX,20H[SI]”中源操作数的物理地址表达式是______。
5.乘法指令语句“MUL CL”,16位的乘积存放在______中。
1.在8086/8088系统中,存储器是分段的,每段最大长度是_______字节,段内偏移地址从_______到_______。
2.在程序调试时,显示某指令存放地址是2340H:0056H,则物理地址是_______。
3.汇编语言源程序中的语句有三种类型,它们是_______语句,_______语句和_______语句。
4.指令MOV AX,[BX+SI+10H]源操作数寻址方式是_______。
5.执行段间返回指令RET时,将栈顶的一个字弹出到_______后,又弹出一个字到_______寄存器中。
6.已知DS=3000H,DI=1200H,(31200H)=64H,(31201H)=93H,执行NEG WORD PTR [DI]后,(31200H)=_______,(31201H)=_______。
7.执行下列指令序列MOV AL,80HMOV BL,08HCBWIDIV BL则AH=_______AL=_______。
8.已知数据定义语句ORG 120HVECT1 DW 200HVECT2 DW VECT1执行MOV AX,VECT1 AX=_______MOV BX,VECT2 BX=_______。
三、简答题1、在指令系统中,段内、段间返回均为RET指令。
试回答:(1)执行段内返回RET指令时,执行的操作是:(2)执行段间返回RET指令时,执行的操作是:2、用两种办法,分别只用一条指令实现将DA1数据区中数据个数送入CX。
DA1 DB 20H DUP(?)DA2 DW 10H,45H,7856H3、已知:BX=1357H,BP=2468H,SI=1000H,DI=2000H,SS=1000H,DS=2000H,ES=3000H,试分别指出下列各指令中存储器操作数的物理地址。
MOV AL,[BP+20H]的物理地址是:MOV [BX+DI-80H],AL的物理地址是:MOV BL,ES:[SI+40H]的物理地址是:4、请指出下列指令错误原因:A. OR AX,[CX]B. ADD [SI],[BX][DI]C. JMP BYTE PTR LOOPSD. SAR AX,4E. RCL DX5、DS=2000H,AX=2000H,BX=5030H,(25030H)=03H,(25031H)=05H,那么执行下列语句,A.MOV AX,BX AX= ;B.MOV AX,[BX] AX=6、数据定义如下X1 DB 10H,100,-1X2 DW 10H,100,-1X3 DD ?COUNT EQU X3-X1变量COUNT的值是,其表示的意义是。
7、A DW 1234HB DW 5678H┇PUSH APUSH BPOP APOP B试回答:上述程序段执行后(A)= ;(B)= 。
8、设某数据段:DA TA SEGMENTORG 20HNUM1=8NUM2=NUM1+10HDA1 DB 'COMPUTER'DB 0AH,0DHCOUNT EQU $-DA1DA2 DW 'CO','MP','UT','ER'DA TA ENDS试回答:(1)DA1的偏移地址是:()(2)COUNT的值是:()(3)DA2+5字节单元的内容是:()9、下列程序段完成什么工作?DAT1 DB 30 DUP(?)DAT2 DB 10 DUP(?)┇MOV CX,10MOV BX,20MOV SI,0MOV DI,0NEXT:MOV AL,DAT1[BX][SI]MOV DAT2[DI],ALINC SIINC DILOOP NEXT10、下列语句在存储器中分别为变量数据区分配多少个字节单元?(1)V AR3 DD 10(2)V AR4 DW 4 DUP(?),211、设DS=2000H,BX=1256H,变量TABLE的偏移地址为20A1H,(232F7H)=3280H.下列指令分别执行后,IP的值各是多少?(1)JMP BX IP=___________________(2)JMP TABLE[BX] IP=___________________12、选用NOT,AND,OR XOR逻辑指令编写一指令序列,实现将AL第0位,第2位同时置1,其他位变反。
13、在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。
例如:PUSH AXPUSH BXPUSH CXPUSH DX:恢复现场试写出恢复现场时的指令序列。
14、完成下列操作,选用什么指令:(1)将AX的内容,减去0520H,和上次运算的借位;(2)将变量名TABL的段地址送AX;15、D1 DB 20H DUP(?)D2 DW D1请写出用一条指令实现取D1的偏移地址送给SI中的三种方法。
16、在8086/8088系统中,存储器是分段组织的,按各段实际长度定位。
已知(DS)=2150H,(CS)=2640H,(SS)=2250H,SP=100H,问题:(1)数据段起始地址是多少?(2)计算数据段中最多可以存放多少个字节数据?(要有具体计算式)(3)代码段最多可以存放多少个字节程序代码?说明理由。
17、已知数据段定义如下:DATA SEGMENTORG 100HBUF DW 'CD',1,3 DUP(4,2 DUP(8,6))VRA DB 4AHDATA ENDS单独执行下列语句LEA BX,BUF BX=_______MOV CX,VRA-BUF CX=_______(用十六进制数表示)。
18、分别说明下列两组指令中两条指令操作的相同点和不同点(1)SUB AX,BX CMP AX,BX(2)AND CX,DX TEST CX,DX19、下列每组指令中的两条指令有否区别?若有,请说出它们的不同点。
A. MOV AX,OFFSET TABLE LEA AX,TABLEB. JMP SHORT L1 JMP NEAR PTR L1C. MOV AX,[BX] MOV AX,BXD. SUB DX,CX CMP DX,CXE.MOV [BP][DI],AL MOV DS:[BP][DI],AL20、系统功能调用的方法如何?举例说明。
21、编程序,使:A.CL寄存器内容取反B.BX寄存器的低四位置1C.AX寄存器的低四位清0D.CX寄存器的低四位变反E.用TEST指令测试DL寄存器的第3位和第6位是否为零。
22、指令AND AX,OPR1 AND OPR2中,OPR1和OPR2是两个已赋值的变量,问两个AND 操作有什么区别?23、假定(DX)=10111001B,(CL)=0.3,(CF)=1,试确定下列各条指令单独执行后,DX中的值。
(1)SHR DX,1(2)RCR DL,1(3)RCL DX,CL24、写出完成下述功能的程序段:(1)传送25H到AL寄存器(2)将AL的内容乘以2(3)传送15H到BL寄存器(4)AL的内容乘以BL的内容并请写出最后(AX)=?25、写一程序段,求双字长数DX∶BX的相反数。
26、在指令系统中,段内、段间返回均为RET指令。
试回答:(1)执行段内返回RET指令时,执行的操作是:(2)执行段间返回RET指令时,执行的操作是:27、ARY DW 10 DUP(?)┇MOV AL,TYPE ARYMOV BL,LENGTH ARYMOV CL,SIZE ARY上述MOV指令序列执行后的结果是什么?28、设某数据段:DA TA SEGMENTORG 20HNUM1=8NUM2=NUM1+10HDA1 DB 'COMPUTER'DB 0AH,0DHCOUNT EQU $-DA1DA2 DW 'CO','MP','UT','ER'DA TA ENDS试回答:(1)DA1的偏移地址是:___________________。
(2)COUNT的值是:___________________。
(3)DA2+5字节单元的内容是:___________________。
29、设DS=3A00H,ES=4A00H,在段地址:偏移地址=4A00H:9000H 字单元中有数据3C50H。
请用一条指令将数据3C50H装入AX寄存器。
(不得使用立即数)30、设BX=0FFFFH,DI=20H,DS=2000H,CL=8,(20020H)=4567H,下列各条指令分别执行后BX中的内容各为多少?A. ROL BX,CL ;BX=______B. MOV BX,[DI] ;BX=______31、DAT1 DB 1,2,3,4DAT2 DW 3412H,5678H┇MOV AX,DAT1+1 ;将DAT1+1字单元内容送入AX中MOV BL,DAT2+1 ;将DAT2+1字节单元内容送入BL中已知上述两条MOV语句有语法错误,请根据注释字段的要求将其改正(分别用一条语句改正)。
32、DA1 DB 20H DUP(?)DA2 DW 10H,45H,7856H请用两种办法,分别只用一条指令实现将DA1数据区中数据个数送入CX。
33、用三种不同方法实现在字存储单元DB1中存储2000H。
34、已知:BX=1357H,BP=2468H,SI=1000H,DI=2000H,SS=1000H,DS=2000H,ES=3000H,试分别指出下列各指令中存储器操作数的物理地址。
MOV AL,[BP+20H]的物理地址是。
MOV [BX+DI-80H],AL的物理地址是。
MOV BL,ES:[SI+40H]的物理地址是。
四、程序分析题1、XOR AL,ALMOV AH,ALADD AH,9JZ NEXTXCHG AH,ALJMP K1NEXT:MOV AH,0FFHK1:……上述程序运行后,AH= ,AL= 。
2、XOR AL,ALINC ALNEG ALINC ALMOV BL,7FHADC AL,BL上述程序段运行后,AL= ,CF= 。
3、已知AX=1234HMOV BX,AXNEG BXADD AX,BX执行上述三条指令后,AX= ,BX= 。