C结构及原理PPT学习教案_第1页
C结构及原理PPT学习教案_第2页
C结构及原理PPT学习教案_第3页
C结构及原理PPT学习教案_第4页
C结构及原理PPT学习教案_第5页
已阅读5页,还剩96页未读 继续免费阅读

下载本文档

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

文档简介

1、会计学1C结构及原理结构及原理2.0 2.0 微型计算机知识微型计算机知识2.0.1 2.0.1 微型计算机功能部件微型计算机功能部件 一、微型计算机基本组成一、微型计算机基本组成 图 1.1 微型计算机的基本组成 第1页/共101页算术逻辑部件ALU指令寄存器译码器控制电路通用寄存器组PC 程序计数器SP 堆栈指示器变址寄存器地址缓冲器标志寄存器累加器暂存器控制信号地址总线数据 缓冲器数据 总线 CPU结构框图第2页/共101页 二、微型计算机功能部件二、微型计算机功能部件1算术逻辑单元算术逻辑单元ALU 运算器的核心部件,执行算术运算、逻辑运算、移位运算器的核心部件,执行算术运算、逻辑运算

2、、移位、比较等各种数据处理的操作、比较等各种数据处理的操作。nCPU微型计算机的核心部件微型计算机的核心部件CPU由运算器、控制器组成。由运算器、控制器组成。 运算器进行数据分析、计算和处理。运算器进行数据分析、计算和处理。运算器运算器算术逻辑单元算术逻辑单元ALUALU,累加器,累加器A ,A ,寄存器组寄存器组, ,标志寄存器标志寄存器F,F,二二十进制调整电路等组成十进制调整电路等组成第3页/共101页2寄存器组寄存器组n1)工作寄存器工作寄存器(通用寄存器通用寄存器)用来暂存用来暂存ALU待处理的数据和中间结果。待处理的数据和中间结果。(一一) 运算器运算器n2)特殊功能寄存器特殊功能

3、寄存器SFR(专用寄存器专用寄存器)规定了特殊用途的寄存器,其内容会影响计算机的规定了特殊用途的寄存器,其内容会影响计算机的工作方式和过程工作方式和过程。n3. 累加器累加器(Accumulator)使用最频繁的寄存器,配合使用最频繁的寄存器,配合ALU进行各种数据处理进行各种数据处理。运算时,一个操作数来自运算时,一个操作数来自A,另一个操作数可来自另一个操作数可来自CPU内部的工作寄存器,运算结果仍送回内部的工作寄存器,运算结果仍送回A。第4页/共101页4.标志寄存器标志寄存器标志寄存器标志寄存器F(Flag)F(Flag)又称状态寄存器,用来存放又称状态寄存器,用来存放ALUALU运算

4、结果的状态。例如溢出运算结果的状态。例如溢出OVOV、进位、进位C C、辅助进位辅助进位ACAC、奇偶、奇偶P P、结果为零、结果为零Z Z等。等。5.5.二二十进制调整十进制调整二二十进制调整电路十进制调整电路, ,对对BCDBCD码运算结果进行调整码运算结果进行调整。(一一) 运算器运算器第5页/共101页(二二) 控制器控制器n1.1.指令部件:指令部件:读取程序指令、指令译码、修改程序指针读取程序指令、指令译码、修改程序指针。n1)程序计数器程序计数器 PC:存放当前指令地址。:存放当前指令地址。CPU执行程序时,先按执行程序时,先按PC给出的地址到存储器取给出的地址到存储器取一条指令

5、,一条指令,PC自动加自动加1。CPU执行完一条指令,再到执行完一条指令,再到存储器取下一条指令,存储器取下一条指令,。处理程序指令,并协调各逻辑部件按一定时序工作处理程序指令,并协调各逻辑部件按一定时序工作。第6页/共101页 执行调用子程序或发生中断时,执行调用子程序或发生中断时,CPUCPU会自动将当前会自动将当前 PCPC值压入堆栈,将子程序入口地址或中断入口地址值压入堆栈,将子程序入口地址或中断入口地址装入装入PCPC;子程序返回或中断返回时,恢复原有被压;子程序返回或中断返回时,恢复原有被压入堆栈的入堆栈的PCPC值,继续执行原顺序程序指令。值,继续执行原顺序程序指令。程序计数器程

6、序计数器PCPC PCPC不属于特殊功能寄存器,不可访问,在物理结构上不属于特殊功能寄存器,不可访问,在物理结构上是独立的。是独立的。 PC PC是一个是一个1616位的地址寄存器,用于存放将要从位的地址寄存器,用于存放将要从ROMROM中读中读出的下一字节指令码的地址,因此也称为地址指针。出的下一字节指令码的地址,因此也称为地址指针。 PC PC的基本工作方式有:的基本工作方式有: 自动加自动加1 1。CPUCPU从从ROMROM中每读一个字节,自动执行中每读一个字节,自动执行 PC+1PCPC+1PC; 执行转移指令时,执行转移指令时,PCPC会根据该指令要求修改下一次会根据该指令要求修改

7、下一次 读读ROMROM新的地址;新的地址;第7页/共101页n程序计数器具有三种功能:程序计数器具有三种功能:n复位功能:复位功能:通电进入初始状态,通电进入初始状态,PCPC内容自动清零内容自动清零。n计数功能:计数功能:每取指令代码一个字节,每取指令代码一个字节, PCPC自动加自动加1 1。n直接置位功能:直接置位功能:直接接受内部总线送来的数据。直接接受内部总线送来的数据。n2) 2) 指令寄存器指令寄存器IR IR :暂存当前指令。暂存当前指令。指令操作码送指令译码器。指令操作码送指令译码器。n3) 3) 指令译码器指令译码器ID ID :将每条:将每条指令译码变成控指令译码变成控

