语言教案_语言类教案

教案模板 时间:2020-02-27 09:10:47 收藏本文下载本文
【www.daodoc.com - 教案模板】

语言教案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“语言类教案”。

《汇编语言》教案

课程类别:专业基础课 课程性质:必修

开课专业及年级:计算机科学与技术专业,大二 课程教学总学时数:56 学时分配:课堂讲授40学时,实验16学时

教材名称:IBM-PC汇编语言程序设计(第2版),沈美明 温冬婵 编著,清华大学出版社

考核方式:笔试80%,实验10%,平时10%

第1周第1 次课

第一章 基础知识(2个学时)教学目的及要求:

1.建立二进制信息的概念;2.掌握各种数制间的变换方法;3.掌握补码的概念、原理和运算规律;

4、掌握几种基本的逻辑运算 教学内容提要:

1.0 汇编语言与高级语言的区别及其应用场合 1.1数制

1.2数制之间的转换

1.3 算术运算和逻辑运算 1.4数和字符的表示 教学重点与难点:(1)理解不同进位记数制可以表达同一个数,如同一个人可以有很多名字一样。理解计算机系统使用的数据都是二进制形式,但是人类所习惯的数据表达方式是十进制形式。

(2)关于数制之间的转换重点掌握十进制数与二进制数间的转换,二进制与八进制、十六进制间的相互转换,主要要求对整数的转换熟练,小数转换掌握方法即可。

(3)理解二进制数真值与二进制编码之间的概念区别,掌握真值与原码、补码间的相互转换。

(4)理解原码符号与补码符号间质的区别

(5)掌握变反加1方法,并深刻理解它的各种运用场合 讨论问题:

(1)二进制数的真值与编码间的区别是什么?

(2)为什么在计算机系统中需要使用编码而不能直接使用真值?(3)原码与补码的符号间有什么样的区别?

(4)变反加1有哪些应用场合?怎样解释它的应用原理? 教学手段:讲授为主,讨论为辅,采用多媒体辅助教学

----------第1周第2 次课

第二章 80x86计算机组织(2个学时)教学目的及要求:

1.了解计算机系统的基本结构;2.了解计算机系统的基本工作原理; 3.理解在8086/8088系统中,逻辑地址与物理地址间的相互联系和转换机制;4.准确理解8086/8088 CPU中各寄存器的基本功能;5.准确理解标志寄存器中各标志位的含义以及实用价值;6.理解内存的编址方式,数据在内存中的存放形式,理解内存中段的组织形式以及各个段的含义;7掌握实模式下存储器寻址方法,了解保护模式存储器寻址方法;8.理解外部设备的管理方法。教学内容提要:

2.1 80x86处理器计算机系统

2.2基于微处理器的计算机系统构成 2.2.1 硬件 2.2.2 软件 2.3中央处理机

2.3.1 中央处理机CPU的组成 2.3.2 80x86寄存器组 2.4存储器

2.4.1 存储单元的地址和内容 2.4.2 实模式存储器寻址 2.4.3 保护式存储器寻址 2.5外部设备

教学重点与难点:

(1)理解逻辑地址与物理地址间的关联以及转换机制(2)建立内存的分段管理概念,理解四种段类型的含义

(3)理解标志寄存器中每个标志位的确切含义、实用价值,特别注意CF、OF这两个理解困难的标志位

(4)理解标志位是否有意义与人对数据的具体解释有关,这是一个容易引起困惑的问题 讨论问题:

(1)为什么在CPU内部不能直接使用物理地址?

(2)8086系统存储器为什么要分段,如何分段?物理地址如何形成? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第2周第1 次课

第3章 80x86的指令系统和寻址方式(8学时)(第一部分)教学目的及要求:

1.了解8086/8088机器指令的构成;2.准确理解8086/8088 CPU每种寻址方式的确切含义;3.了解程序占用空间和执行时间的概念。教学内容提要:

3.1 80x86的寻址方式

3.1.1 与数据有关的寻址方式 3.1.2 与转移地址有关的寻址方式

