教学内容及教案.docx
《教学内容及教案.docx》由会员分享,可在线阅读,更多相关《教学内容及教案.docx(98页珍藏版)》请在冰点文库上搜索。
![教学内容及教案.docx](https://file1.bingdoc.com/fileroot1/2023-6/2/8b56aee8-bbc2-40a2-ac02-c0dfd4a3a9bc/8b56aee8-bbc2-40a2-ac02-c0dfd4a3a9bc1.gif)
教学内容及教案
《微机原理及应用》课程教学安排
总学时数:
48其中课堂授课:
40学时实验:
8学时
《微机原理及应用》是一门专业基础课,主要从计算机硬件的角度介绍和描述计算机的组成结构、工作原理和应用基础。
一、本课程的学习重点和要求:
1、学习并了解计算机中的常用数制及转换,微型计算机的基本组成结构和工作原理。
2、学习并了解16位微处理器的主要内部结构、功能部件、外部特性、主要引脚信号、最大寻址范围、运算字长、工作方式和主要操作功能。
3、学习并了解计算机中常用存储器的分类、特点、工作原理、外部特性和用途。
4、学习并熟练掌握8086CPU的指令系统、汇编语言的基本语法结构和汇编语言程序设计方法。
5、学习并了解计算机中输入/输出(I/O)接口的主要作用、功能、工作原理和常用的基本控制方式以及串、并行通信的特点。
6、学习并熟练掌握可编程并行I/O通信接口芯片8255的主要作用、功能、工作原理、内部主要结构和外部特性、初始化编程和应用技术。
掌握简单人机外设(按键和LED数码显示器)的工作原理、与CPU的连接和管理方法。
7、学习并熟练掌握可编程计数/定时控制器I/O接口芯片8253的主要作用、功能、工作原理、内部主要结构和外部特性、初始化编程和应用。
8、学习并了解计算机中其它常用I/O接口电路芯片的主要作用、功能、工作原理、编程和应用。
其中包括:
中断控制器8259的主要作用、功能、工作原理、编程和应用方法。
A/D和D/A转换接口电路的主要作用、功能、工作原理和应用方法等。
二、课堂授课内容、学习重点及安排:
第一章:
计算机概述及基础知识
1.1计算机中常用数制及转换方法、补码及符号数的表示方法。
1.2计算机中常用集成电路(数字逻辑电路)简介。
1.3补充1:
计算机中常用半导体存储器的作用、分类、特点、
外部特性及其与系统的连接方法。
1.4补充2:
微型计算机的基本组成结构及工作原理。
本章学习重点和要求:
1、学习并掌握计算机中常用数制及转换方法、补码及符号数
的表示方法。
2、学习并了解常用半导体存储器的作用、分类和特点。
3、学习并了解微型计算机的基本组成结构。
第二章:
16位微处理器
2.1INTEL公司的16位CPU8086/8088的主要内部结构、功能部件和存储器组织结构(执行部件EU、总线接口部件BIU)。
2.28086/8088CPU的外部特性、引脚信号和工作模式(最大最小工作模式)。
2.38086CPU的主要操作功能(复位、启动和中断操作)。
本章学习重点和要求:
1、学习并了解8086CPU内部主要功能部件EU和BIU的主要
作用和组成结构,CPU内部主要工作寄存器及作用,8086
CPU的外部特性和引脚信号分类及作用,最大寻址范围和运算字长。
2、学习并了解8086系统的存储器组织结构和管理模式(逻辑
地址和物理地址的概念)。
3、学习并掌握8086CPU的工作模式和主要操作(复位、启动
和中断操作)功能。
4、学习并了解8086CPU的中断分类、中断功能、中断向量
和中断响应过程等。
第三章:
86系列微型计算机的指令系统
3.186系列汇编语言及指令的格式与寻址方式(指令的语句格式和CPU的寻址方式)。
3.2常用传送类指令的语法格式详解及应用举例。
3.3常用数据操作类指令的语法格式详解及应用举例。
3.4常用控制类指令的语法格式详解及应用举例。
本章学习重点和要求:
学习并掌握8086CPU汇编语言指令的语法格式、寻址方式、指令功能和应用。
第四章:
微型计算机的程序设计
4.1程序设计步骤。
4.2简单程序结构及设计举例。
4.3分支程序结构及设计举例。
4.4循环程序结构及设计举例。
4.5子程序结构及设计举例。
4.6查表程序及其应用举例。
本章重点:
学习并掌握常用各类程序结构、设计方法、步骤和应用。
第五章:
微型计算机汇编语言及汇编程序
5.1宏汇编语言的基本语法(常用伪指令的语句格式、常数、变量、标号、运算符和表达式)。
5.2伪指令、宏指令及系统功能调用。
5.3汇编语言程序设计。
本章学习重点和要求:
学习并了解宏汇编语言的基本语法结构及掌握常用基本伪指令的使用方法。
第六章:
微型计算机的输入输出接口技术及其应用
6.1微型计算机输入输出接口的功能、作用和常用控制方式。
6.2微型计算机基本输入输出方式、作用和特点(串、并行通信
接口技术的作用、特点和应用,重点是并行接口技术)。
6.3可编程并行通信接口芯片5255A概述。
(8255A的主要作用、功能、工作方式和工作原理)。
6.48255主要内部结构、外部特性、引脚信号及其与系统的连接。
6.58255A的控制字及初始化编程。
6.6补充3:
8255A在交通灯控制系统中的应用举例。
6.7补充4:
基本人机外设的结构、工作原理、接口技术和应用系
统设计
(主要介绍按键和LED数码显示器的工作原理、与计算机的连接、管理方式和检测及控制程序的设计方法等)。
本章学习重点和要求:
1、学习并了解微型计算机输入输出接口的功能、作用和常用
控制方式。
2、学习并了解计算机的串、并行通信的作用和特点。
3、学习并掌握8255A在计算机系统中的主要作用和用途、功
能特点、工作原理、工作方式、主要内部结构、外部特性
及其与系统的连接、控制字及初始化编程和应用。
4、学习并掌握按键和LED数码显示器的工作原理,与计算机
的连接和管理程序的设计方法。
第七章:
微型计算机的计数/定时接口技术及其应用
7.1可编程计数/定时控制器接口芯片8253概述。
(8253的主要作用、功能和工作原理)。
7.28253主要内部结构、外部特性、引脚信号及其与系统的连接。
7.38253的控制字、初始化编程及工作方式描述。
7.4补充5:
8253应用系统设计举例。
7.5补充6:
计数/定时接口技术在车辆性能检测中的应用及应用
系统设计举例。
本章学习重点和要求:
1、学习并掌握8253在计算机系统中的主要作用和用途、功
能特点、主要内部结构、工作原理、外部特性及其与系统
的连接。
2、学习并掌握8253的工作方式和初始化编程。
3、学习并掌握8253的简单应用。
第八章:
中断控制器8259及其应用概述
8.1可编程中断控制器接口芯片5259A概述。
(8259A的主要作用、功能、工作方式和工作原理)。
8.28259主要内部结构、外部特性、引脚信号及其与系统的连接。
8.38259A的控制字及初始化编程简介。
本章学习重点和要求:
1、学习并了解8259A在系统中的作用、功能、工作方式和工
作原理。
2、学习并了解8259主要内部结构。
3、学习并了解8259A的控制字及初始化编程。
第九章:
A/D及D/A转换技术
9.1A/D及D/A转换技术应用概述。
9.2D/A转换的作用、工作原理和主要技术性能指标。
9.38位D/A芯片DAC0832概述及应用简介。
9.4A/D转换的作用、工作原理和主要技术性能指标。
9.58位A/D转换芯片ADC0809概述及应用简介。
本章学习重点和要求:
学习并了解A/D和D/A转换技术的主要作用和主要技术性能指标。
总复习
第一章:
计算机概述及基础知识
一、计算机中常用的半导体存储器类型和缩写:
1、只读存储器ROM:
(ReadOnlyMemory)
2、一次性可编程只读存储器PROM(ProgrammableROM)
3、随机存取存储器:
RAM(RandomAccessMemory)
4、静态RAM:
SRAM(StaticRAM)
5、动态RAM:
DRAM(DyanmicRAM)
6、光可擦除电可编程只读存储器EPROM(ErasableProgrammableROM)
7、电擦除电可编程只读存储器EEPROM(ElectricallyErasable
ProgrammableROM)
8、闪烁存储器FlashMemory
二、常用存储器容量单位及表示方法:
1字节=8位二进制数,
1字=2字节=16位二进制数,双字=4字节=32位二进制数
1KB=1024B(字节)1MB=1024KB
1GB=1024MB1TB=1024GB
1节=16字节1页=256字节1段=64KB(字节)
三、存储器中常用的术语、概念和含义:
1、存储器的物理地址:
使用CPU全部地址线对存储器进行的编址,称为
存储器的物理地址或绝对地址。
(使用CPU全部寻址范围内的地址码对存储单元进行的编址称为存储器的物理地址或绝对地址。
)
2、存储器的逻辑地址:
由CPU内部段寄存器(即段基址)和偏移地址寄存
器(例如:
SI、DI、BP、和SP等寄存器)的当前值所构成的地址称为逻
辑地址。
3、一个存储单元的物理(绝对)地址是唯一的,但可以有多个逻辑地址!
(或:
一个存储单元可以有多个逻辑地址,但仅有一个物理地址!
)
存储单元的物理地址可由段寄存器(即段基址)和偏移地址经运算或变换得到。
其算法为:
绝对地址=段基址X16(左移4位)+偏移地址
例1:
段基址存放在段寄存器CS中,即CS=2000H,偏移地址在IP中,即IP=2200H,
则:
绝对地址=段基址X16+偏移地址=20000H+2200H=22200H
例2:
已知:
CS=2200HIP=0200H,试计算其绝对地址。
绝对地址=段基址X16+偏移地址=22000H+0200H=22200H
由上可知绝对地址为22200H的存储单元它的逻辑地址可以有多个。
四、关于计算机中断技术中的基本概念和技术术语:
1、中断定义:
计算机在执行当前程序或任务时,由于随机或突发事件的
产生而暂停当前的工作转去为其服务,服务完成后再返回到刚才的断点处继续在这之前的工作,此过程称之为:
中断。
2、断点:
CPU响应中断时程序中止处的CS和IP的值(即:
程序中止处的
下一条指令的地址)。
3、中断源:
采用中断方式与CPU或系统进行信息交换的外设或部件。
4、中断向量:
中断服务子程序的入口地址被称之为:
中断向量。
5、中断向量表:
用来存放中断服务子程序的入口地址的存储区域被称之
为:
中断向量表。
6、中断类型码:
在CPU响应外设中断请求时,由外设向CPU提供的用来
查找中断向量表的索引码。
7、现场:
在中断服务子程序中所使用的那些与主程序中符号相同但定义
或作用不同的全局变量、工作寄存器或工作单元等。
(即:
在执行中断服务子程序时需要保护的内容)
8、中断优先级:
外设产生中断请求时CPU或中断控制器对其进行响应或
处理的先后顺序。
9、可屏蔽中断:
可使用中断开、关指令控制CPU对中断请求的响应。
这
类中断称之为可屏蔽中断。
8086CPU的开中断指令为STI,可允许CPU响应外部中断请求。
关中断指令为CLI可禁止CPU响应外部中断请求。
10、非屏蔽中断:
CPU的中断响应不能使用中断开、关指令进行控制。
这
类中断称为不可屏蔽中断或非屏蔽中断(不可使用中断开、关指令控制CPU对中断请求的响应。
这类中断称之为不可屏蔽中断或非屏蔽中断)。
非屏蔽中断的优先级要高于可屏蔽中断。
11、中断优先级:
多个中断源同时申请中断时CPU的响应策略或中断嵌套
规则。
12、采用中断技术的优点:
CPU工作效率高、实时性好、便于处理随机和
突发事件。
13、中断响应和处理的实质内容:
确定发出中断请求的中断源(即外设)
或随机事件,找到并执行为该中断源服务的中断服务子程序。
也即:
其实质就是为了执行一段服务程序。
五、8086/8088CPU的中断系统
1、中断分类:
硬件中断、软件中断和内部操中断。
a.硬件中断:
由外设或外部信号所产生的中断请求称之为:
硬件中断。
其硬件中断又可分为非屏蔽中断和可屏蔽中断,其中,非屏蔽中断
请求信号要连接到CPU的NMI引脚,而可屏蔽中断请求信号要连接到CPU的INTR引脚.
b.软件中断:
由执行CPU中断指令:
INTn所产生的中断称为软件
中断。
c.内部操中断:
由CPU内部的一些特定操作(例如:
除数为0时所引起
的除数为0中断,符号数运算过程中产生溢出时所引起的溢出中断,为方便程序的调试,每执行完一条指令时都可产生一次中断的单步中断等)所引起的中断称之为:
内部操作中断。
2、中断响应条件:
a.非屏蔽中断:
将非屏蔽中断源的中断请求信号连接到CPU的NMI引
脚,编写好中断服务子程序,并在主程序的系统初始化程序中建立好中断向量表(即:
将中断服务子程序的入口地址填写到中断向量表中,其向量表地址由分配给该外设的中断类型码确定)。
b.可屏蔽中断:
将可屏蔽中断源的中断请求信号连接到CPU的INTR
引脚,编写好中断服务子程序,在主程序的系统初始化程序中建立好中断向量表,并在主程序中的适当位置处使用CPU的开中断指令STI打开CPU中断,允许CPU接收外部可屏蔽中断请求。
c.软件中断:
编写好中断服务子程序,在主程序的系统初始化程序中
建立好中断向量表,在需要中断时的程序位置处放一条INTn指令。
d.内部操中断:
编写好中断服务子程序,在主程序的系统初始化程序中建立好中断向量表。
当系统中出现特定内部操作(即:
除数为0、溢出和单步操作)时即可对其进行服务。
e.
3、中断向量表的建立:
即:
利用程序或指令将中断服务子程序的入口地
址(逻辑地址)填写到中断向量表中。
中断向量表的地址由外设的中断类型码确定。
例如已知某外设的中断类型码为20H,其中断服务子程序的入口地址
为:
1234H:
5678H,为其建立中断向量表就是将中断服务子程序的入口
地址1234H:
5678H填写到自内存空间地址0段20HX4开始的连续4个字
节的存储单元中,即0000H:
20HX4+0---0000H:
20HX4+3的连续4个单元
中,其存放顺序为:
低地址存放低字节,高地址存放高字节:
即自20HX4
开始的连续4个字节的存储单元的内容分别如下:
(20H*4+3)=12H。
(20H*4+2)=34H,
(20H*4+1)=56H,
(20H*4+0)=78H,
4、可屏蔽中断的响应过程:
(1).从数据总线D.B上读取外设提供的中断类型码并暂存.
(2).将FR内容存入堆栈保护.
(3).将标志位IF和TF清0,以便禁止INTR中断.
(4).将当前的程序断点CS:
IP存入堆栈保护.
(5).利用外设提供的中断类型码计算中断向量表地址,并从中取出中
断处理子程序的入口地址转去执行服务程序.
(6).执行完中断服务子程序后恢复断点和FR的内容.
(7).从中断返回。
(即执行一条中断返回指令IRET)
第5章86系列微型计算机的指令系统
一、寻址方式:
如何获得操作数的方法称之为寻址方式,8086CPU的寻址方式有以下4类:
1、立即寻址:
当操作数直接出现在指令中时称为立即(数)寻址
2、寄存器寻址:
当操作数在CPU内部寄存器中时称为寄存器寻址
3、直接寻址:
当操作数的地址出现在指令中时称为直接寻址
4、寄存器间接寻址:
当操作数的地址出现在寄存器中时称为寄存器寻址。
在该寻址方式中操作数一定在存储单元中,但存储单元的有效地址要求使用寄存器指定,这些寄存器可以使用BX、BP、SI和DI之一,即:
存储单元的有效地址要放在这其中的某个寄存器中。
有效地址:
寻址所需要的偏移地址称之为有效地址
注意:
在以上寻址方式中若目标操作数是非CS的段寄存器时,只能采用寄存器寻址方式产生或获得操作数!
例如:
将数据段寄存器DS的内容设置为2000H
若直接使用指令:
MOVDS,2000H是错误的,可改为以下方式:
MOVAX,2000H
MOVDS,AX
注意:
两个无符号数相比较时,仅用CF标志即可判断两数大小,若CF=0则被减数大于等于减数。
两个带符号数相比较时,若OF和SF状态值相同则说明被减数大于等于减数,否则说明被减数小于减数。
因两个相同符号数比较时不会发生溢出!
例1:
将AX内容加1:
即AX+1---AX
可以使用指令:
ADDAX,1;该指令的寻址方式为立即数寻址,具体操作和指令执行时间见P444第6栏中的第6行:
acc,imm
即:
ADDacc,imm;其中acc为累加器AX,imm表示立即数,该指令的时钟周期数为4,字节数为2—3。
而如果改用:
INCAX指令也可实现AX+1;但其指令的时钟周期数为2,字节数仅为1,见P447第25栏中第1行:
reg16(因AX为16位,如果使用INCAL时为8位操作,即为reg8)。
尽管以上2条指令的操作功能相同,但指令执行后对状态标志寄存器的影响是不一样的!
ADD指令能影响除控制标志之外的所有的状态标志:
CF、PF、AF、ZF、SF、OF,但INC指令不影响CF标志!
即:
若AL=0FFH时,执行INCAL后CF的状态不变!
例2:
将AX内容清0
可以使用指令:
MOVAX,0;该指令的寻址方式为立即数寻址,具体操作和指令执行时间见P450第40栏中第6行:
reg,imm,即:
MOVreg,imm,由表中可知该指令的时钟周期数为4,字节数为2—3。
但如果改用:
XORAX,AX指令,同样也可实现对AX清0的目的,但其指令的时钟周期数为3,字节数为2,见P455第75栏中的第1行:
reg,reg,即:
XORreg,reg.
第6章微型计算机的程序设计
例3:
编一段程序完成符号函数。
见P151习题6.5,答案见P471
……………………………………………
XDB?
;定义自变量DATA1
YDB0;定义函数值存放单元DATA2
………………………………………………
MOVAL,X;取自变量送AL以便对其进行判断
CMPAL,0;影响所有标志位:
ZF、SF、CF等标志位
JNZPNZ;X不为0转移
MOVAL,0;X=0
MOVY,AL;将0送函数值存放单元中
HLT
PNZ:
JSPS;测试符号标志位若X<0转移。
见P133转移指令表
MOVAL,1;X>0
MOVY,AL;将1送函数值存放单元中
HLT
PS:
MOVAL,0FFH;X<0,送-1的补码
MOVY,AL;将0送函数值存放单元中
HLT
P1386.2简单程序
例6.1将自10050H起连续存放的两个16位数求和后存入其后。
低字节在低地址
例6.1程序1
MOVAX,1000H;建立数据段指针
MOVDS,AX
MOVSI,50H;建立被加数偏移地址指针
MOVDI,52H;建立加数偏移地址指针
MOVBX,54H;建立和偏移地址指针
CLC;清进位位。
该指令可省,因下一条指令XORAX,AX能够影响标志!
!
!
XORAX,AX;累加器清0
MOVAX,[SI];取出被加数送AX
ADCAX,[DI];两数相加
MOV[BX],AX;存结果
HLT;暂停
例6.1程序2
MOVAX,1000H;建立数据段指针
MOVDS,AX
MOVSI,50H;建立被加数偏移地址指针
MOVAX,[SI];取出被加数送AX
ADDAX,[SI+2];两数相加,注:
仅2个数相加时可以不使用带进位加法指令!
MOV[SI+4],AX;存结果
HLT;暂停
例6.2将10050H单元的内容拆为两段,每段4位,存入其后
MOVAX,1000H;建立数据段指针
MOVDS,AX
MOVSI,50H;建立被加数偏移地址指针
MOVAL,[SI];取出待拆分数据送AL
ANDAL,0FH;屏蔽高4位,分离出低4位
MOV[SX+1],AL;存低4位
MOVAL,[SI];再次取出待拆分数据送AL
MOVCL,4;建立逻辑右移次数计数器
SHRAL,CL;逻辑右移4位分离出高4位
MOV[SI+2],AL;存高4位
HLT
P1406.3分支程序
例6.3计算AX-BX的绝对值
例6.3程序1P141程序有错
CLC;该指令可省
SUBAX,BX;应改用CMP比较指令
JCAA
MOVDI,2800H;建立数据指针
MOV[DI],AX;存结果
HLT
AA:
SUBBX,AX;由于前面执行SUB指令时操作数AX已被破坏。
或改
;为:
NEGAX
MOVDI,2800H;因此得不到正确结果
MOV[DI],BX;MOV[DI],AX
HLT
例6.3程序2
MOVDI,2800H;建立数据指针
CMPAX,BX;两数比较
JCAA;若AX小于BX则转AA
SUBAX,BX;计算两数之差
MOV[DI],AX;存结果
HLT
AA:
SUBBX,AX
MOV[DI],BX
HLT
例6.3程序3
MOVDI,2800H;建立数据指针
SUBAX,BX;两数相减
JCAA;若AX小于BX则转AA
SUBAX,BX;计算两数之差
MOV[DI],AX;存结果
HLT
AA:
NEGAX
MOV[DI],AX
HLT
例6.4从71H外设输入一个数据M,若M小于10则向73H外设输出00H,若M大于20则向73H外设输出0FFH,否则向73H外设输出88H。
START:
INAL,71H;从71H外设读入数据
CLC;该指令可省,因下一条指令CMPAL,10能够影响标志!
!
!
CMPAL,10;判断是否小于10
JCLP1;若小于10则转LP1
CMPAL,20;判断是否小于20
JCLP2;若小于20则转LP2
MOVBL,0FFH;建立M大于20时的输出数据
LP3:
OUT73H,BL;将数据输出到73H外设
HLT
LP1:
MOVBL,0H;建立M小于10时的输出数据
JMPLP3
LP2:
MOVBL,88H;建立中间输出数据
JMPLP3
P1436.4循环程序
例6.5求两个8字节数之和,两数自10050H起连续存放,并将求和结果存入其后。
程序1见P144下面
程序2按字(16位)求和
START:
M