8、制电平制电平(二二) 控制器控制器第8页/共101页(二二) 控制器控制器nCPU执行程序的简要过程:执行程序的简要过程:1)PC给出当前指令的存储地址给出当前指令的存储地址。n2. 时序部件时序部件时钟和内部分频电路。时钟信号经过分频,与时钟和内部分频电路。时钟信号经过分频,与指令译码信号组合,形成一定节拍的时序信号,控制各指令译码信号组合,形成一定节拍的时序信号,控制各逻辑部件协调工作。逻辑部件协调工作。PC=程序存储器程序存储器地址地址 程序代码程序代码0000H 指令代码指令代码1 0001H 指令代码指令代码2 0002H 指令代码指令代码3 N 指令代码指令代码n PC=PC=2)

9、CPU到存储器取指令,到存储器取指令,PC自动加自动加13)指令译码器对指令译码,指令译码器对指令译码,CPU执行指令。执行指令。4)CPU到存储器取指令,到存储器取指令,PC=PC+1。5)CPU执行下一条指令执行下一条指令, 指令代码 i 指令代码 i指令寄存器指令寄存器第9页/共101页三、三、存储器与读写操作存储器与读写操作n位位 b (bit):一个二进制位,信息最小单位。:一个二进制位,信息最小单位。n字节字节 B (Byte):8位为一个字节。位为一个字节。n字长字长 W (Word Length):一个字包含的二进制位数:一个字包含的二进制位数。(一一) 存储器基本信息单位存储

10、器基本信息单位(二二)存储器结构存储器结构存储器功能存储器功能:存放程序和数据等信息:存放程序和数据等信息。存储内容存储内容:程序或数据的二进制代码:程序或数据的二进制代码。存储地址存储地址:存储器每个单元的位置编:存储器每个单元的位置编号号存储器容量存储器容量:指存储单元的多少。:指存储单元的多少。如存储器容量为如存储器容量为1KB = 10248位位。1KB存储器存储器地址地址 存储内容存储内容 0 10011010 1 011010111023 10100111第10页/共101页(三三)存储器读写操作存储器读写操作n存储器存储器读读: CPU从存储器中取出信息。从存储器中取出信息。n存

11、储器存储器写写: CPU将信息存入存储器将信息存入存储器。1KB存储器存储器地址地址 存储内容存储内容 0 10011010 1 011010111023 10100111 CPU 地址内容读写控制n存储器的存储器的读写操作读写操作:2.2.发出读写控制时序发出读写控制时序信号,对选定单元信号,对选定单元进行读或写进行读或写。1 1.CPU.CPU先送出一个确定的单元地址给存储器先送出一个确定的单元地址给存储器第11页/共101页(四四) 半导体存储器半导体存储器RAM:随机读写存储器。随机读写存储器。能方便读出和改写信息,但失电后信息将不复能方便读出和改写信息,但失电后信息将不复存在。存在。

12、RAM常用作数据存储器,暂存各种现场数据常用作数据存储器,暂存各种现场数据、运算结果和正在调试的程序、运算结果和正在调试的程序。ROM:只读存储器。只读存储器。工作时从工作时从ROM中读出信息,不能随意改写。断中读出信息,不能随意改写。断电后信息不会丢失。电后信息不会丢失。ROM常用作程序存储器,存放已常用作程序存储器,存放已调试好的固定程序和常数调试好的固定程序和常数。程序存储器:程序存储器:存放程序指令代码。存放程序指令代码。每个指令周期每个指令周期CPUCPU自动对程序存储器读操作自动对程序存储器读操作。数据存储器:数据存储器:存放待处理数据。存放待处理数据。数据存储器读写操作发生在数据

13、存储器读写操作发生在CPU执行程序的过程执行程序的过程中中。第12页/共101页(1 1) 堆栈的含义堆栈的含义堆栈:堆栈:是读写存储器是读写存储器RAMRAM中的一个特殊区域,在堆栈中的一个特殊区域,在堆栈 段内,按照段内,按照“先进后出先进后出”(First First In and Last In and Last Out Out,缩写为,缩写为 “FILOFILO”) )的方式保存的方式保存数据。数据。作用:作用:存放断点地址或暂存数据存放断点地址或暂存数据 n 例如:调用子程序的过程中要保护现场、保留断例如:调用子程序的过程中要保护现场、保留断点点 地址;返回主程序前,要恢复现场、返

14、回断地址;返回主程序前,要恢复现场、返回断点点地址。地址。第13页/共101页堆栈有两种操作方式:堆栈有两种操作方式:n压栈:压栈:将数据送入堆栈; PUSHn弹出:弹出: 把堆栈内容取出。POP堆栈指针堆栈指针SP(Stack Pointer):是一个专用地址寄存器,它始终指向栈顶(即当前存取的堆栈单元地址)。n执行压栈操作,则(SP)=(SP)+1,SP指向新的栈顶;n执行弹出操作,则(SP)=(SP)-1,SP指向新的栈顶。(2)堆栈操作与堆栈指针)堆栈操作与堆栈指针第14页/共101页 在使用堆栈之前,先给在使用堆栈之前,先给SP赋值,以规定堆栈的起赋值,以规定堆栈的起始位置,称为栈底