3.2 程序占有的空间和执行时间 教学重点与难点:(1)理解各种寻址方式的含义、用途,特别是存储器寻址中的几种方式。(2)注意理解立即数寻址与存储器直接寻址的区别;寄存器寻址与寄存器间接寻址的区别;

(3)段内寻址与短间寻址的区别; 讨论问题:

(1)寻址方式的本质是什么?为什么会出现多种寻址方式?

(2)立即数寻址与存储器寻址有什么重要的区别?二者有没有相似的地方?

(3)数据寻址和跳转指令的寻址的区别? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第2周第2 次课

第3章 80x86的指令系统和寻址方式(8学时)第二部分 教学目的及要求:

1.准确理解指令系统中部分指令的含义、用途、执行过程、标志位解释,以及使用时需要注意的问题;2掌握调试工具DEBUG的基本使用方法 教学内容提要:

3.3 80x86的指令系统

3.3.1 数据传送指令

3.3.2 算术指令(第一部分)教学重点与难点:

(1)理解指令的各种分类方法,部分指令的含义、用途、基本时序过程、对标志位的解释,注意几种地址装入指令的区别,避免混淆;(2)着重理解指令构成中的隐含操作数、隐含寻址方式,理解隐含寻址与非隐含寻址在控制上的区别;(3)理解堆栈的基本使用方法,区分栈底、栈顶、堆栈指针初始位置等容易混淆的概念;(4)算术指令对CF、OF标志的影响情况;(5)理解DEBUG工具的基本使用方法,包括DEBUG中几种基本命令的使用方法以及所显示信息的含义。

讨论问题:

(1)隐含寻址与显示操作数的寻址有何区别?

(2)LEA和LDS指令各自的功能是什么?二者之间有何质的区别?

(3)栈顶、栈底分别由何种器件指示?SP、SS中的内容与栈顶、栈底有什么样的区别、联系?

(4)在机器上调试一个小的程序片段,让同学们按步骤分析、解释当前使用的DEBUG命令、所显示的内容等。教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第3周第1 次课

第3章 80x86的指令系统和寻址方式(8学时)第三部分 教学目的及要求:

1.准确理解指令系统中部分指令的含义、用途、执行过程、标志位解释,以及使用时需要注意的问题;2.根据课件中对指令执行的描述体会逻辑指令和字符串处理指令的执行过程。教学内容提要:

3.3.2 算术指令(第二部分)3.3.3 逻辑指令

3.3.4 串处理指令(第一部分)教学重点与难点:

(1)着重理解指令构成中的隐含操作数、隐含寻址方式,理解隐含寻址与非隐含寻址在控制上的区别;(2)理解各种寻址方式的含义、用途,特别是存储器寻址中的几种方式,注意理解立即数寻址与存储器寻址的区别;(3)理解部分指令的含义、用途、对标志位的解释;(4)串处理指令的特殊性及一般用法;(5)理解DEBUG工具的基本使用方法,包括DEBUG中几种基本命令的使用方法以及所显示信息的含义。讨论问题:

(1)多字或多字节加法是如何完成的?先对低字节进行运算还是高字节?多字或多字节减法又是怎样完成的?(2)NEG指令的操作数可以解释为无符号数吗?CF标志是如何判断的?(3)CMP指令与TEST指令的功能分别是什么?在程序设计中,它们主要针对什么用途?(4)对于逻辑左移指令OF标志什么情况下才有意义?对于算术右移指令OF标志有什么样的特征?对于各种循环移位指令,OF标志什么情况下有意义? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第3周第2 次课

第3章 80x86的指令系统和寻址方式(8学时)第三部分 教学目的及要求:

1.准确理解指令系统中部分指令的含义、用途、执行过程、标志位解释,以及使用时需要注意的问题;2.串处理指令的特殊性及一般用法;3.控制转移指令的用途及使用方法4.理解DEBUG工具的基本使用方法,包括DEBUG中几种基本命令的使用方法以及所显示信息的含义。教学内容提要:

3.3.4 串处理指令(第二部分)

3.3.5 控制转移指令(有关子程序操作命令放到第6章介绍)3.3.6 处理机控制与杂项操作命令 教学重点与难点:

(1)串处理指令的使用方法;(2)串处理时的方向控制;(3)有符号和无符号的跳转指令的不同及测试条件的区别; 讨论问题:

(1)重复前缀和循环指令在使用时的区别?(2)有符号数与无符号数在比较时为什么会不同? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第4周第1 次课

第4章 汇编语言程序格式(4个学时)第一部分 教学目的及要求:

1.了解汇编程序功能;2.掌握各个伪指令的功能和使用方法;3.掌握伪指令与指令的重要区别;5.理解程序的段结构,掌握定义段的语法要素;6.掌握各个段寄存器的各种初始化方法。教学内容提要: 4.1 汇编程序功能 4.2 伪操作

4.2.1 处理器选择伪操作

4.2.2 段定义伪操作

4.2.3 程序开始和结束伪操作

4.2.4 数据定义及存储器分配伪操作 教学重点与难点:

(1)在理解伪指令功能的基础上,着重理解伪指令与指令的本质区别;(2)理解汇编语言中表达式与高级语言中表达式的本质区别;(3)在理解程序的段结构基础上,着重理解各个段寄存器的初始化方法;(4)理解两种源程序框架的原理,特别注意理解在每种框架中应用程序与操作系统交接CPU控制权的方法。讨论问题:

(1)指令与伪指令有何区别?(2)两种源程序框架对于CPU控制权的交接有何不同? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------

第4周第2 次课

第4章 汇编语言程序格式(4个学时)第二部分 教学目的及要求:

1.掌握各个伪指令的功能和使用方法;2.掌握伪指令与指令的重要区别;3.掌握汇编语言表达式与高级语言表达式的本质区别;4.掌握汇编语言程序格式;5.熟悉汇编语言程序的上机过程;6.掌握两种可执行文件的区别。教学内容提要: 4.2 伪操作

4.2.5 表达式赋值伪操作EQU 4.2.6 地址计数器与对准伪操作

4.2.7 基数控制伪操作 4.3 汇编语言程序格式

4.3.1 名字项

4.3.2 操作项

4.3.3 操作数项

4.3.4 注释项

4.4 汇编语言程序的上机过程

4.4.1 建立汇编语言的工作环境

4.4.2 建立ASM文件

4.4.3 产生OBJ文件

4.4.4 产生EXE文件 4.4.5 程序的执行 4.4.6 COM文件 教学重点与难点:

(1)理解汇编语言中表达式与高级语言中表达式的本质区别;(2)地址计数器的理解和使用;(3)理解变量、标号的三个基本空间特性:段、偏移量、类型。讨论问题:

(1)汇编语言中的表达式与高级语言中的表达式相比,有何重要区别?(2)EXE文件和COM文件有何区别?(3)段、偏移量、类型三个基本空间特性如何确定一个变量在内存空间的确切位置、占用字节数?这三个特性对标号的使用而言,有何必要性? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------

第5周第1 次课

第5章 循环与分支程序设计(共6学时)第一部分 教学目的及要求:

1.掌握由汇编语言源程序得到可执行程序的完整过程;2.精确掌握各种转移指令的功能、使用限制、标志位使用、在程序设计中的通常用法等;3.重点理解各条件转移指令对标志位的解释及其相关的条件判断原理4.能够实际应用所学到的转移指令,在编写完整程序的基础上使用分支、循环等复杂的流程结构 教学内容提要: 5.1 循环程序设计

5.1.1 循环程序的结构形式

5.1.2 循环程序设计方法(第一部分)教学重点与难点:

(1)在理解标志位含义的基础上,着重理解各条件转移指令对标志位的解释、条件判断原理;(2)理解循环指令的功能,以及与其它条件转移指令的主要区别;(3)结合实例,理解循环指令在程序设计中的通常用途;(4)结合实例,理解循环指令的使用限制,理解实现循环结构单纯依靠循环指令是不够的。讨论问题:

(1)循环指令与其它条件转移有什么主要区别?使用循环指令是否可以实现所有的循环结构?

教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第5周第2 次课

第5章 循环与分支程序设计(共6学时)第二部分 教学目的及要求:

1.掌握由汇编语言源程序得到可执行程序的完整过程;2.精确掌握各种转移指令的功能、使用限制、标志位使用、在程序设计中的通常用法等;3.重点理解各条件转移指令对标志位的解释及其相关的条件判断原理4.能够实际应用所学到的转移指令,在编写完整程序的基础上使用分支、循环等复杂的流程结构。教学内容提要: 5.1 循环程序设计

5.1.2 循环程序设计方法(第二部分)5.1.3 多重循环程序设计 教学重点与难点:

(1)理解循环指令的功能,以及与其它条件转移指令的主要区别;(2)结合实例,理解循环指令在程序设计中的通常用途;(3)结合实例,理解循环指令的使用限制,理解实现循环结构单纯依靠循环指令是不够的 讨论问题:

(1)多重循环程序设计需要注意的关键问题,引导学生将其与高级语言在进行多重循环程序设计的异同; 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第6周第1 次课

第5章 循环与分支程序设计(共6学时)第三部分 教学目的及要求:

1.掌握由汇编语言源程序得到可执行程序的完整过程;2.精确掌握各种转移指令的功能、使用限制、标志位使用、在程序设计中的通常用法等;3.重点理解各条件转移指令对标志位的解释及其相关的条件判断原理4.能够实际应用所学到的转移指令,在编写完整程序的基础上使用分支、循环等复杂的流程结构。教学内容提要: 5.2 分支程序设计

5.2.1分支程序的结构形式

5.2.2分支程序的设计方法

5.2.3跳跃表法 教学重点与难点:

(1)理解无条件转移指令存在的价值;(2)在理解各标志位含义的基础上,着重理解各条件转移指令对标志位的解释、条件判断原理;(3)结合实例,理解转移指令在分支程序设计中的通常用途;(4)结合实例,理解条件转移指令的使用限制,理解并逐步建立由框图到程序的设计思路,并由此建立使用条件转移指令所需的良好习惯;(5)理解使用分支表实现多分支结构的优越性。讨论问题:

(1)条件转移指令最大转移范围是多少?无条件转移指令存在的意义在哪里?

(2)JNC指令与JA指令的区别是什么?

(3)JZ指令与JCXZ指令有何重要区别?

(4)由流程框图设计分支结构程序时,使用条件转移指令应当注意什么问题?(5)带符号数条件转移指令使用哪些标志位进行条件判断?条件判断主要基于一个什么原理?

(6)使用分支表实现多分支结构与通常的条件转移指令直接实现多分支有何区别?其优越性如何? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------

第6周第2 次课

第六章 子程序结构(共6学时)第一部分 教学目的及要求:

1.理解子程序在汇编语言中的定义语法;2. 理解子程序的类型概念;3. 理解子程序调用、返回的原理;4.掌握子程序入、出口参数传递方法;5. 理解子程序设计时需要注意的问题;6.结合实例理解子程序设计的过程。教学内容提要:

6.1子程序的设计方法

6.1.1 过程定义伪操作

6.1.2 子程序的调用和返回

6.1.3 保存与恢复寄存器 6.1.4 子程序的参数传递 教学重点与难点:

(1)理解子程序调用、返回的基本原理;(2)理解子程序的类型对调用、返回产生的影响;(3)理解子程序参数传递的三种方法;(4)掌握在实际应用中,区分哪些模块适合编制为子程序的方法。讨论问题:

(1)子程序调用、返回使用了什么样的底层机制?会不会由于堆栈的操作不当而引起子程序返回错误?应当如何避免子程序返回错误?(2)段内调用、返回与段间调用、返回区别在什么地方?它们分别适合用于什么样的应用场合?(3)寄存器参数传递的优点是什么?缺点是什么?在使用堆栈传递参数时,子程序返回应当注意什么问题?

