位汇编语言大纲_第1页
位汇编语言大纲_第2页
位汇编语言大纲_第3页
位汇编语言大纲_第4页
位汇编语言大纲_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、32位汇编语言程序设计(32-bit Assembly Programming)汇编语言程序设计教学大纲一、适用专业: 计算机科学与技术 软件学院 二、先修课:高级语言程序设计 三、开课学期及学时:三年级上学期(第五学期)授课学时:51 实验学时:30 总学时:83 四、使用教材:钱晓捷,32位汇编语言程序设计,机械工业出版社,2011年五、目的和要求:“汇编语言程序设计”是继“高级语言程序设计”之后的又一门计算机语言程序设计课程,但讲解的是面向处理器的低级语言。该课程一方面加强学生的高级语言编程能力;另一方面配合“计算机组成原理”和“微机原理及接口技术”课程,从软件角度理解计算机工作原理;同

2、时,还作为自动控制等与硬件相关应用领域的程序设计基础,以及为“嵌入式系统”、“操作系统”、“编译原理”等课程提供基础知识。本课程以Intel 80x86指令系统和微软MASM展开汇编语言程序设计方法。课程要求学生系统学习80x86整数指令系统、进一步理解计算机工作原理;要求学生掌握汇编语言源程序语句和格式,能够利用顺序、分支、循环和子程序等结构解决常规问题。本课程配有上机实践环节,要求学生具有阅读、编辑、汇编和调试汇编语言程序的能力。六、教学内容和要求:第1章 汇编语言基础,4学时在了解软硬件开发环境的基础上,熟悉通用寄存器和存储器组织,掌握汇编语言的语句格式、程序框架和开发方法。第2章 数据

3、表示和寻址,6学时在理解计算机如何表达数据的基础上,熟悉汇编语言中如何使用常量和变量,掌握处理器指令如何寻址数据的方式。第3章 通用数据处理指令,8学时熟悉IA-32处理器数据传送、算术运算、逻辑运算和移位操作等基本指令,通过程序片段掌握指令功能和编程应用。第4章 程序结构,10学时以顺序、分支和循环程序结构为主线,结合数值运算、数组处理等示例程序,掌握控制转移指令以及编写基本程序的方法。第5章 模块化程序设计,8学时以子程序结构为主体,围绕数码转换实现键盘输入和显示输出,掌握子程序、文件包含、宏汇编等各种多模块编程的方法。第6章 Windows编程,6学时熟悉汇编语言调用API函数的方法,掌

4、握控制台输入输出函数。熟悉MASM的高级特性,理解Windows图形窗口程序的编写。第7章 与Visual C+的混合编程,4学时掌握嵌入汇编和模块连接进行混合编程方法,理解堆栈帧的作用,熟悉汇编语言调用高级语言函数和开发调试过程。第8章 DOS环境的程序设计,4学时熟悉DOS应用程序特点和DOS功能调用,掌握串操作指令和输入输出指令及应用,理解初始化编程、中断机制和编程方法。第9章 浮点、多媒体及64位指令,1学时熟悉浮点数据格式、多媒体数据格式及64位编程环境的特点,了解浮点操作、多媒体操作和64位指令。 “汇编语言程序设计”上机任务“汇编语言程序设计”是一门实践性很强的课程,需要通过编程

5、实践更好地掌握课程内容。编程实践以普通32位PC机为唯一硬件条件,结合教材配套的开发软件包进行。教材从构建开发环境开始就可以安排上机实践的任务,随着课堂教学的展开,逐渐进行开发环境的熟悉、MASM开发方法的练习、开发过程的熟练掌握、调试程序WinDbg的了解,掌握常用指令应用、分支、循环、子程序结构、库文件开发以及小型项目的组织,并随着内容深入介绍Windows编程和MASM32开发环境、与Visual C+混合编程和Visual C+开发环境、DOS平台和输入输出指令及串操作指令应用。课程主要基于32位Windows控制台,以IA-32处理器常用指令和微软MASM展开汇编语言程序设计方法。课

6、程要求学生系统学习IA-32指令系统、理解计算机工作原理;要求学生具有阅读、编辑、汇编和调试汇编语言程序的能力;要求学生掌握汇编语言源程序语句和格式,能够利用顺序、分支、循环和子程序等结构解决常规问题。对程序设计类课程,没有上机编程的实践是无法真正掌握的。所以,希望学生加强实践环节。学生应完成基本的上机指导编程要求,同时争取多进行编程实践;因为只有通过实际编程才能发现程序设计中的许多问题。请你不要直接拷贝源程序代码,在你将一条一条语句的录入编辑过程中,就是书写正确语句、加深语句理解的绝好机会。上机实验要求:1、上机前作好充分准备,包括程序框图、源程序代码、开发过程、对运行结果的分析等。2、上机