15、。始位置,称为栈底。 在在MCS-51中执行指令:中执行指令:MOV SP,#60H即设即设SP=60H(60H为栈底)为栈底)当数据压入堆栈后,当数据压入堆栈后,SP自动加自动加1,即,即RAM地址单元地址单元加加1以指出当前栈顶位置。以指出当前栈顶位置。8051的这种堆栈结构属于向的这种堆栈结构属于向上生长型的堆栈上生长型的堆栈(另一种属于向下生长型的堆栈另一种属于向下生长型的堆栈)。 8051的堆栈指针的堆栈指针SP是是个双向计数器。在压栈时个双向计数器。在压栈时SP内容自动增值,出栈时自动减值,存取信息必须按内容自动增值,出栈时自动减值,存取信息必须按着着“后进先出后进先出”或或“先进

16、后出先进后出”的原则。的原则。 堆栈的操作示意图见下图:堆栈的操作示意图见下图:,第15页/共101页堆栈的压入与弹出示意图堆栈的压入与弹出示意图第16页/共101页主程序断点1断点2断点3子程序1子程序2子程序3断点地址1122H断点地址3344H断点地址5566H中中 断断 嵌嵌 套套 过过 程程 以下图为例,说明堆栈是如何按以下图为例,说明堆栈是如何按照照“先进后出先进后出”工作方式工作的?工作方式工作的?第17页/共101页主程序1122556633441122556633441122断点1断点2断点3子程序1子程序2子程序3断点地址1122H断点地址3344H断点地址5566HSP6

17、0H66H SP62H 66H60HSP66H60H 66H60HSP64Ha)执行主程序时b)执行子程序1时c)执行子程序3时d)执行子程序2时图:中断嵌套过程图:中断嵌套过程第18页/共101页四、四、 I/O接口接口I/O接口是联系微型计算机与外部设备的桥梁。每一接口是联系微型计算机与外部设备的桥梁。每一台外部设备必须通过台外部设备必须通过I/O接口与计算机连接接口与计算机连接。微型计算机有多种功能微型计算机有多种功能I/O接口:接口:PIO:并行:并行 I/O接口。接口。SIO:串行:串行 I/O接口。接口。CTC:定时计数器。:定时计数器。ADC、DAC:A/D、D/A转换器。转换器

18、。 INT:中断输入口中断输入口。1.3.2 微型计算机结构特点微型计算机结构特点微型计算机由大规模集成电路组成,微型机应用系微型计算机由大规模集成电路组成,微型机应用系统一般也采用特定功能的大规模集成电路器件和组件。统一般也采用特定功能的大规模集成电路器件和组件。第19页/共101页总线总线(Bus):微型计算机各功能部件的连接线,各功能微型计算机各功能部件的连接线,各功能部件之间的公共信息通道。部件之间的公共信息通道。总线宽度总线宽度:总线上能并行传送的二进制位数。:总线上能并行传送的二进制位数。内部总线:内部总线:CPU或单片机芯片内部各逻辑部件之间的信或单片机芯片内部各逻辑部件之间的信