教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学 第7周第1 次课

第六章 子程序结构(共6学时)第二部分 教学目的及要求:

1.理解子程序在汇编语言中的定义语法;2. 理解子程序的类型概念;3. 理解子程序调用、返回的原理;4.掌握子程序入、出口参数传递方法;5. 理解子程序设计时需要注意的问题;6.结合实例理解子程序设计的过程。教学内容提要:

6.1子程序的设计方法

6.1.4 子程序的参数传递

6.1.5 增强功能的过程定义伪操作 6.2 子程序的嵌套 教学重点与难点:

(1)理解子程序调用、返回的基本原理;(2)理解子程序的类型对调用、返回产生的影响;(3)理解子程序参数传递的三种方法;(4)掌握在实际应用中,区分哪些模块适合编制为子程序的方法。讨论问题:

(1)子程序调用、返回使用了什么样的底层机制?会不会由于堆栈的操作不当而引起子程序返回错误?应当如何避免子程序返回错误?(2)段内调用、返回与段间调用、返回区别在什么地方?它们分别适合用于什么样的应用场合?(3)寄存器参数传递的优点是什么?缺点是什么?在使用堆栈传递参数时,子程序返回应当注意什么问题? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学 第7周第2 次课

第六章 子程序结构(共6学时)第三部分 教学目的及要求:

1.理解子程序在汇编语言中的定义语法;2. 理解子程序的类型概念;3. 理解子程序调用、返回的原理;4.掌握子程序入、出口参数传递方法;5. 理解子程序设计时需要注意的问题;6.结合实例理解子程序设计的过程。教学内容提要: 6.3子程序举例 教学重点与难点:

(1)理解子程序调用、返回的基本原理;(2)理解子程序的类型对调用、返回产生的影响;(3)理解子程序参数传递的三种方法;(4)掌握在实际应用中,区分哪些模块适合编制为子程序的方法。讨论问题:

(1)子程序调用、返回使用了什么样的底层机制?会不会由于堆栈的操作不当而引起子程序返回错误?应当如何避免子程序返回错误?(2)段内调用、返回与段间调用、返回区别在什么地方?它们分别适合用于什么样的应用场合?(3)寄存器参数传递的优点是什么?缺点是什么?在使用堆栈传递参数时,子程序返回应当注意什么问题? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学 第8周第1 次课

第7章 高级汇编语言技术(共2学时)教学目的及要求:

1.掌握汇编语言中“宏”的概念,能够在程序设计中正确使用宏指令;2.理解宏和子程序的本质区别;3.掌握条件汇编和重复汇编的概念,并且能够在程序设计中正确使用;4.了解汇编工具对源程序的汇编过程; 教学内容提要: 7.1 宏汇编 7.2 重复汇编 7.3条件汇编

教学重点与难点:

(1)着重理解宏指令与子程序的区别,以及每个过程分别由什么样的角色来完成;(2)着重理解条件汇编、重复汇编与条件转移指令、循环指令的本质区别;(3)能够在实际应用中合理运用宏指令、条件汇编、重复汇编; 讨论问题:

(1)宏指令与子程序的区别有哪些?宏调用的本质是什么?与子程序调用有什么区别?宏指令与子程序相比较,它们各自的优越性是什么?什么样的软件模块适合使用子程序实现?什么样的软件模块适合使用宏指令实现?(2)条件汇编与重复汇编是在什么时候完成的?条件转移指令与循环指令是在什么时候完成的?条件、重复汇编语句的功能与条件转移、循环指令有什么本质区别? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第8周第2 次课

第8章 输入输出程序设计(共4学时)第一部分 教学目的及要求:

1.掌握CPU如何和外部设备接口交换信息的方法,了解CPU控制外部设备常运转的基本原理.2. 掌握端口访问指令的功能、使用方法、寻址方式,能够理解简单的接口控制程序。3.掌握中断的基本概念。中断向量表的概念,中断过程,中断程序的编写 教学内容提要:

8.1 I/O设备的数据传送方式

8.1.1 CPU与外设

8.1.2 直接存储器存取(DMA)方式 8.2 程序直接控制I/O方式

8.2.1 I/O端口

8.2.2 I/O指令

8.2.3 I/O程序举例 8.3 中断传送方式

8.3.1 8086的中断分类 教学重点与难点:

(1)着重理解程序控制方式与中断控制方式的本质区别,以及中断控制方式的相对优越性;(2)能够在实际应用中针对接口编写基本的控制程序。讨论问题:

(1)三种数据传送方式的优缺点;(2)CPU如何控制外部设备? 教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第9周第1 次课

第8章 输入输出程序设计(共4学时)第二部分 教学目的及要求:

1.掌握中断的基本概念;2.掌握中断向量表的概念;3.掌握中断过程,中断优先级和中断程序的编写。教学内容提要: 8.3 中断传送方式

8.3.2中断向量表

8.3.3 中断过程

8.3.4 中断优先级和中断嵌套 8.3.5 中断处理程序 教学重点与难点:

(1)中断向量表的作用;(2)如何编写自己的中断处理程序;(3)着重理解程序控制方式与中断控制方式的本质区别,以及中断控制方式的相对优越性 讨论问题:

(1)中断向量在中断向量表中的存储形式如何?(2)编写中断向量同编写子程序的异同?(3)编写中断程序需要注意的问题有那些?(4)中断过程包括哪几个主要的步骤?哪些步骤是硬件自动完成的?哪些步骤是程序完成的?程序控制方式与中断控制方式的主要区别是什么?相对而言,中断控制方式有什么优越性?

教学手段:

讲授为主,讨论为辅,采用多媒体辅助教学

----------第9周第2 次课

第9章 BIOS和DOS中断(共4学时)第一部分 教学目的及要求:

1.掌握必要的DOS调用和BIOS调用,并且能够在程序设计中正确使用。教学内容提要: 9.1 键盘I/O

9.1.1 字符码与扫描码

9.1.1 BIOS键盘中断

9.1.1 DOS键盘功能调用 9.2 显示器I/O

9.2.1 字符属性

9.1.1 BIOS显示中断

9.1.1 DOS显示功能调用 教学重点与难点:

(1)着重理解DOS中断调用的概念,理解调用号、入口参数、出口参数的概念及对于调用的重要性,理解中断调用与中断的区别;(2)着重理解常用DOS中断调用的功能以及使用方法;(3)能够在实际应用中适当的使用DOS中断调用,简化程序的编制过程。讨论问题:

(1)DOS中断调用的中断入口地址计算与硬件中断过程中的中断入口地址计算是否相同?在程序设计中使用DOS中断调用与硬件中断过程的主要区别是什么?被硬件中断调用的中断服务程序是否可以在程序中直接调用?(2)在程序设计中使用DOS中断调用有什么好处? 教学手段

讲授为主,讨论为辅,采用多媒体辅助教学

----------第10周第1 次课

第9章 BIOS和DOS中断(共4学时)第二部分 教学目的及要求:

1.掌握必要的DOS调用和BIOS调用,并且能够在程序设计中正确使用 教学内容提要: 9.3 打印机I/O 9.3.1 DOS打印功能

9.3.2打印机的控制字符

9.3.3 BIOS打印功能 9.4 串行通信口I/O 9.4.1 串行通信口接口 9.4.2 串行口功能调用 教学重点与难点:

(1)着重理解常用BIOS中断调用的功能以及使用方法;(2)能够在实际应用中适当的使用BIOS中断调用,简化程序的编制过程。讨论问题:

(1)BIOS中断调用与DOS中断调用有什么共同之处?有什么区别?二者有什么重要的联系?BIOS中断调用是否可以看作设备驱动程序?(2)在程序设计中使用BIOS中断调用有什么好处? 教学手段

讲授为主,讨论为辅,采用多媒体辅助教学

下载语言教案word格式文档
下载语言教案.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文