微机原理与接口技术串讲2

上传人:re****.1 文档编号:568774164 上传时间:2024-07-26 格式:PPT 页数:78 大小:878.50KB
返回 下载 相关 举报
微机原理与接口技术串讲2_第1页
第1页 / 共78页
微机原理与接口技术串讲2_第2页
第2页 / 共78页
微机原理与接口技术串讲2_第3页
第3页 / 共78页
微机原理与接口技术串讲2_第4页
第4页 / 共78页
微机原理与接口技术串讲2_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《微机原理与接口技术串讲2》由会员分享,可在线阅读,更多相关《微机原理与接口技术串讲2(78页珍藏版)》请在金锄头文库上搜索。

1、 微机原理与接口技术-串讲1微机原理课程内容微型计算机原理(1、2章)微机组成和基本原理,运算基础, CPU内部结构 软件应用(3、4章)CPU指令系统、伪指令汇编语言编程和调试硬件应用(6、7、8、9、10、11章)中断技术接口技术接口技术(侧重应用,学会常用接口芯片)2微机原理课程内容主要的接口芯片 可编程中断控制器8259A 第七章可编程计数可编程计数/定时器定时器8253 第八章第八章可编程并行接口可编程并行接口8255A 第九章第九章 A/D模数、模数、D/A数模转换芯片数模转换芯片 第十一章第十一章3第一章第一章 基本要求基本要求1、微型计算机运算基础、微型计算机运算基础掌握不同计

2、数制数及其相互转换,掌握计算机中数掌握不同计数制数及其相互转换,掌握计算机中数值数据的原码、反码、补码的表示方法,了解信息值数据的原码、反码、补码的表示方法,了解信息编码方法和计算机中数的运算方法编码方法和计算机中数的运算方法2. 微型计算机的组成和基本工作原理微型计算机的组成和基本工作原理掌握计算机系统各组成部分的构成和作用、指令掌握计算机系统各组成部分的构成和作用、指令(程序)的执行过程及(程序)的执行过程及IP的作用的作用4不同数制不同数制十进制(后缀D或者省略)例如231.1123二进制 (后缀B) 例如1101.101B八进制(后缀Q或者O)例如625.77Q十六进制(后缀H)例如3

3、7CF.56H BCD码(二进制编码十进制) 压缩型/非压缩型十进制十进制二进制二进制十六进制十六进制十进制十进制二进制二进制十六进制十六进制000000810008100011910019200102101010A300113111011B401004121100C501015131101D601106141110E701117151111F5相互相互转换其它数制十进制按权展开按权展开:数值各位数字与对应权值的乘积之和XnXn-1X1X0X-1X-m XiPi (P为数制基数)1101.011B13.375 ,6C2.A1H 1730.6289 十进制其它数制分整数和小数两部分计算整数(除基

4、取余除基取余) 商为0,余数从低往高小数(乘基取整乘基取整) 乘积小数部分为0,整数从高往低6相互相互转换举例97.68751100001.1011B7相互相互转换八进制/十六进制二进制每位八/十六进制数用3/4位二进制数表示EFB.3DAH1110 1111 1011.0011 1101 1010B 小数点分别向左向右划分,3/4位一组0001 1010 0101 1111.1000 0101 1100B1A5F.85CH 十进制BCD码(压缩型/非压缩型)23=0010 0011 BCD 23=00000 BCD二进制BCD码二进制十进制BCD码 二进制十进制BCD码8二二进制数运算制数运