19、息传输线。通常为单总线结构。息传输线。通常为单总线结构。外部总线:外部总线:指微型机各功能芯片之间的信息传输线。指微型机各功能芯片之间的信息传输线。CPU或单片机芯片应用系统的主要外部引线。或单片机芯片应用系统的主要外部引线。系统总线:系统总线:微机系统各逻辑功能板卡之间的信息传输线微机系统各逻辑功能板卡之间的信息传输线。通常为统一标准总线。通常为统一标准总线。2.0.2 微型计算机的结构特点微型计算机的结构特点1、 微型机的总线结构微型机的总线结构第20页/共101页数据总线(数据总线(DBDB)-双向,用于传输数据。双向,用于传输数据。 地址总线(地址总线(ABAB)-单向,用于传送地址信

20、息。单向,用于传送地址信息。控制总线(控制总线(CBCB)-双向,用于传输控制信号。双向,用于传输控制信号。 总线结构图总线结构图第21页/共101页微型计算机总线的主要信号线:微型计算机总线的主要信号线:(二) 数据总线数据总线 DB双向三态。传送程序和数据的二进制代码。双向三态。传送程序和数据的二进制代码。数据总线宽度一般与微型机的字长相同数据总线宽度一般与微型机的字长相同。(三三) 控制总线控制总线CB单向三态。传送各种控制脉冲、联络、状态电平等信单向三态。传送各种控制脉冲、联络、状态电平等信号,号,使存储器、使存储器、I/OI/O接口等部件协调工作。接口等部件协调工作。控制总线的根数根

21、据微型计算机控制功能的需要而定控制总线的根数根据微型计算机控制功能的需要而定。(一) 地址总线地址总线 AB单向三态。传送存储器和单向三态。传送存储器和 I/O接口的地址信息。接口的地址信息。地址总线宽度决定计算机寻址空间地址总线宽度决定计算机寻址空间(最大寻址最大寻址)。1KB存储器地址 存储内容 0 10011010 1 011010111023 10100111 CPU 地址内容读写控制MCS-51有有16根地址总线,寻址空间根地址总线,寻址空间216 = 64K=65536第22页/共101页2、 单片机的结构特点单片机的结构特点(一一)高可靠性、高抗干扰能力高可靠性、高抗干扰能力(二

22、二)配置灵活配置灵活(三三)丰富的位处理功能丰富的位处理功能(四四)功能齐全功能齐全(五五)系统设计简便系统设计简便一块芯片集成了一块芯片集成了CPU、存储器和、存储器和I/O接口等功能部接口等功能部件。件。内部总线为单总线结构,地址、数据和控制三种信内部总线为单总线结构,地址、数据和控制三种信息分时占用内部总线。息分时占用内部总线。外部总线用于连接片外扩展存储器和外部总线用于连接片外扩展存储器和I/O接口芯片。接口芯片。单片机的芯片引脚为多功能引脚,以节省芯片引脚单片机的芯片引脚为多功能引脚,以节省芯片引脚。第23页/共101页 2.0.3 微型计算机软件微型计算机软件(二)汇编语言汇编语言

23、 与机器语言指令一一对应的英文单词缩写,称为指令与机器语言指令一一对应的英文单词缩写,称为指令助记符。汇编语言编写的程序称为汇编语言程序。助记符。汇编语言编写的程序称为汇编语言程序。MCS-51两个寄存器相加汇编语言指令:两个寄存器相加汇编语言指令:ADD AADD A,R0R0 (三)高级语言高级语言语句和语法接近人们习惯的表达方式。高级语言编语句和语法接近人们习惯的表达方式。高级语言编写的程序称为高级语言源程序写的程序称为高级语言源程序。(一)机器语言机器语言指令的二进制代码,又称指令的二进制代码,又称指令代码指令代码。机器语言指。机器语言指令组成的程序称目标程序。令组成的程序称目标程序。

24、M C S - 5 1 两 个 寄 存 器 相 加 的 机 器 语 言 指 令两 个 寄 存 器 相 加 的 机 器 语 言 指 令 0010100000101000 1 、 计算机语言计算机语言第24页/共101页2、不同计算机语言的应用、不同计算机语言的应用源程序通过编译得到机器能执行的目标程序源程序通过编译得到机器能执行的目标程序。汇编语言程序可以高效率利用计算机资源,目标程序汇编语言程序可以高效率利用计算机资源,目标程序占用内存少,执行速度快,适合于自动测控系统反应快占用内存少,执行速度快,适合于自动测控系统反应快速、结构紧凑的要求。实际应用中,常与速、结构紧凑的要求。实际应用中,常与

25、C语言配合使用语言配合使用。高级语言程序容易掌握,通用性好,但编译程序系统高级语言程序容易掌握,通用性好,但编译程序系统开销大,目标程序占用内存多,且执行时间比较长,多开销大,目标程序占用内存多,且执行时间比较长,多用于科学计算、工业设计、企业管理用于科学计算、工业设计、企业管理。源程序目标程序编译程序第25页/共101页2.0.4 微型计算机的工作原理微型计算机的工作原理1. 冯冯 诺依曼存储程序工作原理诺依曼存储程序工作原理n数据和程序以二进制代码的形式不加区别地存放在存储器中,数据和程序以二进制代码的形式不加区别地存放在存储器中,存放位置由地址指定,地址码也是二进制形式存放位置由地址指定

26、,地址码也是二进制形式n控制器根据存放在存储器中的指令序列(即程序)工作,并由控制器根据存放在存储器中的指令序列(即程序)工作,并由一个程序计数器(一个程序计数器(PCPC)控制指令的执行。控制器具有判断能力)控制指令的执行。控制器具有判断能力,能够根据计算结果选择不同的动作流程,能够根据计算结果选择不同的动作流程存储程序工作原理是指把程序存储在计算机内,使计算机能像快速存储程序工作原理是指把程序存储在计算机内,使计算机能像快速存取数据一样地快速存取组成程序的指令。为实现控制器自动存取数据一样地快速存取组成程序的指令。为实现控制器自动连续地执行程序,必须先把程序和数据送到具有记忆功能的存连续地

27、执行程序,必须先把程序和数据送到具有记忆功能的存储器中保存起来,然后给出程序中第一条指令的地址,控制器储器中保存起来,然后给出程序中第一条指令的地址,控制器就可依据存储程序中的指令顺序周而复始地取指令、译码、执就可依据存储程序中的指令顺序周而复始地取指令、译码、执行,直到完成全部指令操作为止,即控制器通过指令流的串行行,直到完成全部指令操作为止,即控制器通过指令流的串行驱动实现程序控制驱动实现程序控制第26页/共101页2. 微型计算机的工作过程微型计算机的工作过程n微型计算机的工作过程就是执行程序的过程,而程序由指令序微型计算机的工作过程就是执行程序的过程,而程序由指令序列组成,因此,执行程

28、序的过程,就是执行指令序列的过程,列组成,因此,执行程序的过程,就是执行指令序列的过程,即逐条地从存储器中取出指令并完成指令所指定的操作。即逐条地从存储器中取出指令并完成指令所指定的操作。n由于由于执行每一条指令,都包括执行每一条指令,都包括取指、译码和执行取指、译码和执行三个基本步骤三个基本步骤,所以,微型计算机的工作过程,也就是不断地取指令、译码,所以,微型计算机的工作过程,也就是不断地取指令、译码和执行的过程,直到遇到停机指令时才结束机器的运行。和执行的过程,直到遇到停机指令时才结束机器的运行。取指令,PC值加1停机?译码并执行结束YN第27页/共101页2. 微型计算机的工作过程微型计

29、算机的工作过程n 下面我们简单说明微处理器的基本工作过程。计算机的工作下面我们简单说明微处理器的基本工作过程。计算机的工作过程是不停的取指令和执行指令的过程,实际上,这个过程是由过程是不停的取指令和执行指令的过程,实际上,这个过程是由CPUCPU完成的。机器语言程序的指令(二进制代码)是按顺序存放完成的。机器语言程序的指令(二进制代码)是按顺序存放在存储器中的。除非遇到转移指令,否则顺序执行,在存储器中的。除非遇到转移指令,否则顺序执行,CPUCPU加电工加电工作后,程序计数器作后,程序计数器PCPC被置入程序的启动地址(这是硬件设计保证被置入程序的启动地址(这是硬件设计保证的)。的)。PCP

30、C中的地址送到地址总线上,并发出相应的控制信号从存中的地址送到地址总线上,并发出相应的控制信号从存储器相应单元取指令,送入指令寄存器,通过指令译码器对指令储器相应单元取指令,送入指令寄存器,通过指令译码器对指令译码分析后,就能确定指令的长度(以字节为单位)。对多字节译码分析后,就能确定指令的长度(以字节为单位)。对多字节指令,将分几次取入。指令,将分几次取入。PCPC的内容增加相应的值,并重复上述过程的内容增加相应的值,并重复上述过程。无条件转移指令就是用该指令决定的地址取代。无条件转移指令就是用该指令决定的地址取代PCPC中的内容(下中的内容(下一条指令的地址),从而改变正常的执行顺序。条件

31、转移指令是一条指令的地址),从而改变正常的执行顺序。条件转移指令是根据前面指令执行的结果(即由前面的指令所决定的处理器当前根据前面指令执行的结果(即由前面的指令所决定的处理器当前状态)来决定是否取代状态)来决定是否取代PCPC的内容。如减法指令后跟有一条的内容。如减法指令后跟有一条“为零为零转移转移”指令,执行这条转移指令时,需测试指令,执行这条转移指令时,需测试PSWPSW中零标志位。若中零标志位。若减法结果不为零,继续按原指令序列执行下一条指令;若减法结减法结果不为零,继续按原指令序列执行下一条指令;若减法结果为零,从所转移的目标地址开始执行新的指令序列。循环常用果为零,从所转移的目标地址

32、开始执行新的指令序列。循环常用条件转移指令完成。有些微机中还有把计数和测试及条件转移指条件转移指令完成。有些微机中还有把计数和测试及条件转移指令组合在一起的指令。令组合在一起的指令。第28页/共101页3. 微型计算机的工作过程微型计算机的工作过程 (8051) 计算计算8+4=?存储器地址存储器地址 对应的机器指令对应的机器指令 汇编语言程序汇编语言程序对应的操作对应的操作 0000H 01110100 (74H) MOV A , #08H; 将立即数将立即数08传送到累加器传送到累加器A中中 00001000 (08H) 0002H 00100100 (24H) ADD A , #04H;

33、 计算两个数的和,结果存放到计算两个数的和,结果存放到A中中 00000100 (04H) 0004H 00000010 (02H) LJMP 2200H; 跳转到地址跳转到地址2200H执行执行 00100010 (22H) 00000000 (00H) 2200H 11111000 (F8H) MOV R0 , A;将两数的和保存到寄存器将两数的和保存到寄存器R0中中 2201H 第29页/共101页3. 微型计算机的工作过程(微型计算机的工作过程(8086)计算8+4=?汇编语言程序汇编语言程序对应的机器指令对应的机器指令 对应的操作对应的操作MOV AL,08H 10110000将立即

34、数将立即数1传送到累加寄存器传送到累加寄存器AL中中 00000001ADD AL, 04H 00000100计算两个数的和,结果存放到计算两个数的和,结果存放到AL中中 00000010MOV 0008, AL 10100010将将AL中的数传送到地址单元中的数传送到地址单元0008 00001001 00000000HLT 11110100停机停机第30页/共101页000000000001101100001011000010110000101100000001000200000001000000014. 微型计算机的工作过程微型计算机的工作过程第31页/共101页 8051/8751/8

35、0318051/8751/8031; 8052/8752/80328052/8752/8032; 80C51/87C51/80C3180C51/87C51/80C31 80C52/87C52/80C3280C52/87C52/80C32等等 。 第32页/共101页CHMOS是是CMOS和和HMOS的结合,既的结合,既保持了保持了HMOS高速度和高密度的特点,还具高速度和高密度的特点,还具有有CMOS的低功耗的特点。的低功耗的特点。在产品型号中凡在产品型号中凡带 有 字 母带 有 字 母 “ C”的 即 为的 即 为 CHMO S 芯 片芯 片 ,CHMOS芯片的电平既与芯片的电平既与TTL电

36、平兼容,又电平兼容,又与与CMOS电平兼容。电平兼容。一是一是HMOS工艺工艺(高密度短沟道(高密度短沟道MOS工工艺)。艺)。二是二是CHMOS工艺工艺(互补金属氧化物(互补金属氧化物的的HMOS工艺)。工艺)。第33页/共101页增强型增强型:8052/8752/803280C52/87C52/80C32基本型基本型:8051/8751/803180C51/87C51/80C31第34页/共101页80C51有有4K字节的掩膜字节的掩膜ROM;87C51有有4K字节的字节的EPROM ;80C31在芯片内无程序存储器在芯片内无程序存储器。第35页/共101页 Intel的:的:80C31、

37、80C51、87C51,80C32、80C52、87C52等;等; ATMEL的:的:89C51、89C52、89C2051等;等; Philips、华邦、华邦、Dallas、Siemens(Infineon)等等公司的许多产品公司的许多产品 。 80C51是是MCS-51系列中系列中CHMOS工艺的一工艺的一个典型品种个典型品种 ;其它厂商;其它厂商以以8051为基核为基核开发开发出的出的CMOS工艺单片机产品工艺单片机产品统称为统称为80C51系系列列。当前常用的。当前常用的80C51系列单片机主要产品系列单片机主要产品有:有:第36页/共101页第37页/共101页总线型应用的总线型应用

38、的“三总线三总线”模式模式 非总线型应用的非总线型应用的“多多I/O”模式模式 第38页/共101页第39页/共101页第40页/共101页片内片内ROM字节数:从字节数:从4K增加到增加到8K;片内片内RAM字节数:从字节数:从128增加到增加到256;定时定时/计数器从计数器从2个增加到个增加到3个个;中断源由中断源由5个增加到个增加到6个个。 第41页/共101页无无ROM(即(即ROMLess)型,应用时要在片)型,应用时要在片外扩展程序存储器;外扩展程序存储器;掩膜掩膜ROM(即(即MaskROM)型,用户程序由)型,用户程序由芯片生产厂写入;芯片生产厂写入; EPROM型,用户程序

39、通过写入装置写入,型,用户程序通过写入装置写入,通过紫外线照射擦除;通过紫外线照射擦除; FlashROM型,用户程序可以电写入或擦除型,用户程序可以电写入或擦除(当前常用方式)。(当前常用方式)。还有还有OTPROM型(一次性编程写入型(一次性编程写入ROM) 产产品,具有较高的环境适应性和可靠性。品,具有较高的环境适应性和可靠性。第42页/共101页总线型总线型非总线型非总线型第43页/共101页第44页/共101页2.4.1 80C512.4.1 80C51的内部结构的内部结构一、一、80C51的微处理器(的微处理器(CPU)(1)运算器)运算器累加器累加器ACC ;寄存器寄存器B ;程

40、序状态字寄存器程序状态字寄存器PSW 。(2)控制器)控制器程序计数器程序计数器PC ;指令寄存器指令寄存器IR ;定时与控制逻辑。定时与控制逻辑。第45页/共101页 内部内部ROM容量容量4K字节字节 范围是:范围是:000H0FFFH 内部内部RAM容量容量128字节字节 范围是:范围是:00H7FH第46页/共101页n微机的存贮器结构分类 普林斯顿结构和哈佛结构普林斯顿结构和哈佛结构 n普林斯顿结构普林斯顿结构 微机只有一个地址空间,ROM和RAM可以随意安排在这一地址范围内不同的空间,即ROM和RAM的地址同在一个队列里分配不同的地址空间。CPU访问存储器时,一个地址对应唯一的存储

41、器单元,可以是ROM也可以是RAM,并用同类访问指令。 MCS-51单片机存贮器结构特点单片机存贮器结构特点第47页/共101页MCS-51MCS-51单片机存贮器结构特点单片机存贮器结构特点n哈佛结构哈佛结构 程序存储器和数据存储器分开的结构形式程序存储器和数据存储器分开的结构形式 8051的存储器在物理结构上采用哈佛结构; 分程序存储器空间和数据存储器空间; 有四个存储空间: 片内程序存储器 片外程序存储器 片内数据存储器 片外数据存储器空间 第48页/共101页四个四个8位的并行口,即位的并行口,即P0P3。它们均为。它们均为双向口,既可作为输入,又可作为输出。双向口,既可作为输入,又可

42、作为输出。每个口各有每个口各有8条条I/O线。线。 有一个全双工的串行口有一个全双工的串行口(利用(利用P3口的两口的两个引脚个引脚P3.0和和P3.1););有有2个个16位的定时位的定时/计数器计数器 ;有有1套完善的中断系统。套完善的中断系统。 第49页/共101页内部有内部有SPSP,DPTRDPTR(可分成(可分成DPHDPH、DPLDPL两个两个8 8位位寄存器),寄存器),PCONPCON,IEIE,IPIP等等2121个特殊功个特殊功能寄存器单元,能寄存器单元,它们同内部它们同内部RAMRAM的的128128个字节个字节统一编址,地址范围是统一编址,地址范围是80H80HFFH

43、FFH。这些。这些SFRSFR只只用到了用到了80H80HFFHFFH中的中的2121个字节单元,且这些个字节单元,且这些单元是离散分布的。单元是离散分布的。增强型单片机的增强型单片机的SFRSFR有有2626个字节单元,所增加个字节单元,所增加的的5 5个单元均与定时个单元均与定时/ /计数器计数器2 2相关。相关。第50页/共101页一、一、80C5180C51的时钟产生方式的时钟产生方式内部时钟内部时钟 外部时钟外部时钟第51页/共101页二、二、80C51的时钟信号的时钟信号一个一个机器周期机器周期包含包含12个晶振周期或个晶振周期或6个时钟周期个时钟周期 指令的执行时间称作指令的执行

44、时间称作指令周期指令周期 (单、双、四周期)第52页/共101页二、二、80C51的典型时序的典型时序 各指令的微操作在时间上有严格的次序,这各指令的微操作在时间上有严格的次序,这种种微操作的时间次序微操作的时间次序我们称作我们称作时序。时序。 单字节指令单字节指令 双字节指令双字节指令1、单周期指令时序、单周期指令时序第53页/共101页 2个机器周期中个机器周期中ALE信号有效信号有效4次,后次,后3次读操作无效。次读操作无效。 2、双双周期指令时序周期指令时序第54页/共101页 在第二机器周期无读操作码的操作,而是进行外部在第二机器周期无读操作码的操作,而是进行外部数据存储器的寻址和数

45、据选通数据存储器的寻址和数据选通 。ALE信号会出现非周信号会出现非周期现象期现象。 访问外部访问外部RAM的双周期指令时序的双周期指令时序 第55页/共101页 时钟周期时钟周期。 80C5180C51振荡器产生的时钟脉冲频率的倒数,是最振荡器产生的时钟脉冲频率的倒数,是最基本最小的定时信号。基本最小的定时信号。 状态周期状态周期。 它是将时钟脉冲二分频后的脉冲信号。状态周期它是将时钟脉冲二分频后的脉冲信号。状态周期是时钟周期的两倍。状态周期是时钟周期的两倍。状态周期又称又称S S周期。在周期。在S S周期内周期内有两个时钟周期,即分为两拍,分别称为有两个时钟周期,即分为两拍,分别称为P1P

46、1和和P2P2 第56页/共101页 机器周期是机器周期是6个状态周期、个状态周期、 1212个时钟周期。个时钟周期。 当时钟频率为当时钟频率为12MHz12MHz时,机器周期为时,机器周期为1 1 S S; 当时钟频率为当时钟频率为6MHz6MHz时,机器周期为时,机器周期为2 2 S S。(3) 机器周期机器周期(4) 指令周期指令周期 指指CPU执行一条指令占用的时间执行一条指令占用的时间(用机器周期表示用机器周期表示)。80C51执行各种指令时间是不一样的,可分为三类:单机执行各种指令时间是不一样的,可分为三类:单机周指令、双机周指令和四机周指令。其中单机周指令周指令、双机周指令和四机

47、周指令。其中单机周指令有有6464条,双机周指令有条,双机周指令有4545条,四机周指令只有条,四机周指令只有2 2条条( (乘法和除法乘法和除法指令指令) ),无三机周指令。,无三机周指令。 第57页/共101页四、四、CPU的时序的时序8051时序的定时单位有时序的定时单位有3种:种:1)节拍节拍P和状态周期和状态周期SY节拍:节拍:fosc经经2分频后的前分频后的前/后半个周期后半个周期P1P2Y状态周期状态周期S:包含两个节拍:包含两个节拍P1P22) 机器周期机器周期T=12*ToscYfosc的的12分频,分频,12个节拍。个节拍。Y6个状态周期:个状态周期:S1S2S63) 指令

48、周期指令周期Ti执行一条指令的时间执行一条指令的时间Y8051最少最少1Ti,最多,最多4个个TiS1S4S1 P1 P2 P1 P2S6 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2状态周期状态周期一个机器周期一个机器周期X2fosc两个节拍两个节拍S3S2S5S2第58页/共101页振振荡荡器器QQ2P1P236机器机器周期周期TiALE状态状态时钟时钟s时钟发生器时钟发生器X1X2 fosc第59页/共101页图图2-9 80C51的取指执行时序的取指执行时序 a) 单字节单周期指令,例:单字节单周期指令,例:INC A b) 双字节单周期指令,例:双字节单周期

