汇编语言汇编程序设计实验的提问

汇编语言程序设计答案doc下载_爱问共享资料
汇编语言程序设计答案.doc
汇编语言程序设计答案.doc
汇编语言程序设计答案.doc
简介:本文档为《汇编语言程序设计答案doc》,可适用于高等教育领域,主题内容包含汇编语言程序设计答案《汇编语言程序设计教程》人民邮电出版社习题及参考答案什么是机器语言,什么是汇编语言,简述汇编语言的特点。机器语言就是用二进制编码符等。
侵权或盗版
*若权利人发现爱问平台上用户上传内容侵犯了其作品的信息网络传播权等合法权益时,请按照平台要求书面通知爱问!
赌博犯罪类
在此可输入您对该资料的评论~
添加成功至
资料评价:汇编语言程序设计
适用课程:&汇编语言程序设计(),汇编语言程序设计课程设计()【访问量:5253】
《汇编语言程序设计》课程教学大纲
汇编语言程序设计
计算机科学与技术
微机原理、程序设计方法
《计算机引论》,《C语言程序设计》
1.带领学生进入二进制世界,理解数制、码制概念,理解二进制数在机器中的多种解释,理解汇编语言程序设计中对二进制数的解释的重要性。
2.使学生计算机系统的硬件结构有一个初步的、系统的理解,对系统的工作原理有一个总体的认识,为进一步深入学习《计算机组成原理》、《微机原理与接口技术》等课程打下坚实基础。
3.使学生理解汇编语言的特点,了解它面向的应用范围,理解高级语言和汇编语言的重要区别。
4.使学生结合Intel的芯片,详细的理解指令系统,理解它们的功能及原理,并对计算机系统的基本运作步骤有一个初步认识。
5.帮助学生理解汇编语言程序的类型、框架,能够使用指令系统中的各种指令编写完整的程序、子程序;能够阅读和理解程序片段。
6.使学生能够正确、熟练的使用Debug工具调试编写的程序,使学生深入体会程序调试工作的重要性,增强学生的实际动手能力。
7.结合计算机结构,通过一些实用的示例,使学生对中断服务程序、接口程序、驱动程序等重要的特例作深入理解或部分了解。
1.理论方面:
(1)系统的掌握了一种经典指令系统,理解了各种指令执行的基本步骤、原理,并初步了解了计算机系统的总体结构以及工作原理,为今后学习各种硬件课程和更深入的学习更复杂的指令系统提供了必不可少的基础。
(2)深入到底层,理解了在机器层面上内存数据传输、数据计算、端口读写等基本概念,为深入理解高级语言程序设计提供了更详实的理论基础,进一步扩充、完善了知识面。
2.实践方面:
(1)通过对指令系统、语法、程序框架的理解,能够编写、阅读汇编语言程序,通过上机练习,熟悉了调试工具的使用,不仅能够编写程序,而且能够使之正确运行,为将来进一步学习底层开发打好了基础。
(2)通过课程设计,深入体会到汇编语言是针对开发驱动程序和核心算法的语言,理解了它的主要用途和发展前景,并能在具体应用中开发出较为实用的应用程序。
课堂讲授为主,每周讲授3学时,必须安排上机实习,至少每周上机1学时,并需要安排上机测验或课程设计。
《汇编语言程序设计》,唐宁九主编,四川大学出版社,2008年1月
《微型计算机接口技术》
刘乐善、胡盛斌 等著
电子科技大学出版社
《软件加密/解密反跟踪实用技术》 杨迈、李卫 等著 西安电子科技大学出版社
作业和小测验占35%(包括半期考试),上机实习占15%,期末考试占50%
每50名学生安排1名助教,负责作业批改,上机实习环境维护和上机辅导。
实验条件需求
必须安排微型机上机实习环境,需要提供MASM、LINK、DEBUG等必要的工具程序,每周一次上机时段,第三章讲完后即可开始。
汇编语言的背景知识
1.建立二进制信息的概念
2.掌握各种数制间的变换方法
3.掌握补码的概念、原理和运算规律
4.了解计算机系统的基本结构
5.了解计算机系统的基本工作原理
6.理解机器指令的基本概念
7.理解汇编语言和机器语言之间的对应关系
8.了解汇编语言与高级语言的区别与联系
9.了解适合使用汇编语言的应用范围
难点:二进制信息的人为解释、数和编码的区别
CPU结构、寄存器组织、内存编址、堆栈的组织
1.了解 CPU的基本结构
2.理解 CPU中寄存器的概念以及结构、功能
3.通过对段寄存器的学习,理解“段”的概念
4.通过对指针寄存器的学习,理解“偏移量”的概念
5.理解内存编址的概念,以及在 系统中的编址方式
6.理解逻辑地址、物理地址的概念,并掌握二者间的转换原理
7.理解段基值和段基址的概念,能够区别并相互转换
8.理解堆栈的概念,以及它在系统中是如何实现的
9.初步接触堆栈指令,掌握堆栈的操作特征
难点:寄存器的概念、段和偏移量的概念、地址转换
1.建立指令和指令系统的概念
2.通过解释机器指令的字段构成理解汇编指令的基本格式
3.从操作数、功能等多个角度对指令进行分类,深入体会汇编指令的特征
4.掌握寻址方式的概念,理解指令的各种寻址方式
5.掌握寻址原理,重点掌握存储器寻址下的几种子寻址方式
6.掌握指令系统中部分基础性指令的功能,包括传送类、算术类、位操作类、处理器控制类指令。
7.准确理解每个标志位的含义,掌握所学指令对标志位的影响及其含义,需要理解不同的指令对标志位可能有不同的解释。
8.通过对指令执行过程的解释,了解CPU执行指令的过程
9.简要介绍协处理器,了解指令系统中与协处理器中的相关指令
10.理解空操作指令对程序调试的重要作用
11.介绍DEBUG的基本命令,通过上机实习,深刻理解各指令的功能
难点:存储器寻址方式及其原理;LEA、LDS、LES指令的功能及相互间的区别;标志位含义与操作数认为解释间的联系
汇编语言语法
1.准确掌握指令的书写格式
2.建立伪指令的概念,强调伪指令和指令间的重要区别
3.掌握各种伪指令的功能,熟悉它们的语法
4.理解程序设计中段寄存器初始化的重要性,掌握各段寄存器的各种初始化方法
5.重点掌握ASSUME伪指令的功能,注意它和段寄存器初始化的区别与联系
6.建立以段结构组织程序的基本思路,掌握汇编语言源程序的两种基本框架
7.重点理解“变量”、“标号”、“内存单元”、“内存单元地址”几者之间的区别和相互联系
8.理解汇编语言源程序中的各种数据表示,以及程序执行时它们在内存中的存放方式
9.了解操作系统装载并执行程序的基本过程,理解程序通过何种方式返回操作系统
10.介绍MASM、LINK等工具的功能和用法,通过上机实习,能够写出顺序结构的完整程序,并能正确运行。
难点:伪指令和指令的区别、ASSUME伪指令的作用、变量和标号的区别与联系、按照段结构设计程序的必要性、数据在内存中的存放方式
1.掌握各类转移指令、循环指令的功能
2.理解转移、循环指令的区别与联系,以及它们与分支、循环程序结构间的联系,重点理解循环结构并不只是依靠循环指令
3.掌握无条件转移指令存在的必要性,突出解释“段间跳转”、“长跳转”、“短跳转”的概念,并理解只有无条件转移指令能够实现“段间跳转”和“长跳转”
4.重点理解转移指令和循环指令依赖标志位但不影响标志位的重要特征
5.重点理解各条件转移指令的功能、和标志位间的联系、以及转移的含义
6.理解转移指令可以使用的各种寻址方式,理解这些寻址方式与数据操作指令寻址方式间的区别与联系
7.深入理解转移指令如何生成偏移量,掌握每一种偏移量的计算方法
8.通过示例理解程序设计过程,重点掌握如何通过程序流程图确定分支、循环结构的标号,如果把它们转换为源程序中的标号,如何在设计时避免条件转移超界的问题
9.通过示例提高阅读汇编语言程序的能力,能够阅读一些程序片段并正确分析它们的功能
10.通过上机实习,编写包含各种程序结构的应用程序,基本具有编写汇编语言程序的能力
难点:“段间跳转”、“长跳转”、“短跳转”的区别;标志位的联合使用与含义解释;寻址方式结合偏移量计算;良好的标号定义
子程序设计
1.建立子程序概念,理解子程序调用、返回的基本原理
2.回顾堆栈知识,深入理解子程序调用、返回操作对堆栈的运用原理
3.从语法角度掌握子程序的编写方法,理解“段内子程序”、“段间子程序”的区别,以及各自调用、返回指令执行的区别
4.掌握调用指令的寻址方式,和转移指令、数据操作指令的寻址方式综合理解
5.理解子程序参数传递的各种方法,掌握返回地址始终位于栈顶的特征,重点掌握使用BP寄存器在堆栈中取得入口参数、返回入口参数的方法、返回指令清除入口参数的方法
6.理解执行子程序前现场保护的必要性,掌握现场保护和恢复在数据操作上顺序相反的特征
7.理解编写子程序的基本原则,能够正确识别适合使用子程序实现的功能
8.通过子程序嵌套、递归调用的示例,熟悉子程序调用、返回时堆栈的变化规律
9.通过上机实习,编写包括子程序设计在内的完整程序,使用DEBUG观察堆栈的变化,加深对子程序的理解
难点:参数传递、识别适合编写为子程序的功能
数值运算程序设计
1.回顾前面所学的计算类指令,加深对二进制计算的理解,重点掌握多字节、多字数据的加、减、乘、除实现方法
2.重点掌握BCD码的概念,以及它的两种编码方式
3.理解各十进制调整指令的原理,重点理解调整指令如何解释标志位,重点掌握多位BCD码加、减、乘、除实现的方法
4.重点理解算术调整指令必须和算术运算指令相配合才有意义这一重要特点,特别注意除法调整指令与其它调整指令的区别
5.重点理解BCD码本身没有符号特征这一重要特点,以及如何在多位BCD码减法中解决符号问题,如何实现带符号BCD码的运算
6.掌握二进制的乘、除法指令,以及相应的十进制乘除法调整指令
7.理解多位BCD码乘法时的交叠特征
8.通过上机实习,加深对算术调整指令的理解
难点:算术调整指令的原理、BCD码符号问题、BCD码乘除法调整、符号扩展指令的意义
非数值运算程序设计
1.掌握各串操作指令的功能,重点理解它们是系统中具有两个内存操作数的唯一一类指令,以及它们对SI、DI的自动修改特征
2.掌握指令前缀的概念,理解它与指令间的区别与联系,理解重复前缀与循环程序结构间的重要区别,理解串操作指令的高效率原因
3.通过示例理解,能够正确编写使用串操作指令的应用程序,能够识别可以用串操作指令实现的功能
4.理解BCD码与二进制数间的各种转换方法,理解二进制数、BCD码、十六进制数和ASCII码间的转换方法,这里需要澄清数据的人为解释
5.理解一些基本查找、排序算法在汇编语言中的实现
6.通过上机实习加深对串操作指令、代码转换的理解
难点:指令前缀的概念、重复前缀与循环结构的区别、同一个二进制信息的不同人为解释
高级宏汇编语言
1.掌握“结构”与“记录”的概念,以及它们在汇编语言中的实现和使用方法、内存中的存放方式
2.重点掌握宏指令设计原理,理解宏定义、宏调用、宏展开三个基本过程及其实施者
3.和子程序作对比,分析子程序和宏指令间的异同点,从理论上理解怎样的功能适合使用子程序实现,怎样的功能适合使用宏指令实现
4.通过示例理解文本操作符的重要作用,以及它们和宏定义结合使用时体现的重要便利
5.理解宏展开时标号重复的问题,理解局部符号的原理,以及局部标号在宏展开时的生成规则
6.掌握重复汇编和条件汇编等高级功能的使用,以及它们和宏定义的结合使用,重点理解它们和分支结构、循环结构的重要区别
7.理解汇编过程的基本原理,理解MASM三次扫描源程序最终生成OBJ文件的大致过程。
8.上机实习,进一步熟悉所学知识
难点:宏指令与子程序的区别;条件、重复汇编与分支、循环结构间的区别;文本操作符的使用
输入/输出程序设计
1.掌握计算机接口的概念,理解CPU和外部设备接口交换信息各种方法,以及CPU控制外部设备正常运转的基本原理
2.理解接口设计的大致过程和方法
3.掌握端口访问指令的功能、使用方法、寻址方式,重点理解“端口”、“寄存器”、“内存单元”三者间的区别与联系,理解各类端口的主要用途
4.通过示例理解能够阅读并解释简单的接口控制程序
5.通过补充的外设知识了解基本外部设备的工作原理,以及如何使用汇编语言程序对它们进行控制的原理
6.掌握DOS调用和BIOS调用的原理,并且能够在程序设计中正确使用,能够熟练使用一些常用的系统调用
7.理解中断的概念,理解中断和中断响应的过程,通过示例了解中断服务程序的编写规范,以及它在驱动程序中的重要性,同时,对一些病毒原理作出相应理解
8.通过查阅课外资料,结合上机实习,编写一些针对端口的实验程序,如果有兴趣,可以进一步了解和设计简单的接口电路,有条件的可以作进一步的实验
9.通过课程设计对整门课程有一个整体性的深入理解,能够使用汇编语言编写一些实用的程序,为将来的学习打好基础
难点:接口、端口的概念;中断原理和过程电影分类:
教程分类:
汇编语言程序设计实验十:2、解决除法溢出问题。
时间: 20:13&&发布:&&来源:&&本站域名:www.wwaaffxx.com&&查看:
【程序要求】
名称:divdw
功能:除法,被除数32位,除数16位,商32位,余数16位,不会溢出
参数:(dx)=被除数高16位,(ax)=被除数低16位,(cx)=除数
返回:(dx)=商高16位,(ax)=商低16位,(cx)=余数
【汇编代码】
DATAS SEGMENT
& &db 16 dup(0)
DATAS ENDS
STACKS SEGMENT
& &db 16 dup(0)
STACKS ENDS
CODES SEGMENT
& & ASSUME CS:CODES,DS:DATAS,SS:STACKS
& & MOV AX,DATAS
& & MOV DS,AX
& & mov ax,stacks
& & mov ss,ax
& & mov ax,4240h
& & mov dx,000fh
& & mov cx,0ah
& & call divdw
& & mov ah,4ch
& & int 21h
& & push dx
& & push ax
;int(H/N)*65536取商ax
& & & & mov ax,dx
& & & & mov dx,0
& & & & div cx
& & & & mov ds:[0],ax
& & & & pop ax
& & & & pop dx
;(rem(H/N)*65536+L)/N取余dx
& & & & push dx
& & & & push ax
& & & & mov ax,dx
& & & & mov dx,0
& & & & div cx
& & & & pop ax
& & & & push ax
& & & & div cx
& & & & mov cx,dx
& & & & mov dx,ds:[0]
& & & & pop dx
& & & & pop ax
& & & & ret&
CODES ENDS
& & END START
人生一半在于我,另外一半听自然! 20:00
你一点都不可笑,可笑的是我! 20:00
没有什么不可以割舍,不可以放下! 14:06
与其在沉默中孤寂,不如在抗争中爆发! 14:06
尽管太多的精力挥洒在昨日的流程上! 10:03
不要把别人的关心当成理所当然! 14:32
虽是一棵,却能抗击风雨,虽是一滴,却能滋润禾苗! 14:32
人生如一首诗,应该多一些热烈的抒情,少一些愁苦的叹息! 16:53《汇编语言程序设计》([美]布鲁姆)【摘要 书评 试读】- 京东图书
京 东 价:
[定价:¥]
PLUS会员专享价
您购买此商品可享受专属价
增值业务:
重  量:
搭配赠品:
服务支持:
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
汇编语言程序设计
商品介绍加载中...
扫一扫,精彩好书免费看
京东商城向您保证所售商品均为正品行货,京东自营商品开具机打发票或电子发票。
凭质保证书及京东商城发票,可享受全国联保服务(奢侈品、钟表除外;奢侈品、钟表由京东联系保修,享受法定三包售后服务),与您亲临商场选购的商品享受相同的质量保证。京东商城还为您提供具有竞争力的商品价格和,请您放心购买!
注:因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解!
权利声明:京东上的所有商品信息、客户评价、商品咨询、网友讨论等内容,是京东重要的经营资源,未经许可,禁止非法转载使用。
注:本站商品信息均来自于合作方,其真实性、准确性和合法性由信息拥有者(合作方)负责。本站不提供任何保证,并不承担任何法律责任。
印刷版次不同,印刷时间和版次以实物为准。
价格说明:
京东价:京东价为商品的销售价,是您最终决定是否购买商品的依据。
划线价:商品展示的划横线价格为参考价,并非原价,该价格可能是品牌专柜标价、商品吊牌价或由品牌供应商提供的正品零售价(如厂商指导价、建议零售价等)或该商品在京东平台上曾经展示过的销售价;由于地区、时间的差异性和市场行情波动,品牌专柜标价、商品吊牌价等可能会与您购物时展示的不一致,该价格仅供您参考。
折扣:如无特殊说明,折扣指销售商在原价、或划线价(如品牌专柜标价、商品吊牌价、厂商指导价、厂商建议零售价)等某一价格基础上计算出的优惠比例或优惠金额;如有疑问,您可在购买前联系销售商进行咨询。
异常问题:商品促销信息以商品详情页“促销”栏中的信息为准;商品的具体售价以订单结算页价格为准;如您发现活动商品售价或促销信息有异常,建议购买前先联系销售商咨询。
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
浏览了该商品的用户还浏览了
加载中,请稍候...
七日畅销榜
新书热卖榜
iframe(src='//www.googletagmanager.com/ns.html?id=GTM-T947SH', height='0', width='0', style='display: visibility:')

我要回帖

更多关于 汇编程序设计实验 的文章

 

随机推荐