7、时要遵守实验室的规章制度,爱护实验设备。注意及时在硬盘上存储程序,以避免文件丢失。每个上机实验安排在2个学时内完成。程序开发完成后,须由实验辅导教师在机器上检查运行结果。3、上机后,应写出实验报告、并及时提交到实验室。上机实验教材:钱晓捷,32位汇编语言程序设计,机械工业出版社,2011年本上机指导书所述的习题和例题均来自上述教材,有关习题例题的详细介绍请参看教材。上机任务1 汇编语言开发过程(1)创建MASM目录、复制开发软件,熟悉进入和退出32位控制台的方法。(2)熟悉汇编语言的语句格式和程序框架,录入教材例1-1程序(EG0101.ASM)。(3)熟悉汇编语言的开发过程,汇编连接教材例1

8、-1程序、生成可执行文件并执行,查阅列表文件。上机任务2 数据表示和寻址(1)掌握汇编语言进行常量表达和变量定义的方法,参考例1-1程序、按照习题2.14要求在数据段定义ASCII可显示字符的数值,然后进行汇编、连接生成可执行文件,并显示出正确的ASCII表。(2)掌握数据寻址方式,上机验证教材例2-11和例2-12程序。上机任务3 数据传送指令(1)掌握MOV、XCHG、PUSH和POP等常用传送指令,验证例3-3程序,并体会其中存储器操作数寻址方法的运用。(2)掌握配套教材的输入输出子程序库的应用,实现习题3.9程序。上机任务4 数据运算指令(1)熟悉状态标志的意义。首先判断习题3.12每

9、条指令执行后AL的数值和相关标志状态,写出结果。然后将其编辑成为一个完整的汇编语言源程序,汇编连接、生成可执行文件。可以利用本书配套的输入输出子程序库,在每条指令之后,调用其中的DISPRF(先调用)和DISPHD,显示6个状态标志位和EAX内容,并核对事先判断的结果。(2)掌握常用加法、减法等数据运算指令,验证例3-5程序,实现习题3.15程序。上机任务5 位操作指令(1)掌握逻辑运算、移位等常用位操作类指令,验证例3-8程序,实现习题3.22程序。(2)了解不同编码间的转换作用,实现习题3.19程序。上机任务6 调试程序WinDbg(1)参考教材附录A,通过调试例1-1程序,熟悉调试程序W

10、inDbg的使用。(2)理解断点调试、单步调试的作用和方法,按照附录A调试例3-6程序,调试习题3-22程序、观察程序运行结果。上机任务7 顺序程序和转移指令(1)理解顺序程序结构,验证例4-2程序,实现习题4.7程序。(2)掌握无条件转移指令,实现习题4.8程序。(3)掌握有条件转移指令,验证例4-6程序,实现习题4.12程序。(4)可选,按照附录A调试例4-5程序,调试习题4.12程序,并注意状态标志、并跟踪指令执行顺序(即,程序指针EIP数值变化)。上机任务8 分支程序设计(提交实验报告)(1)掌握单分支结构程序的特点和方法,验证例4-10程序,实现习题4.17程序。(2)掌握双分支结构

11、程序的特点和方法,验证例4-11程序,实现习题4.16程序。(3)可选,利用WinDbg调试习题4.16或4.17分支程序。上机任务9 循环程序设计(提交实验报告)(1)掌握循环指令和循环程序结构,验证例4-18程序,实现习题4.27程序。(2)综合分支和循环程序结构,实现习题4.29程序。(3)可选,利用WinDbg调试例4-15循环程序。(4)可选,实现习题4.30程序。上机任务10 子程序设计(提交实验报告)(1)掌握子程序指令和子程序结构、熟悉子程序的参数传递的方法,实现习题5.8和5.13程序。(2)熟悉子程序模块、子程序库和子程序库包含生成可执行文件的多模块程序结构开发方法,实现习

12、题5.14各项要求。(3)可选,利用WinDbg调试例5-7子程序。上机任务11 Windows控制台应用程序(提交实验报告)(1)熟悉Windows应用程序接口API调用原理、掌握常用控制台函数的调用方法,实现习题6-4程序。(2)实现习题6.6程序。(3)可选,将主存内容显示子程序加入32位输入输出子程序库IO32.LIB,相应修改包含文件IO32.INC,并利用一个调用程序验证该子程序的正确。(4)可选,利用WinDbg调试例6-4Windows控制台程序。上机任务12 Windows图形窗口应用程序(1)熟悉消息窗口函数的调用方法,实现习题6.8程序。(2)了解MASM32开发环境,验