49、指令,例:ADD A,#data c) c)单字节双周期指令,例单字节双周期指令,例 INC DPTR d)INC DPTR d)双字节双周期指令:例双字节双周期指令:例 PHSH directPHSH direct 第60页/共101页牢牢记住:牢牢记住: 振荡周期振荡周期( (时钟周期时钟周期)= = 晶振频率晶振频率foscfosc的倒的倒数;数;1 1个机器周期个机器周期 = 6= 6个状态个状态周期周期1 1个机器周期个机器周期 = 12= 12个个时钟周期时钟周期;1 1个指令周期个指令周期 = 1= 1、2 2、4 4个机器周期个机器周期第61页/共101页一、复位电路一、复位电

50、路复位复位目的是目的是使单片机使单片机或系统中的其它部件或系统中的其它部件处于某处于某种确定的初始状态。种确定的初始状态。 上电复位电路上电复位电路 按键与上电复位按键与上电复位 第62页/共101页二、单片机复位后的状态二、单片机复位后的状态PC=0000H,所以程序从,所以程序从0000H地址单元开始执行地址单元开始执行;启动后,片内启动后,片内RAM为随机值,运行中的复位操作不为随机值,运行中的复位操作不改变片内改变片内RAM的内容的内容 ;特殊功能寄存器复位后的状态是确定的特殊功能寄存器复位后的状态是确定的 :P0P3=FFH,各口可用于输出,也可用于输入;,各口可用于输出,也可用于输

