《汇编语言》试题(试题库02)
汇编语言题库
![汇编语言题库](https://img.taocdn.com/s3/m/33d8a51ccd7931b765ce0508763231126edb77ff.png)
汇编语⾔题库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)。
汇编语言试题及参考答案
![汇编语言试题及参考答案](https://img.taocdn.com/s3/m/2639d8c00129bd64783e0912a216147916117e1c.png)
汇编语言试题及参考答案一、选择题(每题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的作用是________。
汇编语言试题 (2)
![汇编语言试题 (2)](https://img.taocdn.com/s3/m/313655650166f5335a8102d276a20029bc646369.png)
汇编语言试题题目一:寄存器及栈操作假设有一段汇编代码如下,请根据代码的功能回答相应的问题:push ebpmov ebp, espmov eax, dword ptr [ebp + 8]add eax, dword ptr [ebp + 12]pop ebpret1.以上汇编代码中,push ebp和pop ebp的作用分别是什么?2.mov ebp, esp的作用是什么?有什么作用范围?3.dword ptr是什么意思?4.请解释ret的作用。
解答:1.push ebp的作用是将ebp的值保存到栈中,而pop ebp的作用是将栈中的值弹出,并将其赋给ebp寄存器。
这是函数调用的常用操作,用来保存和恢复函数的堆栈帧。
12.mov ebp, esp的作用是将栈顶地址存入ebp寄存器中,以便在函数内部可以通过ebp寄存器来访问函数参数和局部变量。
作用范围是当前函数内部。
3.dword ptr是一个内存访问修饰符,用来指定要访问的内存单元的大小和类型。
在本题中,dword ptr指示要访问的内存单元是一个 32 位的双字(double word)。
4.ret指令用于函数返回,它将弹出栈顶的返回地址,并跳转到该地址执行,从而实现函数的返回。
题目二:条件分支和循环请完成以下汇编代码的功能描述,并回答相应问题:mov eax, 10mov ecx, 0loop:cmp eax, 0je endadd ecx, eaxdec eaxjmp loopend:1.请描述以上汇编代码的功能。
2.eax和ecx分别用来存储什么数据?请解释mov eax, 10和mov ecx,0的作用。
3.cmp eax, 0和je end的作用是什么?24.dec eax是什么意思?5.jmp loop的作用是什么?解答:1.以上汇编代码的功能是计算从 10 累加到 1 的结果,并将结果存储在ecx寄存器中。
2.eax用来存储循环计数器(初始值为 10),ecx用来存储累加结果。
汇编语言试题试题及其答案和评分
![汇编语言试题试题及其答案和评分](https://img.taocdn.com/s3/m/4c0160d87f1922791688e81e.png)
汇编语言原理习题集一、单项选择题(每小题1分,共20分)1、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是( )A、85B92HB、86192HC、BB690HD、12169H2、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( )A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS3、循环指令LOOPNZ终止循环的条件是( )。
A、CX=0,且ZF=0B、CX=0,或ZF=1C、CX10,且ZF=0D、CX10,或ZF=14、对寄存器AX的内容乘以4的正确指令序列是( )。
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、OF,AF,PFB、OF,AF,CFC、OF,PF,CFD、AF,PF,CF6、设DH=10H,执行NEG DH指令后,正确的结果是( )。
A、DH=10H CF=1B、DH=0F0H CF=0C、DH=10H CF=0D、DH=0F0H CF=17、下列传送指令中有语法错误的是( )。
A、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX8、下面指令执行后,改变AL寄存器内容的指令是( )。
A、TEST AL,02HB、OR AL,ALC、CMP AL,BLD、AND AL,BL9、执行除法指令后,影响的标志位是( )。
A、CF,OFB、SF,ZFC、CF,OF,SFD、AF,CF,OF,PF,SF,ZF都不确定10、执行下面指令序列后,结果是( )。
MOV AL,82HCBWA、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H11、与MOV BX,OFFSET VAR指令完全等效的指令是( )。
汇编语言试题及参考答案
![汇编语言试题及参考答案](https://img.taocdn.com/s3/m/f75251ac82d049649b6648d7c1c708a1284a0a3d.png)
汇编语言试题及参考答案汇编语言试题及参答案一、填空题1. ZF标志位是标志结果是否为零的,若结果,ZF为(),否则ZF为()。
当ZF 为1 时,SF 为()2. 标号可以有两种类型属性。
它们是()和()3.8 位无符号整数的表示范围为0--255 ,写成16 进制形式为(),8 位有符号整数的表示范围为-128--+127, 写成16 进制形式为()4. 伪指令DB,GROUP 和NAME 三个标号名字域必须有名字的是(),不得有名字的是(),可有可无名字的是()。
5. 循环程序通常由()()()和循环结果外理四部分构成6. 在数值不达式中,各种运算符可可混合使用,其优先次序规则*,/()于+,-;XOR ,OR()于AND,LT ()于GT7. 宏指令定义必须由伪指令()开始,伪指令()结束,两者之间的语句称为()8. 调用程序与子程序之间的参数传递方法有四种,即堆栈法()()()9. 分别用一条语句实现下述指明的功能( 1 )栈顶内容弹出送字变量AYW ()(2)双字变量AYD 存放的地址指针送ES 和SI()(3)变量AY2 类型属性送AH ()( 4 )不允许中断即关中断()(5)将字符串‘ HOW ARE YOU 存入变量AYB ()( 6 )子程序返回调用程序()(7)地址表达式AYY[4]的偏移地址送字变量ADDR()(8)AX 的内容加 1 ,要求不影响CF()(9)BX 的内容加1,要求影响所有标志位()(10)若操作结果为零转向短号GOON ()二、单选题1.IBM PC 微机中,有符号数是用()表示的1 .原码2.补码3.反码4.BCD 码2. 把汇编源程序变成代码程序的过程是()1 .编译2.汇编3.编辑4.链接三、己知:VAR1 ,VAR2 的类型属性分别为字和字节,标号LPFAR 的类型属性为FAR。
指出下列非法语句的错误原因1. POP CS ()2.INC [BX] ()3. MVL 8()4. JLE LPFAR()5. MOV DB,1800()6. MOV[DI],VAR17.SUB AX,VAR2()8.CMP SS AX()四、简答题1. 试述子程序的一般结构组成2. 标号有哪三个属性?其含义是什么?3. 试述CMP AX ,BX 和SUB AX ,BX 两条语句的异同点?五、阅读如下程序段,回答所提出的问题,假定X1,X2,...XN 为无符号数。
国家二级(Python)机试历年真题试卷汇编2含答案及解析
![国家二级(Python)机试历年真题试卷汇编2含答案及解析](https://img.taocdn.com/s3/m/ed5763316f1aff00bfd51e2a.png)
单项选择题---为题目类型1.设元素集合为D={1,2,3,4,5,6}。
B=(D,R)为线性结构则R 是( )。
(A)R={(6,1),(5,6),(1,3),(2,4),(3,2)}(B)R={(4,5),(6,1),(5,6),(1,3),(2,4),(3,2)}(C)R={(6,1),(5,6),(1,3),(3,4),(3,2)}(D)R={(6,1),(5,6),(2,3),(2,4),(3,2)}2.对长度为8 的数组进行快速排序,最多需要的比较次数为( )。
(A)8(B)8(C) 6(D) 43.树的度为3,共有31 个结点,但没有度为1 和2 的结点。
则该树中度为3 的结点数为( )。
(A)1(B)9(C)0(D)不可能有这样的树4.设栈与队列初始状态为空。
将元素A、B、C、D、E、F、G、H 依次轮流入栈和入队,然后依次轮流出栈和退队,则输出序列为( )。
(A)A,B,C,D,H,G,F,E(B)B,G,D,E,F,C,H,A(C)D,C,B,A,E,F,G,H(D)G,B,E,D,C,F,A,H5.数据字典的作用是( )。
(A)定义流程图中各个成分的具体含义(B)定义数据流图中各个成分的具体含义(C)定义系统结构图中各个成分的具体含义(D)定义功能结构图中各个成分的具体含义6.黑盒测试技术依据的是( )。
(A)软件功能的描述(B)程序的逻辑结构(C)程序的物理结构(D)软件行为的描述7.下面描述错误的是( )。
(A)对象一定有标识(B)对象一定有属性和方法(或操作)(C)对象具有封装性(D)不同对象的同一属性一定有相同的属性值8.关系数据模型的3 个组成部分中不包括( )。
(A)数据操作(B)数据结构(C)并发控制(D)完整性规则9.学校规定一个年级的所有班配备一名辅导员,则实体班级与实体辅导员之间的联系是( )。
(A)多对多(B)多对一(C)一对多(D)一对一10.定义学生选修课程的关系模式如下:SC(S#,Sn,C#,Cn,T#,G,Cr)(其属性分别为学号、姓名、课程号、课程名、授课老师号、成绩、学分)并且一门课程可由多个教师教授,则该关系的键是( )。
汇编语言复习试题
![汇编语言复习试题](https://img.taocdn.com/s3/m/c282924879563c1ec5da717e.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.下列指令执行后既能使AX=0同时又使CF=0,OF=0的是A。
A.XOR AX,AXB.AND AX,AXC.OR AX,AXD.TEST AX,08.假设执行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.设NUM1 EQU 100NUM2 =64H 下面指令执行后,BL中全为1的指令是 D 。
汇编语言试题及答案
![汇编语言试题及答案](https://img.taocdn.com/s3/m/5fd01330571252d380eb6294dd88d0d233d43cc5.png)
汇编语言试题及答案一、选择题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. 论述汇编语言在现代计算机系统中的作用和局限性。
答案:汇编语言在现代计算机系统中主要用于系统底层开发、硬件驱动编写、嵌入式系统编程等领域。
其作用在于能够直接控制硬件,实现高效的资源利用。
然而,由于其复杂度高、可读性差、可移植性低,它在高级应用开发中的使用受到限制。
《汇编语言程序设计》必考试题及答案
![《汇编语言程序设计》必考试题及答案](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/5fccec65f61fb7360b4c6599.png)
《汇编语言程序设计》试题专业姓名成绩一、单项选择题(每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~FFH6. 如果在一个程序段开始执行之前,(cs)=0A7F0H,(1P)=2B40H,试问该程序段的第一个字的物理地址是()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]D.MOV BYTE PTR [100],10012下列程序段执行后,寄存器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) 不允许单步二.不定项选择题,漏错多选不得分。
大工14秋《汇编语言程序设计》在线测试2答案
![大工14秋《汇编语言程序设计》在线测试2答案](https://img.taocdn.com/s3/m/7135d0a485868762caaedd3383c4bb4cf7ecb728.png)
大工14秋《汇编语言程序设计》在线测试2答案大工14秋《汇编语言程序设计》在线测试2单选题判断题多选题一、单选题(共10道试题,共30分。
)1.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的编码。
目前,微机中普遍采用的是()。
A. BCD码B.二进制码C. ASCII码D.十六进制码正确答案:C2.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令是()。
A. CMPB. SUBC. ANDD. MOV正确答案:D3.当程序顺序执行时,每取一条指令语句,IP指针增加的值是()。
A. 1B. 2C. 3D.由指令长度决定的正确答案:D4.一个有16个字的数据区,它的起始地址是70A0H:DDF6,则这个数据区最末一个字单元的物理地址是()。
A. 7E806HB. 7E814HC. 7E815HD. 7E80BH正确答案:C5.若(AX)=2000H,(BX)=0050H,(H)=12H,(H)=34H,执行MOV AX、[BX]指令后,AX寄存器中的内容是()。
A. (AX)=0050HB. (AX)=0012HC. (AX)=1234HD. (AX)=3412H正确谜底:D6.若AX=349DH,CX=0FH。
则执行指令AND AX,CX 后,AX的值是()。
A. 349DCHB. 000DHC. 049DHD. 0240H正确谜底:B7.与指令MOV AX,NOT 0F0H等效的汇编语言指令是()。
A. MOV AX,0FHB. MOV AX,0FF0FHC. MOV AX,000FHD. MOV AX,0F0H正确谜底:B8.指令MOV AX,COUNT[SI],它源操作数的寻址方式是()。
A.直接寻址B.寄存器相对寻址C.寄放器间接寻址D.基址变址寻址正确答案:B9.CPU发出的访问存储器的地址是()。
A.物理地址B.偏移地址C.逻辑地址D.段地址正确答案:A10.若AX=3500H,CX=56B8H,当执行AND AX,CX指令后,AX的值是()。
汇编语言程序设计练习测试题库
![汇编语言程序设计练习测试题库](https://img.taocdn.com/s3/m/ac65a4c97375a417876f8f32.png)
《汇编语言程序设计》练习测试题库一 .选择题(只有一个正确答案,填在题干前的括号里)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/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. IEA2H B. IEB2H C. IFA2H D. IFB2H9,现有段地址和偏移地址为1025H:0F2AH,那么它所对应存储单元中的物理地址是_________。
A. 1107AH B. 01F4FH C. 11F4FH D. 1117AH10.一个有16个字的数据区,它的起始地址是1000H:117AH,请指出这个数据区最末一个字单元的物理地址是_________。
《汇编语言》试题(A4)及参考答案
![《汇编语言》试题(A4)及参考答案](https://img.taocdn.com/s3/m/46eef696d15abe23482f4db9.png)
专业级,学生姓名: 学号:精品文档汇编语言试题(A)参考答案一:选择题(每题2分)1.B2.B3.B4.C5.C6.C7.B8.C9.A10.C二:填空题(每题2分)1. 0,5,52.55H3.04034.随机数5..ASM6.200FEH7.10108.169..OBJ10.00H三:简答题(每题5分)1.(1)用DOS 21H中断调用的功能调用4CH在用户程序结束后插入下面语句 MOV AH,4CH INT 21H(2)用BIOS中断调用20H 在用户程序结束后插入:INT 20H2. FAR;段间调用。
NEAR;段内调用。
3.(1)无符号数乘2:SHL AX,1;RCL DX,1无符号数除2:SHR DX,1;RCR AX,1(2)有符号数乘2:SHL AX,1;RCL DX,1有符号数除2:SAR DX,1;RCR AX,14.MOV BX,OFFSET ADDNUMADD [BX]MOV AL,DS:[BX]5.(1)1200H(2)4C2AH(3)4C2AH(4)65B7H6.AX为地址[1200H]所指内容,AX 为1200H。
精品文档四:编程题( 2题共30分)1.(10分)MOV AX,2E00HMOV DS,AXMOV BX,[0100H]MOV AX,[0100H+2]MOV DS,AXMOV AX,[BX]2.(20分)STACK SEGMENT PARA STACK ‘stack’ (5分)DB 64 DUP(0)STACK ENDSDATA SEGMENT (5分)STRING DB‘……$’RESULT DB 26 DUP(0)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA (5分)MAIN PROC FARSTART: MOV DX,DATAMOV DS,DXMOV CX,0FFH;255MOV AH,0MOV SI,0NEXT: MOV AL,STRING[SI] (5分)SUB AL,61HMOV DI,AXINC RESULT[DI]INC SILOOP NEXTMOV AH,4CHINT 21HMAIN ENDPCODE ENDSEND START汇编语言试题(A)评分标准和评分细则一:选择题(每题2分)1.B2.B3.B4.C5.C6.C7.B8.C9.A10.C二:填空题(每题2分)1. 0,5,52.55H3.04034.随机数5..ASM6.200FEH7.10108.169..OBJ10.00H三:简答题(每题5分)1.(1)用DOS 21H中断调用的功能调用4CH在用户程序结束后插入下面语句 MOV AH,4CH INT 21H (2)用BIOS中断调用20H 在用户程序结束后插入:INT 20H 2. FAR;段间调用。
汇编语言程序设计试题及答案
![汇编语言程序设计试题及答案](https://img.taocdn.com/s3/m/e51e4bc4ce2f0066f533223d.png)
《汇编语言程序设计》试题专业姓名成绩一、单项选择题(每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~FFH6. 如果在一个程序段开始执行之前,(cs)=0A7F0H,(1P)=2B40H,试问该程序段的第一个字的物理地址是()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]D.MOV BYTE PTR [100],10012下列程序段执行后,寄存器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中()命令用来汇编一句汇编语言语句A 、A B、U C 、E D、D15. 指令STI 的功能是( )(A)允许中断(B)不允许中断(C)允许单步(D) 不允许单步二.不定项选择题,漏错多选不得分。
汇编语言(第2版)-郑晓薇-汇编语言习题-测验题答案
![汇编语言(第2版)-郑晓薇-汇编语言习题-测验题答案](https://img.taocdn.com/s3/m/120df826f90f76c660371aa8.png)
汇编语言(第2版),郑晓薇汇编语言各章习题、测试题答案习题一1.1 分别将下列二进制数作为无符号数和带符号数转换为十进制和十六进制数11010011 01110111 10000011 00101111 101010101.2 十六进制运算1A52H+4438H 3967H-2D81H 37H×12H 1250H×4H1.3 将十进制数变为8位补码并做运算(结果用二进制、十六进制、十进制表示)29+53 73-24 -66+82 -102-151.4 用压缩BCD码计算(结果用二进制、BCD码、十进制表示)29+53 73-24 66+18 132+751.5 符号位扩展(字节扩展为字,字扩展为双字)20A3H 94H 3456H 7FH EC00H1.6 若机器字长为16位,其无符号数表示范围是多少?带符号数表示范围是多少?分别用十进制和十六进制表示。
1.7 写出下列十六进制数所能代表的数值或编码:(1)38H (2)FFH (3)5AH (4)0DH1.8 将下列十进制数分别转换为二进制、十六进制、二进制补码、压缩BCD码和ASCII码:(1)108 (2)46 (3)-15 (4)2541.9 写出下列算式的8位二进制运算结果,标志位CF、SF、ZF、OF分别是什么值?(1)56+63 (2)83-45 (3)-74+29 (4)-12-371.10 查表,指出ASCII码0DH、0AH、07H、1BH、20H、60H、50H、70H对应的控制字符。
测验一单选题:1.已知X=76,则[X]补= 。
A. 76HB. 4CHC.0B4HD.0CCH2.已知[X]补=80H,则X= 。
A. 80HB. 0C. 0FFHD. -80H3.已知[X]补=98H,则[X]补/2= 。
A. 0CCHB.4CHC. 49HD. 31H4.已知X=78,Y=-83,则[X+Y]补= 。
A. 0F5HB. 0A1HC. 0FBHD. 65H5.将124转换成十六进制数的结果是A. 7CHB. 7DHC. 7EHD. 7BH6.将93H看成一个压缩BCD码,其结果是A. 10010101B. 10010011C.10000011D.100000017.45转换成二进制数是A.10101101B.00111101C. 00101101D. 100111018.6CH转换成十进制数是A. 118B. 108C. 48D. 689.将93H扩展为字的结果是A. FF93HB. 0093HC. 1193HD. 1093H10.56的压缩BCD码是A. 38HB. 56HC. 0506HD. 3536H11.ASCII中的47H表示的字符是A. “7”B. “G”C. “g”D. “E”12.十进制数-128的8位二进制数的补码为A. 11111110B. 01111111C. 10000000D. 1000000113.下列为补码表示,其中真值最大的是A. 10001000B.11111111C.00000000D.0000000114.十六进制数88H,可表示成下面几种形式,请找出错误的表示A. 无符号十进制数136B. 带符号十进制数-120C. 压缩BCD码十进制数88D. 8位二进制数-8的补码15.计算机对字符、符号采用统一的二进制编码。
(完整版)汇编语言试题及答案
![(完整版)汇编语言试题及答案](https://img.taocdn.com/s3/m/c2b81d85dc3383c4bb4cf7ec4afe04a1b171b057.png)
一,单项选择题(每小题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也可用指令完成同样的功能。
【汇编语言程序设计】试题及答案合集 2(1)
![【汇编语言程序设计】试题及答案合集 2(1)](https://img.taocdn.com/s3/m/912f031d0b4e767f5acfce68.png)
汇编语言程序设计试题及答案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中。
《汇编语言程序设计》必考试题及答案
![《汇编语言程序设计》必考试题及答案](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/a3c48a516ad97f192279168884868762cbaebb49.png)
汇编语言试题及答案一、选择题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指令用于将数据从一个位置复制到另一个位置。
它可以将立即数、寄存器或内存中的数据复制到目标寄存器或内存位置。
汇编语言试题
![汇编语言试题](https://img.taocdn.com/s3/m/a51b1900700abb68a882fb13.png)
一、填空题(每空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分,共20分)
1.8088 CPU从功能划分上由________和________两部分组成。
2.用于控制字符操作地址增量方向的标志寄存器是________,表示加法结果溢出的标志寄存
器是________,允许产生中断时,IF=_______。
3.80386有3种存储器地址空间,即_________、________和_______。
4.设SS=2000H,SP=100H,执行PUSH AX后,则SP的值变为____________,栈顶的物理
地址为____________。
5.用于表示无符号数大于或等于的条件转移指令是________;用于表示带符号数大于或等于
的条件转移指令是________。
6.设CF=1,AX=1000H,执行RCL AL,1后,AX=_________,CF=_________。
7.取消表达式赋值或宏定义的伪指令是_________。
8.中断类型号为5的中断服务程序的入口地址在中断向量表中的指针为_________,而中断
类型号为200的指针为_________。
9.DEBUG是为汇编语言设计的一种调试工具,它的命令有多种,命令D和命令U分别表
示_________、_________,而表示执行并显示系统环境命令是_________。
二、判断题,正确的打“√”,错误的打“×”,并说明理由(每题1分,共10分)
1.MOV [DX],AX ()
2.MOV BYTE PTR [BX],1234H ()
3.SUB AL,CL ()
4.ADD [DI],[SI] ()
5.DIV 12H ()
6.POP CS ()
7.RCL CX,4 ()
8.LEA BX,OFFSET BUF ()
9.MOV 3456H,CX ()
10.AND AH,01H ()
三、程序分析题(共20分)
1.已知数据段和程序:
DATA SEGMENT
STR1 DW -32
STR2 DB 2 DUP(‘A’,1),35H,21H
COUNT EQU $-STR2
STR3 DW STR1
DATA ENDS
(1)画出该数据段的存储形式(6分);
(2)指出下列指令源操作数据的寻址方式,并给出目的(寄存器或存储器地址)及目的操作数的数值(6分)
①MOV DI,OFFSET STR2
②MOV CX,COUNT
③ADD CX,WORD PTR [DI+2]
2.分别指出下面两程序段的含义(各4分,共8分)。
(1)程序段1:
MOV CH,AH
SUB AL,BL
DAS
XCHG AL,CH
SBB AL,BH
DAS
MOV AH,AL
MOV AL,CH
RET
(2)程序段2:
NUM1=0
REPT 9
NUM1=NUM1+1
NUM2=0
REPT 9
NUM2=NUM2+1
DB NUM2×NUM1
ENDM
ENDM
四、读程序填空题(每空2分,共16分)
以下程序实现冒泡法排序,在空格处补上落下的指令或部分指令及操作数。
DA TA SEGMENT
N EQU 16
A ______(1)__________ ;定义长度为N的字数组
DA TA ENDS
CODE SEGMENT
ASSUME CS:CODE1, DS:DA TAX
START: ____(2)________
______(3)______ ;初始化DS
MOV CX,N
DEC CX
L1: ______(4)_________
MOV CX,N-1
MOV BX,0
L2: MOV AX,A[BX]
CMP AX,A[BX+2]
______(5)_________, L3
______(6)_________
MOV A[BX+2],AX
L3: ADD BX,2
LOOP L2
______(7)_________
LOOP L1
MOV AX,____ (8)_______
INT 21H ;返回DOS
CODE ENDS
END START
五、编程题(共34分)
1.编写子程序GetString,从键盘上输入一个长度为N的字符串,该子程序的入口条件(已预
置好)为:CX=N,DS:SI=接收此串的首地址。
(8分)
2.编写一个宏,把DX、AX双字数据的内容逻辑右移4位。
(8分)
3.设在BUF单元中存放一个-9~+9的字节数据,在TAB数据区中存放了0~9的平方值,
请用直接查表法编写一个子程序,在TAB中查找处BUF单元中数据对应的平方值送SQR
单元,并写出主程序的调用方式。
(9分)
数据段如下:
DATA SEGMENT
BUF DB XXH
TAB DB 0,1,4,9,16,25,36,49,64,81
SQR DB ?
DATA ENDS
4.设平面上有一点P,其直角坐标为(X,Y),试编程完成以下操作的程序:
(1)若P点落在第I象限,则K单元的值赋值I(I=1,2,3,4)
(2)若P点落在坐标轴上,则K单元的值赋值0。
(9分)。