5、算规则二进制数运算规则二进制数运算规则算术运算加法、减法、乘法、除法逻辑运算或、与、非、异或9数据表示方法数值数据原码1个二进制位表示符号,数值保持原有形式 正数:0;负数:1反码正数与原码相同,负数符号位不变,数值位按位求反补码(简化硬件,有无符号数,加减法)正数与原码相同,负数为反码加1 公式公式真值补码 X补 = 1000 0010B,求X(126)计算机内以补码方式对数据进行存储和运算溢出问题:超出数的存储范围8位补码 -128,+127 16位补码 -32768,+32767 判断溢出:直接看十进制运算结果10数据表示方法字符数据字符数据表示方法 英文:ASCII码数字数字09(30

6、H)英文字母英文字母AZ(41H) az(61H)回车(回车(0DH),换行(),换行(0AH)中文:GB2312-80国标码11微机系统组成12微机微机组成成微处理器(CPU)运算器:算术逻辑运算控制器:取指、译码,控制信号寄存器存储器(M)存储数据和程序存储单元,地址输入/输出接口(IO接口)用于CPU(或存储器)与外设之间的信息交换系统总线:传递信息的公共通路地址总线,数据总线和控制总线 13微机基本工作原理工作流程取指(IPIP1)、译码和执行14第二章基本要求8086微处理器内部结构与微机系统的组成微处理器内部结构与微机系统的组成掌握存贮器分段的概念及段寄存器及地址指针寄存器的隐含掌

7、握存贮器分段的概念及段寄存器及地址指针寄存器的隐含搭配关系、逻辑地址与物理地址的关系搭配关系、逻辑地址与物理地址的关系掌握奇偶存贮体的概念及数据在存贮体中存放形式和存取过掌握奇偶存贮体的概念及数据在存贮体中存放形式和存取过程(对准字)、堆栈的使用特点程(对准字)、堆栈的使用特点掌握最小系统的组成,了解地址锁存器的作用和地址数据总掌握最小系统的组成,了解地址锁存器的作用和地址数据总线分时复用的概念,掌握线分时复用的概念,掌握8086 CPU最小模式下的读最小模式下的读/写时序。写时序。158086 CPU组成指令执行部件EU和总线接口单元BIU 实现并行操作BIU取指令、读操作数、送结果(外部操

8、作 M/IO)指令队列(6字节)出现2个空字节时,自动取指8086指令代码长度?EU从指令队列中取指令译码执行(不必访问M或IO)节省取指和读指时间16存储器分段存储器分段使用:存储内容不同代码段:用于存储程序的二进制代码数据段:用于存储数据,如变量附加段:也用于存储数据堆栈段:用于存储临时数据或变量,先进后出存储单元地址物理地址:实际地址20位地址总线,例如12340H8086寻址空间:1MB逻辑地址段基址:段偏移量(16位段地址:16位偏移地址)17物理地址和逻辑地址物理地址和逻辑地址对应关系物理地址段基址 10H ( 16 )偏移地址1234H:5H1个物理地址可以用多个逻辑地址来表示一

9、个逻辑段的最大范围?(偏移地址范围?) 64KB隐含搭配关系隐含搭配关系 代码段: CS和IP 数据段: DS和SI, DI, BX 附加段: ES和DI 堆栈段: SS和SP, BP18奇偶存奇偶存储体体对准字和非对准字19堆堆栈的使用的使用先进后出, 初始SP=100H,堆栈容量?入栈SP=SP-2,R/M-SS:SP 出栈SS:SP - R/M,SP=SP+2 208086 CPU 双列直插 40个管脚最大/最小模式分时复用(21个信号)AD0AD15先输出地址,后传送数据 A19-16/S6-3先输出地址,后输出状态BHE/S78086GNDAD14AD13AD12AD11AD10AD

10、9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND最小模式(最大模式)VCC(5v)AD15AD16/S3AD17/S4AD18/S5AD19/S6BHE/S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT1)WR(LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET1234567891011121314151617181920403938373635343332313029282726252423222121最小模式系统配置1片8284A,作为时钟发生器3片8282或8

11、283,作为地址锁存器2片8286或8287,作为双向数据总线收发器 22MN/MX引脚接+5V,决定了8086工作在最小模式 ;8086 CPU的内部和外部时间基准信号由时钟输入信号CLK提供,CLK信号由外部时钟发生器8284产生;由于8086引脚限制,地址和数据分时复用一组总线。当CPU与存储器或者IO端口进行数据交换时,CPU首先发出地址总线,然后再发出控制信号并传输数据。因此需要对地址进行锁存,使在读/写周期内地址稳定。8086 CPU属于超大规模集成电路,驱动数据的负载能力有限,当挂在数据总线上的部件增加时,利用8286/8287小规模集成电路来增加驱动能力。 从上图可以看到808

12、6 CPU最小模式系统产生了20根地址总线、16根数据总线以及控制总线。在下图中看看这些总线是如何与存储器、I/O接口芯片相连的: 238086最小模式系最小模式系统配置配置24最小模式读写时序总线周期CPU通过数据总线对存储器或IO端口进行一次读或者写操作所需要的时间由几个时钟周期组成(标准的4个时钟周期,可插入等待周期Tw)M/IO读/写周期指令周期读取、译码和执行一条指令所需要的时间由几个总线周期组成时序不同操作下CPU引脚信号随时间变化情况时序图25存储器读总线周期CLK一个总线周期一个总线周期T1T2T3T4A19-16,BHES7-3A19-16/S6-3 BHE/S7AD15AD

13、0地址输出数据输入ALEM/IORDREADYDT/RDEN261、一个最基本的读总线周期包括4个T状态,在存储器和外设速度较慢时,在T3后面可以插入1个或几个等待状态TwT1的时候:2、(看图)M/IO信号在T1状态有效,当从存储器读取时, M/IO为高电平,有效电平一直保持到总线周期结束的T4状态。3、20位地址信号通过多路复用总线输出,高4位从A19/S6-A16/S3地址/状态线送出,低16位从AD15AD0地址/数据线送出。BHE是奇地址存储体的选通信号,BHE有效表示高8位数据线上的数据有效(偶存储体的选通信号为A0)。4、(看图)ALE引脚输出一个正脉冲作为地址锁存信号,ALE的

14、下降沿作为锁存器8282的选通信号,使地址锁存。5、(看图)DT/R输出低电平,表示数据从存储器中通过8286读入CPU。T2的时候:6、地址信号消失, A19/S6-A16/S3地址/状态线引脚上输出状态信心,指出当时正在使用的段寄存器及中断允许情况。低16位地址线进入高阻状态,等待读取数据(必须为高阻状态,若为高电平,从存储器中读入低电平,会出现问题)。这时BHE/S7输出状态信息S7,S7未定义实际意义。277、(看图)地址信号锁存后,RD信号有效,使得能从存储器中读出数据。8、(看图)数据要读入CPU,还需要DEN信号有效,作为8286的选通信号,是数据能通过8286传送。T3的时候9

15、、T3状态一开始,CPU检查READY信号,如果为低电平,表示存储器速度较慢,数据没有准备好,需要在T3和T4状态中插入Tw状态。CPU在每个Tw状态检查READY信号,若检测到高电平,则进入T4状态,否则继续插入Tw状态,在Tw期间,控制信号及状态信号都保持进Tw之前的状态。 10、READY信号为高电平,CPU读取输入的数据,数据传输完毕后进入高阻态。T4的时候11、读取数据后,数据从数据总线上撤除,各个控制信号和状态信号线进入无效状态,DEN、RD信号撤销。一个读总线周期结束。28总线周期插入等待时钟29I/O读总线周期(与M读不同)30存储器写总线周期(与M读不同)31IO写总线周期(

16、与IO读不同)32第三章基本要求8086微处理器的指令系统微处理器的指令系统了解指令代码的构成,熟悉各种寻址方式了解指令代码的构成,熟悉各种寻址方式掌握常用指令(数据传送指令,常用算术运算指令,掌握常用指令(数据传送指令,常用算术运算指令,逻辑运算和移位指令,控制转移类指令)逻辑运算和移位指令,控制转移类指令);指令对标志位的影响指令对标志位的影响33寻址方式址方式指令操作码操作数操作数的存放寄存器,存储器或I/O端口地址,立即数(一个8位或者16位的常数)寻址方式寄存器:寄存器寻址方式(速度最快)立即数:立即寻址方式(指令队列)存储器:直接寻址方式、寄存器间接寻址方式、寄存器相对寻址方式、基

17、址加变址寻址方式、相对基址加变址寻址方式其它IO端口寻址(IN/OUT),隐含寻址(AAA)34M寻址方式直接寻址方式MOV BX, 100H MOV AL, X(符号地址)物理地址(缺省搭配DS) 段超越前缀寄存器间接寻址方式EA(BX,BP,SI,DI)DS:BX, SI, DI SS:BP寄存器相对寻址方式MOV BX, 4000HSI 基址加变址寻址方式BX BPSI DI相对基址加变址寻址方式MOV AX, 200HBXSI 35指令系统指令书写格式地址标号: 助记符 操作数 ;注释 指令系统数据传送指令算术运算指令逻辑运算和移位指令字符串处理指令控制转移指令36数据数据传送指令送指

18、令MOV允许数据传送的途径PUSH/POPXCHGXLATIN/OUTLEA37算术运算指令减法SUBSBBDECNEGCMPDASAAS加法ADDADCINCDAAAAA38逻辑运算和移位指令逻辑运算指令NOT,AND(保留某几位,ASCII码-数字)TEST(判正负和奇偶),XOR算术逻辑移位指令SHL/SAL:乘2(40H,64,左移2次则溢出)SHR:逻辑右移,无符号数除2SAR:算术右移(保留符号位),有符号数除2CL循环移位ROL/RORRCL/RCRCL39串操作指令源串:DS SI 目的串:ES DIDF:控制处理方向(CLD 增加;STD 减小)SI、DI自动修改与重复指令R

19、EP配合使用40控制转移指令无条件转移指令JMP类型段内转移:偏移地址IP短转移(2字节指令),近转移(3字节指令)段间转移:CS、IP直接转移:直接给出目的地址间接转移:目的地址在R或M中组合(4种)过程调用和返回指令CALL RET返回地址入栈出栈IP / CS IP1234H:90 NEXT: 1234H:100 JMP SHORT NEXTCALL DWORD PTR BX返回地址入栈?子程序入口地址? 41控制转移指令条件转移指令直接标志转移指令间接标志转移 (CMP后)条件循环控制指令段内短转移,跳转距离段内短转移,跳转距离-128+127AAbove, BBelow, EEqua

20、l, GGreater than, Nnot ,LLess than42控制转移指令举例内存中X0DH,X1FFHMOV AL,X;CMP AL,X+1;JB NEXT;JL NEXT?XCHG AL,X1;MOV X,ALNEXT: 43判断MOV CS,AX MOV BX, BX MOV DS,12H MOV BX,A MOV AX, BXBPADD BX, SI ADD AL, BX ADD 100,AX SHL AX, 4IN AL, 0FFFFH44标志位影响45标志位影响算术运算指令5EH+3CH 0101 1110B + 0011 1100B = 1001 1010B(154)

21、ZF=0, AF=1, CF=0, SF=1,PF=1, OF=1 逻辑运算指令单操作数不影响双操作数CF和OF清0,ZF、SF、PF反映操作结果算术逻辑移位/循环移位指令CF, OF46第四章基本要求8086汇编语言程序设计汇编语言程序设计掌握汇编语言程序的编写、汇编、连接及运行掌握汇编语言程序的编写、汇编、连接及运行过程过程掌握常用指令、伪指令使用方法掌握常用指令、伪指令使用方法DOS功能调用方法功能调用方法掌握不同结构程序的设计方法掌握不同结构程序的设计方法了解常用汇编语言应用例子:数据块的显示、了解常用汇编语言应用例子:数据块的显示、排序、传送、比较、查询。排序、传送、比较、查询。47

22、汇编语言程序的执行汇编程序:指令伪指令MASM:8086系统常用的汇编程序编译:检查语法错误,生成二进制目标文件链接:把一个或多个目标文件、库文件合成一个可执行文件程序错误编译错误MASM运行错误调试工具Debug汇编语言源程序编译目标文件*.OBJ链接可执行文件 *.exeMASM.EXELINK.EXE48常用伪指令MASM表达式TYPE , LENGTH, SEG, OFFSET, SIZE数据定义DB, DW, DDDUPDW:取偏移地址DD:取偏移地址和段地址表达式赋值符号名 EQU 值段定义段名 SEGMENT 定位类型 组合类型 分类名逻辑段内容段名 ENDS 49常用伪指令段分

23、配语句ASSUME CS:段名, DS: 段名, SS: 段名, ES: 段名4种逻辑段中代码段必须定义CS:代码段的段基址自动装入CS寄存器中程序开始和结束语句ORGENDDATA SEGMENTORG 100H X1 DW X1,AB,1234H,$+2 X2 DB LENGTH X1DATA ENDS 50常用DOS子程序1号功能 键入1个字符并显示,字符的ASCII码存入AL中, 等待输入 2号功能在屏幕上显示1个字符,ASCII码送入DL寄存器6号功能DL=0FFH,键盘输入 ;不= ,则屏幕输出 JZ 无按键按下(ZF=1)8号功能类似1号调用,键入的字符不显示在屏幕上9号功能显示

24、字符串,DS:DX(字符串首地址),$字符结束4C号功能:返回DOS 51典型应用典型应用字符串移动、比较以及查找判断正副、奇偶及大小字符的输入与显示(不同数制及字符)举例 查找一个字符串中是否含有键入的值(1个字节),找到则显示FOUND,否则显示NOT FOUND;键入的值为奇数按照十六进制,偶数按照二进制显示INT 21H 8号功能,串操作(SCASB),CMP,INT 21H 9号功能,TEST,AND,SHR,INT 21H 2号功能,ROL,AND,INT21H 2号功能 52动态调试工具软件Debug DEBUGDOS提供的一个外部命令用于对程序进行动态调试主要功能-r 查看寄存

25、器值 -d 查看给定地址的存储器内容u 反汇编功能-g 连续执行-t -p(不进入子程序) 单步执行 -e 查看和修改存储器内容-q 退出 -d ds:0-u ds:053第六章基本要求输入与输出方法输入与输出方法掌握接口的概念,掌握接口所包含的常用信号线,掌握接口的概念,掌握接口所包含的常用信号线,了解接口的编址方法了解接口的编址方法掌握输入掌握输入/输出指令,熟悉基本的数据输入输出指令,熟悉基本的数据输入/输出输出方法方法54I/O接口的功能输入缓冲输入缓冲输出锁存输出锁存外设编址控制外设编址控制电平转换转换信息格式:A/D、D/A时序控制:同步可编程55I/O端口寻址I/O信息控制信息、

26、状态信息、数据信息I/O端口(Port)控制端口,状态端口,数据端口多个外设多个I/O接口电路多个I/O端口对端口进行编址给每一个端口(数据端口、状态端口、控制端口)进行编址就象给每个存储单元进行编址一样 两种编址方式存储器映象寻址(I/O 统一编址统一编址) I/O 端口单独编址单独编址 (专门I/O指令,64K端口地址) 56I/O端口地址译码方法将译码器接到地址总线,对地址进行译码200H207H未用地址线地址重叠57数据传送方式CPU与外设间的数据传送方式程序控制方式程序控制方式:由程序直接控制CPU与外设之间的数据传递 无条件传送方式查询传送方式中断方式中断方式DMA方式方式(Dir

27、ect Memory Access)前两种方式主要由软件实现,DMA方式主要由硬件实现58第七章基本要求掌握中断的概念及中断处理过程掌握中断的概念及中断处理过程掌握掌握8086系列微机的中断类型码、中断向量系列微机的中断类型码、中断向量表与中断服务程序的入口地址三者的关系表与中断服务程序的入口地址三者的关系中断向量的设置中断向量的设置中断优先级中断优先级了解中断服务程序的编写方法了解中断服务程序的编写方法了解可编程中断控制器了解可编程中断控制器8259A的结构的结构59中断中断CPU正在执行程序过程中,受到内部或外部事件的触发暂停正在执行的程序,转到一段为触发事件而编写的程序去执行该程序执行完

28、,再返回到被打断处继续执行中断服务程序入口地址中断服务程序的存放地址,由2字节的段地址和2字节的偏移地址组成中断向量、中断矢量 中断服务程序中断服务程序1中断服务程序中断服务程序1中断服务程序中断服务程序2中断服务程序中断服务程序2非预料事件非预料事件1非预料非预料事件事件1CPU执行流程执行流程非预料事件非预料事件2非预料非预料事件事件2608086中断源中断源的识别 8086有256个中断源,通过中断类型码进行识别中断类型码为一个8位的二进制数,范围:00HFFH除法错(00H) 单步(01H)NMI(02H)断点(03H)溢出(04H)INT N(N)INTR(由8259A给出中断类型码

29、)61中断优先级中断嵌套?受IF影响628086系统中断向量表中断程序入口地址表存储256类中断的中断服务程序入口地址共占用1KB位于内存00000003FFH的区域 中断类型号中断向量地址N44N,4N1IP4N+2, 4N+3CS63使用中断硬件连接8259A与外设、CPU正确连接 软件实现设置中断向量编写中断服务程序(了解)648259A级联3片8259管理?个中断源658259A中断响应过程发2个低电平INTA优先级管理完全嵌套方式优先级循环方式(自动,特殊)中断屏蔽方式(普通,特殊)特殊完全嵌套优先级顺序主片、从片完全嵌套方式主片特殊完全嵌套方式,从片完全嵌套方式66中断向量设置方法

30、指令直接设置串操作指令(STOS)MOV指令(77H, INT77H)调用DOS功能INT21H 25H AL中断类型号 DS:DX = 中断服务程序入口地址取中断向量指令直接设置串操作指令(LODS)MOV指令调用DOS功能INT21H 35H AL中断类型号 ES:BX = 中断服务程序入口地址67MOV AX, 0MOV ES, AXMOV BX, 77H*4MOV AX,OFFSET INT77H;存放偏移地址MOV ES:WORD PTRBX, AXMOV AX, SEG INT77HMOV ES:WORD PTRBX+2, AX MOV AL, 77HMOV AH,25HMOV D

31、X,OFFSET INT77H;存放偏移地址MOV AX, SEG INT77HMOV DS, AX INT 21H 68常用接口芯片基本要求掌握掌握8253的工作方式的工作方式0、2、3特点及应用特点及应用(初值设置)(初值设置)掌握掌握8255A的工作方式的工作方式0及利用及利用8255A进行进行键盘识别、显示的方法键盘识别、显示的方法698253SC1SC0RW1M2M1BCDRW0D7D6D5D4D3D2D1D0M000: 通道001: 通道110:通道211: 无效0: 二进制计数1: BCD码计数000: 方式0001: 方式1 10: 方式2 11: 方式3100: 方式4101

32、: 方式500: 计数器当前值锁存01: 只读/写计数器低字节10: 只读/写计数器高字节11: 先读/写计数器低字节,后读/写高字节二进制计数,二进制计数,00000000FFFFHFFFFH,0000H0000H最大值,最大值,6553665536BCDBCD码计数,码计数,0000000099999999, 00000000最大值,最大值,1000010000n计数时间输入时钟脉冲周期计数时间输入时钟脉冲周期TcTc预置的计数初值预置的计数初值N N70工作方式掌握方式掌握方式0 0、方式、方式2 2以及方式以及方式3 3方式方式0 0:计数结束中断方式计数结束中断方式只计一遍数,可提供

33、中断信号(高电平)只计一遍数,可提供中断信号(高电平)方式方式2 2:分频方式:分频方式计数器连续工作,输出固定频率的脉冲计数器连续工作,输出固定频率的脉冲方式方式3 3:方波方式:方波方式输出周期性方波信号输出周期性方波信号N/2(N/2(初值为偶数,方波初值为偶数,方波) ),(N(N1)/2:(N-1)/2(1)/2:(N-1)/2(初初值为奇数,近似方波值为奇数,近似方波) )71连接使用定时器连接使用把一个定时器的输出作为另一个定时器的输入,来增大定时周期初值等于几个定时器初值的连乘初值初值1初值2初值3连接使用两个定时器,则定时周期最大可扩大 ?倍72初值设置举例举例738253的4个端口地址分别为310H, 312H, 314H和和316H 通道0工作于方式3,为方波发生器。GATE0接5V,计数初值为N0=1MHz/2kHz=500。 MOVDX, 316HMOVAL, 0011 0111BOUTDX, ALMOVDX, 310HMOVAL, 00HOUTDX, ALMOVAL, 05HOUTDX, AL 748255A外设外设3个个8位并位并行端口行端口75控制字76后续课程和实验课程第十一章 AD/DA 重要、实用的接口芯片实验(重点掌握重点掌握)排序十进制加法8255数码管显示ADDA综合性应用地址译码器,8253,8255,AD,DA77谢谢!78

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号