51、入;SP=07H,第一个入栈内容将写入,第一个入栈内容将写入08H单元;单元;IP、IE和和PCON的的有效位为有效位为0,各中断源处于低优,各中断源处于低优先级且均被关断、串行通讯的波特率不加倍;先级且均被关断、串行通讯的波特率不加倍;PSW=00H,当前工作寄存器为,当前工作寄存器为0组。组。第63页/共101页80C51存储器可以分成两大类:存储器可以分成两大类: RAM,CPU在运行时能随时进行数据的写入在运行时能随时进行数据的写入和读出,但在关闭电源时,其所存储的信息将丢和读出,但在关闭电源时,其所存储的信息将丢失。它用来存放暂时性的输入输出数据、运算的失。它用来存放暂时性的输入输出

52、数据、运算的中间结果或用作堆栈。中间结果或用作堆栈。 ROM是一种写入信息后不易改写的存储器。是一种写入信息后不易改写的存储器。断电后,断电后,ROM中的信息保留不变。用来存放固定中的信息保留不变。用来存放固定的程序或数据,如系统监控程序、常数表格等。的程序或数据,如系统监控程序、常数表格等。 第64页/共101页2.5.1 80C512.5.1 80C51的程序存储器配置的程序存储器配置PC是是16位的计数器,所以能寻址位的计数器,所以能寻址64KB的的ROM。80C51内部有内部有4KB的掩膜的掩膜ROM,87C51在内部有在内部有4KB的的EPROM,而,而80C31在内部没有程序存储器

