大工《汇编语言程序设计》大作业参考题目及要求【内容仅供参考】686

合集下载

大工14 秋《汇编语言程序设计》在线测试3

大工14 秋《汇编语言程序设计》在线测试3

大工14 秋《汇编语言程序设计》在线测试3一、单选题(共10 道试题,共30 分。

)1. 用指令的助记符、符号地址、标号和伪指令、宏指令等书写程序的语言称为()。

A. 汇编语言B. 高级语言C. 机器语言D. 低级语言正确答案:A2. 中断向量是()A. 子程序入口B. 子程序入口地址的地址C. 中断服务程序入口地址D. 中断服务程序入口地址的地址正确答案:D3. 中断屏蔽字的作用是()A. 暂停外设对主存的访问B. 暂停对某些中断的处理C. 暂停一切中断的处理D. 暂停CPU对主存的访问正确答案:B4. 代码段内子程序调用和返回用到的指令及属性正确的是()A.CALL FAR ;RET NEARB. CALL FAR;RET FARC. CALL NEAR ;RETS NEARD. CALL NEAR;RET NEAR正确答案:D5. 宏指令语句本身不生成目标代码,它仅表示宏调用出现的()。

A. 说明符B. 位置C. 代码格式D. 宏体正确答案:B6. 宏定义标准伪操作是()A. NAME MACRO [哑元]...ENDPB. NAME MACRO [哑元表]...ENDSC. NAME MACRO [哑元表]...ENDD. NAME MACRO [哑元表]...ENDM正确答案:D7. 子程序定义的标准格式是()A. PROC ENDB. PROC ENDSC. PROC ENSPD. PROC ENDSP正确答案:C8. 参数调用过程中都必须使用传送工具是()A. 地址表B. 堆栈C. 寄存器D. 数据段正确答案:C9. 中断返回指令是()A. ENDB. ENDSC. ENDPD. IRET正确答案:D10. DOS和BIOS功能调用正确的顺序是(1)功能号装入AH(2)调用参数装入指定寄存器(3)按中断号调用DOS或BIOS中断(4)检查返回参数是否正确A. (1)(2)(3)(4)B. (2)(3)(4)(1)C. (3)(2)(1)(4)D. (2)(1)(3)(4)正确答案:D二、判断题(共10 道试题,共30 分。

[大连理工大学]20春《汇编语言程序设计》在线作业3-复习资料答案

[大连理工大学]20春《汇编语言程序设计》在线作业3-复习资料答案

科目名称:大工20春《汇编语言程序设计》在线作业3学校名称:奥鹏-大连理工大学一、单选题 (共 10 道试题,共 50 分)1.在汇编语言程序的开发过程中使用宏功能的顺序是( )。

A.宏调用,宏定义B.宏展开,宏定义C.宏定义,宏调用,宏展开D.宏定义,宏展开,宏调用提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:C2.如果(AL)=01100011B,(AH)=00100010B,执行ADD AL,AH指令后,(AL)=( )。

A.01100011BB.10000101BC.1100101BD.11B提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:B3.如果(AL)=01100011B,(AH)=00100010B,执行ADD AL,AH指令后,CF=( )。

A.0B.1C.2D.3提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:A4.如果(SI)=0088H,(DS)=5570H,对于物理地址为55788H的内存字单元,其内容为0235H,对于物理地址为5578AH的内存字单元,其内容为0E60H,那么执行指令LDS SI,[SI]以后,(DS)=多少?( )A.5570HB.0235HC.0E60HD.0088H提示:本题为必答题,请认真阅读题目后再作答--本题参考答案:C5.如果(SI)=0088H,(DS)=5570H,对于物理地址为55788H的内存字单元,其内容为0235H,对于物理地址为5578AH的内存字单元,其内容为0E60H,那么执行指令LDS SI,[SI]以后,(SI)=多少?( )A.5570HB.0235H。

大工13春《汇编语言程序设计》在线作业2及答案

大工13春《汇编语言程序设计》在线作业2及答案

大工13春<汇编语言程序设计>在线作业2及答案一、单选题(共10道试题,共50分。

)V1.子程序建立堆栈的参数传送方法中,实现参数传送的过程是(A)。

A.变量地址入栈、原始BP入栈、SP值给BPB.原始SP入栈、变量地址入栈、SP值给BPC.SP值给BP、原始BP入栈、变量地址入栈满分:5分2.数据定义伪操作中,变量定义用符号地址表示,那么他和符号地址及标号有什么区别么(C)。

A.没有区别B.仅仅是变量后面不带冒号的符号地址和标号C.变量就是可以重新赋值的符号地址,因此和符号地址及标号有本质区别满分:5分3.伪指令是汇编语言的组成部分,它是写给哪个程序看的(B)。

A.汇编语言B.汇编程序C.计算机系统满分:5分4.关于分支程序的说法正确的是(B)。

A.分支程序结构可以有三种形式B.分支程序的运行方向是向前的C.可以执行多个分支D.程序的分支一般用地址传送指令产生满分:5分5.下列伪操作中,哪个不是对准伪操作(C)。

A.EVEN伪操作伪操作C.EQU伪操作D.ALIGN伪操作满分:5分6.数据定义中ARRAY DB5DUP(0,2DUP(1,2,3),0,7)的第六个存储单元的内容为(C)。

A.00hB.01hC.02hD.03h满分:5分7.pentium提供的新指令是(D)。

A.SET ccB.MOVSXC.OUTSD.CMPXCHG8B满分:5分8.源程序经汇编程序汇编后,得到的是(B)。

A.可执行文件B.目标文件C.源文件D.链接表满分:5分9.指令END START的作用是(A)。

A.结束汇编及从START处开始执行程序B.结束START程序C.结束汇编及结束START程序满分:5分10.不属于循环程序结构的是(D)。

A.循环初始状态B.循环控制条件C.循环体D.程序终止满分:5分二、多选题(共5道试题,共30分。

)V1.子程序的参数区和局部变量区在堆栈段的情况描述正确的是(AD)A.返回地址和参数地址位于BP指针的正偏移区B.返回地址和参数地址位于BP指针的负偏移区C.局部变量位于BP指针的正偏移区D.局部变量位于BP指针的负偏移区满分:6分2.下列哪种伪操作能定义变量(AB)。

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

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

汇编语言程序设计题目以及答案[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 ; 执行系统调用```[题目三] 求平均数要求:编写汇编程序,计算给定的一组整数的平均数,并将结果存储在指定的内存位置中。

大工19秋《汇编语言程序设计》在线作业2[学习资料]

大工19秋《汇编语言程序设计》在线作业2[学习资料]

【奥鹏大连理工】大工19秋《汇编语言程序设计》在线作业2试卷总分:100 得分:100一、单选题 (共 10 道试题,共 50 分)1.假设数据段定义如下:(1)DA1 DW ’C’,’D’(2)DA2 DB 18 DUP(?)(3)DA3 DW $-DA2(4)……(5)MOV BX,DA3(6)MOV AX,DA1上述指令执行后,BX寄存器中的内容为()。

A.19B.18C.17D.16[参考提示:请参看课本知识,回答本题]答案解析:B2.假设数据段定义如下:(1)DA1 DW ’C’,’D’(2)DA2 DB 18 DUP(?)(3)DA3 DW $-DA2(4)……(5)MOV BX,DA3(6)MOV AX,DA1上述指令执行后,AH寄存器中的内容是()。

A.43HB.42HC.01HD.00H[参考提示:请参看课本知识,回答本题]答案解析:D3.假设数据段定义如下:(1)DA1 DW ’C’,’D’(2)DA2 DB 18 DUP(?)(3)DA3 DW $-DA2(4)……(5)MOV BX,DA3(6)MOV AX,DA1上述指令执行后,AL寄存器中的内容是()。

A.43HB.42HC.01HD.00H[参考提示:请参看课本知识,回答本题]答案解析:A4.现有如下数据段(1)DATA SEGMENT(2)ARRAY1 DB 1,26,‘3456’(3)ARRAY2 DW 7,89H,10(4)VAL EQU ARRAY2-ARRAY1(5)DATA ENDS请问:该数据段已占有()字节的存储空间。

A.8B.13C.12D.11[参考提示:请参看课本知识,回答本题]答案解析:C5.假设数据段定义如下:(1)DA1 DW ’C’,’D’(2)DA2 DB 18 DUP(?)(3)DA3 DW $-DA2(4)……(5)MOV BX,DA3(6)MOV AX,DA1上述指令执行后,BX寄存器中的内容为()H。

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

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

汇编语言程序设计参考答案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对数据交换的控制,数据传送速度快,但这种方式电路结构复杂,硬件开销大。

大工《汇编语言程序》大作业资料

大工《汇编语言程序》大作业资料

大连理工大学远程与继续教育学院《汇编语言程序设计》课程设计题目:进制转换程序1.谈谈你对本课程学习过程中的心得体会与建议?汇编语言程序设计是我们计算机专科的一门专业课。

本课程是面向机器的一门编程语言课。

在对汇编语言的学习过程中,可以对计算机组成原理有更深入的了解,同时掌握汇编语言对于某些硬件编程比如单片机开发和嵌入式系统的开发应用也是必不可少的。

汇编语言相比于其他高级语言明显的优点就是运行速度快,而缺点就是需要兼顾机器本身的硬件结构特点进行编程,因此学习本课程要多实践多思考。

通过本课程的学习可以对汇编语言有一个整体的把握和认识。

当我刚开始选择这个题目是因为课本上有一个相近的代码转换,所以感觉这个题目应该很好写。

可是等到真正动手的时候就感到了困难。

首先是对字符串的输入输出的处理,解决不了就改成了字母大小写转换是每次只输入一个字母,然后根据其大小写转换,如大写就转换成小写,否则反之。

然而在随后的进制转换中用遇到了同样的问题,发现这是一个不能不解决的问题,随后查阅了资料才解决。

随后实在数值转换过程中对模块的设计上又出现了问题。

最初的构想是设计六个模块分别对应相应的数值转换功能。

可是在三个写好以后发现了下面要写的代码有很多重复的地方,于是就把这些重复的代码定义成了子函数来使用然后发现将程序按照输入、输出的不同来分模块,以BX作为连接,比原来的程序更为简洁,逻辑上也更加清楚,有种豁然开朗的感觉。

在改进程序的过程中感到非常有成就感。

在编写代码的过程中让我充分感受到了不同编程语言之间的差别。

对与高级语言来说或许是很简单的一个程序或者只需要调用已有的函数库,可是对于汇编来说却要写上几十行甚至更多的代码。

可是更加深刻的了解了寄存器、存储器之间的数据流向,因为每个考虑不周都会导致一大堆的错误出现,常常令人感到一种无力感,想要放弃。

当程序一步步接近完成,看着子函数一个个都运行成功,再组合到一起,那种喜悦是无与伦比,之前所受到的苦楚又是那么的微不足道。

大工2020年春《汇编语言程序设计》在线作业3学习资料答案

大工2020年春《汇编语言程序设计》在线作业3学习资料答案

【奥鹏】-大连理工20春《汇编语言程序设计》在线作业3
提示:请认真阅读本套试卷,核对是否是您需要的题目,本套试卷只做参考学习
使用!!!
一、单选题 (共 10 道试题,共 50 分)
【题目】在汇编语言程序的开发过程中使用宏功能的顺序是( )。

[A.]宏调用,宏定义
[B.]宏展开,宏定义
[C.]宏定义,宏调用,宏展开
[D.]宏定义,宏展开,宏调用
正确的选择是:C
【题目】如果(AL)=01100011B,(AH)=00100010B,执行ADD AL,AH指令后,(AL)=( )。

[A.]01100011B
[B.]10000101B
[C.]1100101B
[D.]11B
正确的选择是:B
【题目】如果(AL)=01100011B,(AH)=00100010B,执行ADD AL,AH指令后,CF=( )。

[A.]0
[B.]1
[C.]2
[D.]3
正确的选择是:A
【题目】如果(SI)=0088H,(DS)=5570H,对于物理地址为55788H的内存字单元,其内容为0235H,对于物理地址为5578AH的内存字单元,其内容为0E60H,那么执行指令LDS SI,[SI]以后,(DS)=多少?( )
[A.]5570H
[B.]0235H
[C.]0E60H
[D.]0088H
正确的选择是:C
【题目】如果(SI)=0088H,(DS)=5570H,对于物理地址为55788H的内存字单元,其内容为0235H,对于物理地址为5578AH的内存字单元,其内容为0E60H,那么执行指令LDS SI,[SI]以后,(SI)=多少?( )
[A.]5570H。

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

题目:题目五:信息检索系统
1.谈谈你对本课程学习过程中的心得体会与建议?
在接触这门课程初始,就感到汇编语言并不是很容易就可以弄懂的。

相比较以前学过的程序语言如C、C++等,电脑等于在迁就人的思维方式,但汇编却是接近机器语言的一门语言,我们学习和编写程序时必须要去迁就电脑的思维方式,要设身处地地用电脑的角度去思考问题,这就是我学习汇编语言时感受最深的地方,想起来很简单,写起来相当的不易。

汇编的学习不仅仅是学习其语法,而更多的是学习计算机基本的体系结构。

其中遇到很多新的概念,名字。

如寄存器、中断、寻址方式等。

这些概念在刚接触汇编这门课的时候难以理解,但在之后的学习中通过老师的讲解,自己亲手编程的方式也就渐渐清晰明了。

我们在学习之前都需要明确什么是汇编语言。

计算机能够直接识别的数据是由二进制数0和1组成的代码。

机器指令就是用二进制代码组成的指令,一条机器指令控制计算机完成一个基本操作。

为了克服机器语言的缺点,人们采用助记符表示机器指令的操作码,用变量代替操作数的存放地址等,这样就形成了汇编语言。

经过一个学期的学习,我也慢慢摸出了汇编学习的规律。

首先,学习这门语言时如果能联系上以前学过的其他高级语言的知识,最重要的是一些思考问题,实现功能的逻辑的思考,会帮助我们很快的找到编写程序的思路和方向。

例如C语言程序的运行逻辑结构有顺序(按语句依次执行)、分支结构(IF...THEN...ELSE...),循环结构(FOR...NEXT)三种结构,也通过C语言了解并掌握了什么是子程序,什么是调用。

事实上,汇编语言中有关程序结构,子程序等等的知识都是跟C语言十分相似的,只是在编程时用到的语言不同:汇编语言完全面向机器,需要指明数据在寄存器、内存中的流向。

第二,学习汇编语言,首要问题是学习80X86指令系统。

如果能将指令系统中的各个助记符、格式等都能完全掌握并灵活运用,大部分工作就已经完成了。

指令系统确定了CPU所能完成的功能,是用汇编语言进行程序设计的最基本部分。

如果不熟悉汇编指令的功能及其有关规定,那肯定不能灵活使用汇编语言。

指令的种类十分繁杂,但其格式却是统一的。

其中方括号中的内容为可
选项。

指令助记符决定了指令的功能,对应一条二进制编码的机器指令。

指令的操作数个数由该指令确定,可以没有操作数,也可以有一个或多个操作数,大多数指令要显示写出来,还有些操作数是隐含的。

当指令包含操作数的时候,书写时必须遵守:1、指令助记符和操作数之间有分隔符,比如几个空格;2、如果含有多个操作数,操作数之间用逗号分隔。

现在简单总结汇编语言指令的分类:1、数据传送指令;2、标志位操作指令;3、算术运算指令;4、逻辑运算指令;5、移位运算指令;6、位操作指令;7比较运算指令;8、循环指令;9、转移指令;10、条件设置字节指令;11、字符串操作指令;12、BCD码运算调整指令;13、处理器指令。

在编写汇编程序时,应该注意特别容易出现的错误,例如在编写数据传送指令时,目的操作数和源操作数的类型一定要匹配,CS不能作为目的操作数,offset后只能跟简单地址符号,等等。

汇编语言的寻址方式有直接寻址,寄存器寻址,基址变址寻址,相对基址变址寻址等等,掌握这些都是编写汇编程序很重要的环节。

汇编语言中的程序结构,子程序等知识也会帮助我们编写出一个更加完善的汇编程序。

另外,我们还应该掌握DOS系统功能调用,宏汇编等知识。

这里要对子程序和宏汇编加以区分,我的理解是:子程序是调用,而宏是替换,比如一个MAX宏,所有出现MAX的地方,都用宏代码代替。

在学习汇编语言时,指令的功能是学习和掌握的重点,要准确有效并合理的使用这些指令,必须了解一些使用的规则。

现对汇编语言编程时的规则进行总结,归纳起来有三点:1、要求指令操作数的寻址方式;2、指令对标志位的影响和标志位对指令的影响;3、指令的执行时间,对可完成同样功能的指令,要选用执行时间短的指令。

还有一点十分重要。

和所有的程序设计语言一样,要学好汇编语言,实验是必不可少的环节。

我们深有体会:书上的程序都能看懂,基本原理也都明白,但是在自己亲手编写程序时,却无从下手,甚至连第一句该怎么写都不知道。

通过实验,可以在很大程度上加深印象。

在书上看程序,一切都是理所当然,十分顺利,而自己动手,才会真正发现自己的不足之处。

程序的编写在记事本中进行即可,掌握debug的使用对实验是有很大帮助的。

现在汇编课程已经结束,感觉不如其他语言学的好,但再不是第一天接触时的云里雾里了,已经有了初步的了解和熟悉,虽说不上得心应手,但简单的问题还是难不倒我的。

书本上的知识是有限的,课后的学习是无止境的。

想要把汇编学的很好,我想我还需要花更多的时间在课后的时间里。

以上便是我。

相关文档
最新文档