13、证例6-11程序,实现习题6.16程序。上机任务13 与C+混合编程(提交实验报告)(1)熟悉嵌入汇编和模块连接的混合编程和开发过程,验证例7-1和例7-2程序。(2)实现习题7.9各项要求,并按照要求编写汇编语言程序。上机任务14 DOS应用程序(1)掌握16位DOS应用程序的编写,验证例8-2程序、实现习题8.6程序。(2)熟悉串操作指令,验证例8-4程序、实现习题8.11程序。(3)掌握输入输出指令应用,验证例8-7程序、实现习题8.14程序。上机任务15 浮点指令程序(1)熟悉浮点数据格式和常见浮点指令及其编程,验证例9-4程序和例9-5程序。(2)实现习题9.6程序。“汇编语言程序设

14、计”布置习题为了更好地理解教材当中的各个知识点,本教材编制了具有自测性质的习题,即每章习题中的前3种习题,依次是简答题、判断题和填空题。这些习题可以不要求学生书写在作业簿上提交,但应该布置给学生进行自我练习。教师可以根据实际情况在课堂教学过程中,以提问、讨论或测试方式与学生交流,了解学生对教学内容的掌握情况。第1章1.1 简答题(1、3、6、7、8)1.2 判断题(1、6、7、8、9)1.3 填空题(3、4、5、7、10)1.9 1.13 1.15 1.16第2章2.1 简答题(2、3、4、7、8)2.2 判断题(2、4、8、9、10)2.3 填空题(1、2、3、8、9)2.10 2.14 2

15、.15 2.17第3章3.1 简答题(1、2、5、7、9)3.2 判断题(1、4、5、7、10)3.3 填空题(2、4、5、8、10)3.4 3.6 3.11 3.14 3.16 3.21 3.22第4章4.1 简答题(2、5、6、9、10)4.2 判断题(2、4、6、7、10)4.3 填空题(2、3、4、5、6)4.4 4.7 4.15 4.17 4.27 4.29第5章5.1 简答题(1、4、5、6、7)5.2 判断题(2、5、6、7、8)5.3 填空题(1、4、5、6、7)5.7 5.8 5.11 5.13 8.13第6章6.1 简答题(3、5、6、7)6.2 判断题(1、3、4)6.3

16、 填空题(1、3、6)6.4 6.6 6.7第7章7.1 简答题(1、3、5、6)7.2 判断题(5、6、7)7.3 填空题(1、4、5)7.4 7.6第8章8.1 简答题(1、2、4)8.2 判断题(2、4、6、7)8.3 填空题(1、2、7)8.6 8.14第9章9.1 简答题(1、5、7)9.2 判断题(1、2、3)9.3 填空题(1、2、3)9.4 9.5 9.6汇编语言程序设计考试大纲课程编号:课程名称:汇编语言程序设计课程英文名称:Assembly Programming总学时:51学分: 课程的基本教学要求第1章 汇编语言基础,4学时在了解软硬件开发环境的基础上,熟悉通用寄存器和

17、存储器组织,掌握汇编语言的语句格式、程序框架和开发方法。4第2章 数据表示和寻址,6学时在理解计算机如何表达数据的基础上,熟悉汇编语言中如何使用常量和变量,掌握处理器指令如何寻址数据的方式。第3章 通用数据处理指令,8学时熟悉IA-32处理器数据传送、算术运算、逻辑运算和移位操作等基本指令,通过程序片段掌握指令功能和编程应用。第4章 程序结构,10学时以顺序、分支和循环程序结构为主线,结合数值运算、数组处理等示例程序,掌握控制转移指令以及编写基本程序的方法。第5章 模块化程序设计,8学时以子程序结构为主体,围绕数码转换实现键盘输入和显示输出,掌握子程序、文件包含、宏汇编等各种多模块编程的方法。第6章 Windows编程,6学时熟悉汇编语言调用API函数的方法,掌握控制台输入输出函数。熟悉MASM的高级特性,理解Windows图形窗口程序的编写。第7章 与Visual C+的混合编程,4学时掌握嵌入汇编和模块连接进行混合编程方法,理解堆栈帧的作用,熟悉汇编语言调

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论