53、。在内部没有程序存储器。 第65页/共101页2.5.2 80C512.5.2 80C51的数据存储器配置的数据存储器配置第66页/共101页80C5180C51存储空间配置图存储空间配置图 第67页/共101页一、工作寄存器区一、工作寄存器区 低端低端32个字节分成个字节分成4个工作寄存器组,每组个工作寄存器组,每组8个单个单元。元。当前工作寄存器组的机制当前工作寄存器组的机制便于快速现场保护。便于快速现场保护。 PSW的的RS1、RS0 决定当前工作寄存器组号决定当前工作寄存器组号 寄存器0组 :地址00H07H;寄存器1组 :地址08H0FH;寄存器2组 :地址10H17H;寄存器3组

54、:地址18H1FH。第68页/共101页二、位寻址区二、位寻址区第69页/共101页三、通用三、通用RAM区区 位寻址区之后的位寻址区之后的30H至至7FH共共80个字节个字节为通用为通用RAM区。这些单元可以作为数据缓区。这些单元可以作为数据缓冲器使用。这一区域的操作指令非常丰富冲器使用。这一区域的操作指令非常丰富,数据处理方便灵活。,数据处理方便灵活。 在实际应用中,常需在在实际应用中,常需在RAM区设置堆栈区设置堆栈。80C51的的堆栈一般设在堆栈一般设在30H7FH的范围的范围内内。栈顶的位置由。栈顶的位置由SP寄存器指示。寄存器指示。复位时复位时SP的初值为的初值为07H,在系统初始

