《汇编语言程序设计课程教学大纲(共9页).doc》由会员分享,可在线阅读,更多相关《汇编语言程序设计课程教学大纲(共9页).doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上汇编语言程序设计课程教学大纲一、课程基本信息课程编号:课程中文名称:汇编语言课程英文名称:Assembler language课程类别:专业必修课适用专业:计算机科学与技术专业本科生开课学期:第5学期总 学 时:60学时理论课48学时实验12学时总 学 分:3先修课程:1、 数字逻辑 2、操作系统3、高级语言程序设计课程简介:本课程主要应使学生掌握8086/8088宏汇编语言程序设计的基本方法和技巧,能够运用8086/8088宏汇编语言编写应用程序。提高学生分析问题、解决问题的能力以及实际动手能力。应使学生基本掌握汇编语言程序设计的基本理论,方法和技巧,正确地使用结构
2、化、模块程序设计技术。注意培养学生良好的程序设计风格。应使学生比较熟练地使用调试工具DEBUG调试8086/8088汇编语言程序。注意提高学生的调试能力。二、课程性质与教学目标汇编语言程序设计是计算机科学与技术专业一门重要的基础课,是必修的核心课程之一,是操作系统和微机原理和接口技术等其它核心课程必要的先修课,而且对于训练学生掌握程序设计技术,熟悉上机操作和程序调试技术都有重要作用。因此该课程在整个教学计划中占有重要地位。 本课程的目的和要求是: 1、 应使学生掌握8086/8088宏汇编语言程序设计的基本方法和技巧,能够运用8086/8088宏汇编语言编写应用程序。提高学生分析问题、解决问题
3、的能力以及实际动手能力。 2、应使学生基本掌握汇编语言程序设计的基本理论,方法和技巧,正确地使用结构化、模块程序设计技术。注意培养学生良好的程序设计风格。 3、应使学生比较熟练地使用调试工具DEBUG调试8086/8088汇编语言程序。注意提高学生的调试能力。 4、注意与前后相关课程的关系。使学生对前导课程有进一步的理解,同时为学习后继课程打好基础。三、教学内容及基本要求第一单元 基 础 知 识知识点汇编语言的基本概念、数据的表示和类型、几种基本的逻辑运算、Intel 8088/8086微处理器基本概念、存储器分段和地址的形成、教学内容1.以二进制存在的机器语言。计算机内部数的存储及运算也都是
4、采用二进制。2.制数的值由1所在位置的权来确定。3.进制是一种很重要的短格式记数法,它把二进制数每4位分成一组,分别用0-9和A-F来表示0000-1111。反之,16进制数的每一位用四位二进制表示,就是相应的二进制数。4十进制转换为二进制的方法主要有降幂法和除法。计算机十化二程序中采取下面的算法: 5标志位OF=1表示带符号数的运算结果无效。CF=1表示无符号数运算结果无效。6计算机中的字符数据用ASC码表示,一个字符在存储器中占用一个字节(8位二进制码)。7BCD码是一种用二进制编码的十进制数,又称二-十进制数或8421码,它用4位二进制数表示一个十进制数码。BCD码有压缩和非压缩两种格式
5、,压缩的BCD码用4位二进制数表示一个十进制数位,如95 表示为1001,0101。非压缩的BCD码用地位二进制数表示一个十进制数位。如95 表示为 。8两种类型的内部存储器是ROM(只读存储器)和RAM(随机存储器)。存储器按字节编址,存储器地址一般用16进制的无符号数表示。9字数据在存储器中存放的顺序为高地址字节放高8位,低地址字节放低8位。10AX、BA、CA、和DX是通用寄存器,每个通用寄存器可作两个8位寄存器使用(如AH和AL)。11一个20位的物理地址可表示成段地址:偏移地址。计算存储器单元的物理地址,可将段地址乘以10H,再加上偏移地址。物理地址=(段地址10H)+偏移地址12段
6、寄存器CS、SS、DS和ES分别寄存代码段、堆栈段、数据段和附加段的段地址。13变址寄存器SI和DI一般指示数据段内单元的地址,有时也可作为数据寄存器用。1416位的标志寄存器个包括6个状态标志(SF、ZF、PF、CF、AF、OF)和3个控制标志(DF、IF、TF)。(CF、AF、SF、ZF和OF反映了算术运算以及移位、循环、逻辑等操作的结果状态。重难点1教学重点1.汇编语言的基本概念()机器语言,汇编语言,汇编程序,汇编语言源程序,目标程序,目标代码,可执行程序。 ()汇编语言的特点 ()为什么要学习汇编语言,汇编语言的应用场合。 2.数据的表示和类型 ()数值数据的表示,符号扩展,数值数据
7、的表示范围,码,不同数据之间的转换。 ()非数值数据类型:字节、字、双字等。 3.几种基本的罗辑运算 “与”、“或”、“非”、“异或” 4.Intel 8088/8086微处理器基本概念 ()8086/8088基本结构:执行单元EU,总线接口单元BIU, 指令的执行次序。 ()8086/8088CPU寄存器组:通用寄存器,数据寄存器,变址和指针寄存器,段寄存器和指令指针。 ()标志寄存器,运算结果标志、状态、控制标志。5.存储器分段和地址的形成 ()存储单元的地址 ()“高高低低”的存储原则 ()存储器的分段 ()物理地址的形成 ()段寄存器的引用()堆栈及其用途2教学难点1. 8088/80
8、86微处理器基本概念2. 存储器分段和地址的形成教学要求1. 领会汇编语言的慨念及特点2. 掌握数值数据的表示3. 了解8086CPU的基本结构4. 重点领会8086CPU地址形成的原理第二单元 指 令 系 统 与 寻 址 方 式知识点寻址方式、正确使用指令系统 教学内容1.寻址方式:() 立即寻址:操作数由指令给出() 寄存器寻址:操作数在寄存器中() 直接寻址:操作数的有效地址由指令直接给出() 寄存器间接寻址:PA=(DX)*16+(BX)(SI)(DI)() 寄存器相对寻址:PA=(DX)*16+(BX)(SI)(DI)+位移量() 基址加变址寻址:PA=(DX)*16+(SI)(DI
9、)() 相对基址加变址寻址:PA=(DX)*16+(SI)(DI)+位移量2.正确使用指令系统,关键要清楚每条指令的功能以及它们规定或限制使用的寄存器。下面是初学者易混淆的几个问题:(1)指令对地址还是对地址中的内容进行操作,要严格区分。(2)使用指令时,要清楚指令隐含的操作寄存器。(3)对带符号数和无符号数的操作应正确选择相应的条件转移指令。(4)用移位指令来倍增或倍减一个值是很方便的,但要注意对带符号数和无无符号数所使用的指令是不同的。() 是是程序中指令的符号地址,要注意和变量(数据符号)的区别。重难点1教学重点1、8086/8088的寻址方式 七种基本的寻址方式:固定寻址、立即寻址、存
10、储器直接寻址、寄存器寻址、寄存器间接寻址,变址寻址,基址加变址寻址。 2、8086/8088指令系统 ()分组:数据传送、算术运算、逻辑运算、串操作、程序控制、处理器控制。()常用指令格式和功能2教学难点1 8086CPU的寻址方式的理解2 各种指令的用法 教学要求1 理解七种寻址方式的慨念2 对数据传送、算术运算、逻辑运算、串操作、程序控制类的指令要深入理解第三单元 汇 编 语 言 格 式知识点伪操作指令、宏定义、地址表达式、数值表达式教学内容1、 伪操作也称为汇编程序命令,它是给汇编程序提供操作命令信息的,因此它和机器指令的区别在于机器指令是在在程序运行期间执行的,而伪操作是汇编程序对原程
11、序进行汇编时由汇编程序执行的。2、 伪操作的用法类似于使用助记符和机器指令。和机器指令一样,没条伪操作(伪指令)的含义是唯一的。3、 常用的伪操作:1) 数据定义及存储器伪操作:DB、DW、DD、DQ、DT、DUP属性伪操作:PTR、LABEL2) 符号定义伪操作:EQU、=3) 段定义和段结束伪操作:SEGMENT、ENDS、ASSUME定位类型PARR、BYTE、WORD、PAGE组合类型PUBLIC、COMMON、AT、STACK、MEMORY类别class_name4) 过程定义和过程结束PROC、ENDP过程属性NEAR、FAR5) 程序结束伪操作ENDstart6) 对准伪操作EV
12、EN、ORG7) 基准控制伪操作 RADIX二进制数标记 B 十进制数标记 D八进制数标记 O、Q 16进制数标记 H 汇编程序默认无标记数为十进制数,DEBUG程序默认无标记数为16进制数。4、 机器指令、伪指令和宏定义中的操作数项可用表达式表示。表达式由常数、寄存器、标号、变量及各种操作符组成。表达式在由汇编程序处理时,应能得出一个常数值填入机器代码。在汇编期间不能求得确定值的表达式是错误的。5、 变量中的表达式的属性应和变量的属性相同。在质量中使用的表达式,其类型应和其它操作数匹配。6、 表达式中常用的操作符:(1) 算术操作符 +、*、/、MOD(2) 逻辑操作符 AND、OR、XOR
13、、NOT(3) 关系操作符 EQ、NE、LT、GT、LE、GE(4) 数值回送操作符 TYPE、LENGTH、SIZE、OFFSET、SEG(5) 属性操作符 PTR、SHORT、THIS、HIGH、LOW 重难点1教学重点、汇编语言语句的种类和格式 ()语句的种类:指令语句、伪指令语句、宏指令语句 ()指令语句格式和伪指令语句格式。、宏汇编语言中的表达式 ()参数的表示 ()变量和标号 ()运算符 ()宏汇编语言的常用分析操作符和合成操作符 ()运算符和操作符的优先级、数据(变量)定义的语句和符号说明语句 ()数据(变量)定义语句,重复操作符DUP ()符号定义语句、常用伪指令语句和源程序组
14、织 ()段定义语句 ()段使用设定语句 ()源程序结束语句 ()汇编语言源程序的组织 ()其它常用的伪指令、上机过程 ()编辑、汇编、连结和调式过程、有关命令的使用。 ()汇编程序的工作过程简单介绍2教学难点1 伪指令的理解2 宏指令的理解3 常用伪指令语句和源程序组织4 地址表达式的理解教学要求1 深入理解伪指令2 常用伪指令语句和源程序组织应用3 深入领会地址表达式4 对地址表达式的组成的理解第四单元 汇 编 语 言 程 序 设 计知识点程序框图、分支程序设计、循环程序设计、子程序设计、常用系统功能调用、字符串处理教学内容1、 程序设计的一般步骤(1) 分析所要解决的问题,确定适当的算法。
15、(2) 设计整个程序的逻辑结构,画出程序框图。(3) 编写程序,正确运用IBM PC提供的指令、伪操作以及DOS、BIOS功能调用。同时简洁明了的说明注释。(4) 上机调试程序。2、 一个高质量程序应具有以下特点:(1) 程序有较好的逻辑结构,便于进行二次开发。(2) 源程序有较好的可读性。使非专业人员能读懂会用,甚至能加以修改。(3) 程序应有很好的可靠性和可维护性,也就是说要保证能正确地工作,并且易于做进一步的改进和完善。(4) 程序运行效率高而且有可重入性,这就要求尽量使用效高的指令,尽量减少程序的额外开销,同时程序的运行不能破坏程序的原始数据和指令。3、子程序即是前述的过程。它是模块化
16、、结构化程序设计的基本构件,其设计与调用技术是要求重点和熟悉掌握的内容。而对于子程序设计和调用技术,最关键的是要正确理解和熟悉掌握主、子程序的接口方法和主程序与子程序间的参数传递方法。主程序与子程序的接口,一是要正确使用CALL/RET 指令对,它们必须成对出现;二是转子和返主过程中的现场保护和恢复。保护和恢复现场通常有两种方法:() 程序与子程序所使用的存储器单元和寄存器尽量分开,互不干扰。() “现场”通过堆栈保护和恢复。分为两种情况:一是“现场”信息的保护和恢复安排在子程序中进行,即在子程序的开始处安排一段保护程序,在子程序结束前,再将有关部门内容恢复;二是安排在主程序中进行,即在调用子
17、程序指令(CALL)前保护,在CALL指令后恢复。4主程序与子程序的参数传递() 存器参数传递调用前,主程序将参数保存在某些通用寄存器中,子程序则直接使用寄存器中的参数。出口程序也通过寄存器返回给主程序。寄存器参数传递简单快捷,单需占用通用寄存器,只适合参数较少的场合。() 存储器参数传递利用制定的存储变量传递参数或通过地址表传送变量地址。此方法适合参数较多的场合,但需事先在内存中建立参数表,不如寄存器参数传递方便快捷。() 堆栈参数传递主程序与子程序将要传递的信息放在堆栈中,使用时再从堆栈中取出。由于堆栈具有先进后出的特性,故多重调用中各重参数层次分明,适合参数较多且子程序有嵌套和递归调用的
18、场合。实现可重入子程序,一般也是用堆栈传递参数。 重难点1 教学重点、顺序程序设计 ()顺序程序设计的基本方法 ()简单查表法代码转换、 分支程序设计 () 分支程序设计的基本方法 () 利用地址表实现多向分支、循环程序设计 () 循环结构的组成和控制循环的一般方法 () 简单循环和多重循环、子程序设计 () 子程序设计的一般原则 () 过程定义语句 () 主程序与子程序的参数传递方法 () 子程序说明信息和寄存器的保护和恢复 、常用系统功能调用() 系统功能调用概述,调用方法 ()常用功能调用。、字符串处理 ()字符串操作指令和重复前缀 ()字符串处理2。教学难点1分支程序设计应用2 循环程
19、序设计应用3 子程序设计应用教学要求1 加强分支程序设计的训练2 加强循环程序设计的训练3 加强子程序设计的训练第五单元 输 入 和 输 出 与 中 断知识点程序控制的I/O方式、中断传送方式、BIOS和DOS中断、常用BIOS和DOS调用 教学内容1、 程序控制的I/O方式这种方式使用I/O指令(IN和OUT)直接在端口级上进行信息的输入/输出。CPU与各设备之间以串行方式工作。CPU要通过测试I/O接口的状态来控制传送,若I/O设备没有准备好,CPU就循环测试,直到设备准备好,CPU就执行一次传送。2、 中断传送方式这种I/O方式实质上是一种特殊情况下的程序转移方式。所谓特殊情况一般指:(
20、1) 计算机出现异常事件,如电源掉电,内存I/O总线奇偶错等。出现这样的事件,CPU应立即中断现行程序的运行,转去执行处理故障的子程序。(2) 程序中预先安排的中断指令(INT)或其它内部原因(如除法错等),使现行程序暂时中断,转去执行相应的处理子程序。(3) 外部设备一切准备就绪时,向CPU发出中断现行程序的请求,以处理外设的输入输出。以上三类情况是引起中断发生的原因,称为中断源。第(1)类情况一般安排为非屏蔽中断。第(2)类情况称为内中断,第(3)类情况为外中断,这是一些可屏蔽的中断类型。3、 BIOS和DOS中断驻留ROM的BIOS提供了主要I/O设备的中断例行程序以及接口控制等功能模块
21、,因此可直接用指令设置参数,然后用中断指令INT调用BIOS中的例行程序。使用DOS功能调用其操作更为简易,对硬件的以来性更少一些。(1)常用的BIOS中断调用:INT 10H 显示器 INT 16H 键盘INT 12H 内存检验 INT 17H 打印机INT 13H 磁盘 INT 1AH 时钟INT 14H 串行通讯 INT 40H 软盘(2)常用的DOS中断调用:INT 20H 程序结束INT 21H 功能调用 键盘I/O(AH=1、6、7、8、A、B、C) 显示器I/O(AH=2、6、9) 打印机I/O)AH=5) 串行通讯I/O(AH=3、4)重难点1 教学重点、 输入和输出的基本概念
22、 ()端口地址 ()与外设之间交换的信息,数据传送方式。、 查询传送方式、 中断传送方式 () 中断传送方式概述 () 中断源、可屏蔽中断、非屏蔽外部中断、内部中断 () 中断响应过程、中断向量表、基本输入输出系统 ()概述(2)中断服务程序调用2教学难点1 各种传送方式的理解2 DOS调用的应用3 BIOS调用的应用教学要求1 理解各种传送方式2 加强应用对象的理解3 领会DOS调用4 领会BIOS调用四、学时分配总学时:60学时,其中理论课教学48学时。序号课堂授课内容学时授课方法备注1基础知识6讲授2指令系统与寻址方式10讲授3汇编语言格式6讲授4汇编语言程序设计18讲授5输入、输出与中
23、断8讲授五、教材与参考书教材: 金汉均等编著. . 汇编语言程序设计 武汉大学出版社,2007年9月参考书: PETER ABEL 编著 IBMPC ASSEMBLY LANGUAGE AND PROGRAMMING (FOURTH EDITION). 清华大学出版社,1998年5月第1版 六、考核方式1、 闭卷笔试2、 上机测试七、成绩评定1、 平时成绩 20%2、 上机测试成绩 20%3、 笔试成绩 60%八、其它说明汇编语言课程的主要任务是帮助学生理解和掌握微机的基本原理,并能够灵活的将汇编语言知识运用到实际问题的求解中。与其相配套的汇编语言实验的主要任务是则是使学生能搞达到用汇编语言上机并熟练的实现对实际问题的应用。专心-专注-专业