55、化时可以重,在系统初始化时可以重新设置。新设置。第70页/共101页2.5.32.5.3 80C5180C51的特的特殊功能寄殊功能寄存器(存器(SFRSFR)第71页/共101页一、与运算器相关的寄存器(一、与运算器相关的寄存器(3个)个)累加器累加器ACC,8位。用于向位。用于向ALU提供操作数,许多运提供操作数,许多运算的结果也存放在累加器中;算的结果也存放在累加器中;寄存器寄存器B,8位。主要用于乘、除法运算。也可以作位。主要用于乘、除法运算。也可以作为为RAM的一个单元使用;的一个单元使用;程序状态字寄存器程序状态字寄存器PSW,8位。其各位含义为:位。其各位含义为: CY:进位、借

56、位标志。有进位、借位时:进位、借位标志。有进位、借位时 CY=1,否则,否则CY=0; AC:辅助进位、借位标志;:辅助进位、借位标志; F0:用户标志位,由用户自己定义;:用户标志位,由用户自己定义; RS1、RS0:当前工作寄存器组选择位;:当前工作寄存器组选择位; OV:溢出标志位。有溢出时:溢出标志位。有溢出时OV=1,否则,否则OV=0; P:奇偶标志位。:奇偶标志位。ACC中结果有奇数个中结果有奇数个1时时P=1,否则,否则 P=0。第72页/共101页程序状态字寄存器程序状态字寄存器 PSWPSW:CYACF0RS0OVPRS1PSW.7PSW.0CY(PSW.7)CY(PSW.

57、7)进位进位/ /借位标志位借位标志位。若。若ACCACC在运算过程在运算过程中发生了进位或借位,则中发生了进位或借位,则CY=1CY=1;否则;否则=0=0。它也。它也是是布尔处理器布尔处理器的的位累加器位累加器,可用于布尔操作。,可用于布尔操作。AC(PSW.6)AC(PSW.6)半进位半进位/ /借位标志位。借位标志位。若若ACCACC在运算过在运算过程中,程中,D3D3位向位向D4D4位发生了进位或借位,则位发生了进位或借位,则CY=1,CY=1,否则否则=0=0。机器在执行。机器在执行“DA ADA A”指令时指令时自自动动要判断这一位,我们可以暂时不关心它。要判断这一位,我们可以暂

58、时不关心它。F0 F0 (PSW.5)(PSW.5)可由用户定义的标志位。可由用户定义的标志位。PSW.6 PSW.5特殊功能寄存器特殊功能寄存器(PSW)(PSW)第73页/共101页程序状态字寄存器程序状态字寄存器 PSWPSW(续)(续):CYACF0RS0OVPRS1PSW.7PSW.0RS1(PSW.4)RS1(PSW.4)、RS0RS0(PSW.3)(PSW.3)工作寄存器组选择位工作寄存器组选择位。RS1RS1,RS0 = 0 1 RS0 = 0 1 则选择了工作寄存器组则选择了工作寄存器组 1 1 区区R0R0R7R7分别分别代表代表08H 08H 0FH0FH单元。单元。RS

59、1RS1,RS0 = 1 0 RS0 = 1 0 则选择了工作寄存器组则选择了工作寄存器组 2 2 区区 R0R0R7R7分别分别代表代表10H 10H 17H17H单元。单元。RS1RS1,RS0 = 1 1 RS0 = 1 1 则选择了工作寄存器组则选择了工作寄存器组 3 3 区区R0R0R7R7分别分别代表代表18H 18H 1FH1FH单元。单元。PSW.4 PSW.3RS1RS1,RS0 = 0 0 RS0 = 0 0 则选择了工作寄存器组则选择了工作寄存器组 0 0 区区R0R0R7R7分别分别代表代表00H 00H 07H07H单元。单元。第74页/共101页程序状态字寄存器程序

60、状态字寄存器 PSWPSW(续)(续):CYACF0RS0OVPRS1PSW.7PSW.0RS1(PSW.4)RS1(PSW.4)、RS0RS0(PSW.3)(PSW.3)工作寄存器组选择位工作寄存器组选择位。RS1RS1,RS0 = 0 1 RS0 = 0 1 则选择了工作寄存器组则选择了工作寄存器组 1 1 区区R0R0R7R7分别分别代表代表08H 08H 0FH0FH单元。单元。RS1RS1,RS0 = 1 0 RS0 = 1 0 则选择了工作寄存器组则选择了工作寄存器组 2 2 区区 R0R0R7R7分别分别代表代表10H 10H 17H17H单元。单元。RS1RS1,RS0 = 1

温馨提示

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

评论

0/150

提交评论