单片微型机原理-第一章-计算机基础知识_第1页
单片微型机原理-第一章-计算机基础知识_第2页
单片微型机原理-第一章-计算机基础知识_第3页
单片微型机原理-第一章-计算机基础知识_第4页
单片微型机原理-第一章-计算机基础知识_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

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

文档简介

1、信息工程学院自动化系 单片微型计算机原理与应用任课教师:赵建敏办公室:第二实验楼C304 单片微型计算机原理与应用信息工程学院自动化系 课程概况: 原“微机原理与应用”、“单片机原理与应用”两门课合并 学时88(70+18) 考核方式:笔试70%+实验20%+平时成绩10% 单片微型计算机原理与应用信息工程学院自动化系 课程概况: 自动化专业核心专业课 实践性:注重动手能力 综合性:培养系统性解决问题的能力 课外科技创新活动 全国大学生智能车竞赛 Intel杯全国大学生电子设计竞赛 各种课外科技创新社团活动第一章 单片微型计算机基础知识1.1、微型计算机概述1.2、数制与编码1.3、处理器与存

2、储器组织1.4、外设与总线1.5、单片机内部结构1.6、单片机的应用和应用系统结构信息工程学院自动化系内蒙古科技大学41.1.1 计算机的发展、微型计算机的分类第一台计算机,1946,美国宾夕法尼亚大学,ENIAC i: nik计算机的发展:电子管计算机晶体管计算机集成电路计算机大规模集成电路计算机超大规模集成电路计算机计算机按其性能分类:大型计算机中型计算机小型计算机微型计算机1.1.1 计算机的发展、微型计算机的分类v 按规模分类 单片机 个人计算机 笔记本电脑 智能手机 平板电脑1.1.2 计算机的基本结构和工作原理v 人脑的简单计算CPU内部包含如下三部分:v 算术逻辑部件v 累加器和

3、寄存器组v 控制器作具体的计算 控制作用 微型计算机构成v CPU、存储器v 输入/输出接口电路v 系统总线微型计算机构成记录原始数据和算题保存中间结果作具体的计算 控制作用 保存和输出最终结果11微型计算机的概念结构存储器I/O接口输入设备I/O接口地址总线地址总线 ABAB输出设备CPU数据总线数据总线 DBDB控制总线控制总线 CBCBI/O接口AB: Address BusDB: Data BusCB: Control Bus1.1.3 微处理器、微型计算机和微型计算机系统逻辑运算部件累加器和寄存器组控制器内部总线微处理器存储器(ROM、RAM)输入输出接口系统总线微型计算机外围设备系

4、统软件微型计算机系统13微型计算机系统的三个层次微处理器存储器I/O接口总线 硬件系统软件系统微 型计算机系 统微 型计算机(主机)外 设ALU寄存器控制器键盘、鼠标显示器软驱、硬盘、光驱 打印机、扫描仪系统软件应用软件14核心级微处理器v 微处理器简称CPU,是计算机的核心,主要包括: 运算器ALU(算数逻辑单元) 控制器CU 寄存器组Registersv CPU实现了运算功能和控制功能v 计算机的控制中心,提供运算、判断能力v 构成:ALU、CU、Registers例:Intel 8088/8086、PIII、P4、Celeron、酷睿、i5CPU的位数(字长):4位、8位、16位、32位

5、、64位是指一次能处理的数据的位数15硬件系统级微型计算机v 以微处理器为核心,配上只读存储器(ROM)、读写存储器(RAM)、输入/输出(I/O)接口电路及系统总线等部件,就构成了微型计算机。v 将CPU、存储器、I/O接口、总线等集成在一片超大规模集成电路芯片上,称为单片微型计算机,简称单片机。16硬件系统级-存储器v 存放程序和数据的记忆装置v 用途:存放程序和要操作的各类信息(数据、文字、图像、。)v 内存:ROM、RAM 特点:随机存取,速度快,容量小v 外存:磁盘、光盘、半导体盘、 特点:顺序存取/块存取,速度慢,容量大17硬件系统级-输入/输出接口l 简写为I/O接口,是CPU与

6、外部设备间的桥梁l 提供驱动外设的电压或电流;l 匹配计算机与外设之间的信号电平、速度、信号类型、数据格式等;l 缓存发给外设的数据、控制命令和外设提供的运行状态信息;l DMA控制和中断控制。CPUI/O接口接口外设外设18硬件系统级-总线BUSv 连接多个功能部件的一组公共信号线 地址总线AB:用来传送CPU输出的地址信号,确定被访问的存储单元、I/O端口。地址线的根数决定了CPU的寻址范围。 CPU的寻址范围 = 2n, n-地址线根数 数据总线DB:在CPU与存储器、I/O接口之间数据传送的公共通路。数据总线的条数决定CPU一次最多可以传送的数据宽度。 控制总线CB:用来传送各种控制信

7、号19系统级v 以微型计算机为中心,配以相应的外围设备以及控制微型计算机工作的软件,就构成了完整的微型计算机系统。v 微型计算机如果不配有软件,通常称为裸机v 软件分为系统软件和应用软件两大类。20微型计算机的软件系统v 软件:为运行、管理和维护计算机系统或为实现某一功能而编写的各种程序的总和及其相关资料。系统软件应用软件操作系统编译系统网络系统工具软件软件211.1.4 计算机的工作过程存储程序计算机又称为冯诺依曼型计算机v 以运算器为核心、以存储程序原理为基础v 将计算过程描述为由许多条指令按一定顺序组成的程序,即程序是由多条有逻辑关系的指令组成,指令的长度不等(一般为14字节)v 数据和

8、程序均以二进制代码的形式不加区别地存放在存储器中,存放位置由地址指定,地址码也是二进制形式v 由控制器控制整个程序和数据的存取以及程序的执行指令指令驱动驱动22存储程序计算机的工作原理v 控制器按预先存放在计算机存储器中的程序的流程自动地连续取出指令并执行之。运算器运算器输出设备输出设备控制器控制器输入设备输入设备存储器存储器指令流控制命令数据流23程序的执行过程程序指令1指令2指令3指令4指令n 取指令指令译码取操作数执行指令存结果指令周期操作码 操作数执行1。CPU如何知道从哪里取出程序的第一条指令?操作系统2。CPU如何按程序控制流执行指令?程序计数器3。CPU如何知道从哪里取操作数?地

9、址、寻址方式24例:计算5+8汇编语言程序对应的机器指令 对应的操作- - -MOV AL, 5 10110000 将立即数1传送到累加寄存器AL中 00000101ADD AL, 8 00000100 计算两个数的和,结果存放到AL中 00001000HLT 11110100 停机指令执行过程见下页图25指令执行过程(取指/译码/执行)累加器A数据寄存器DR指令寄存器IR指令译码器ID时序逻辑电路时序控制信号(控制命令)1011 00000000 01010000 01000000 10001111 0100内部总线存储器01234程序计数器PC地址MOV A, 5ADD A, 8HLT地址

10、总线+1地址译码器读写控制电路输出地址输出地址1011 0000锁存指令锁存指令锁存数据锁存数据置初值置初值输出指输出指令地址令地址锁存地址锁存地址读写命令读写命令指令译码指令译码锁存输出地址寄存器AR补充:微型计算机的数据类型常见名词术语(1)v 位:一个二进制位,是计算机中信息表示的最小单位。 例如:1010B就有4个二进制位。v 字节:相邻的8个二进制位。 例:1011 0110 B为一个字节v 字:计算机内部进行数据传递、处理的基本单位。在PC微机中常把一个字定义为16位,即2个字节。 例:0111 1010 1110 1100B 即为一个字。v 字长:一个字所包含的二进制位数。 例:

11、16位微处理器的字长为16。二进制数1011 0011有几位?数1011 0011 0011 1110B有几个字节?微机原理 第1章 微型计算机概述(27)补充: 微型计算机的数据类型 常见名词术语(2)v 双字(Double Word):32位,4个字节,是32位微计算机的字长。v 四字(Quad Word):64位,8个字节,是32位微处理器的双倍精度字。v 双四字(DQW):128位,16个字节。v 模:模是计量器的最大容量。一个4位寄存器能够存放00001111共计16个数,因此它的模为24。281.2 数制和编码l 计算机中的常用计数制、编码及其相互间的转换;l 二进制数的算术运算和

12、逻辑运算;l 符号数的表示及补码运算;l 二进制数运算中的溢出问题;l 基本逻辑门及译码器;l 定点数与浮点数的表示方法。29 1.2.1 计算机中的数制v了解:各种计数制的特点及表示方法;v掌握:各种计数制之间的相互转换。30一、常用计数制v 十进制符合人们的习惯v 二进制便于物理实现v 十六进制便于识别、书写31十进制v 特点:以十为底,逢十进一; 共有0-9十个数字符号。v 表示:权表达式120112011101010101010nnmnnmniiimDDDDDDDn:整数位数m:小数位数32二进制v特点:以2为底,逢2进位; 只有0和1两个符号。(数后面加B)v表示:12012n 12

13、011( )222222nnmnmniiimBBBBBBBn:整数位数m:小数位数33十六进制v 特点:有0-9及A-F共16个数字符号, 逢16进位。(数后面加H)v 表示:1201161n 2011()161616161616 nnmnmniiimHHHHHHHn:整数位数m:小数位数34任意K进制数的表示一般地,对任意一个一般地,对任意一个K进制数进制数S都可表示为都可表示为120n 120111()nnknmmniiimSSKSKSKSKSKSK 其中: Si - S的第i位数码,可以是K个符号中任何一个; n,m 整数和小数的位数; K - 基数; Ki - K进制数的权35例v 2

14、34.98 或 (234.98)10v 1101.11B 或 (1101.11)2v ABCD . BFH 或 (ABCD . BF)1636二、各数制间的转换v 非十进制数 十进制数: 按相应的权表达式展开,再按十进制求和。v 例:24.AH=2161+4160+A16-1 =36.625注:AF分别用1015代入37十进制 非十进制数v 十进制 二进制: 整数:除2取余; 小数:乘2取整。v 十进制 十六进制: 整数:除16取余; 小数:乘16取整。以小数点为起点求得整数和小数的每一位。注:十进制转换成任意K进制数与上类似,整:除K取余,小数:乘K取整。38十进制到十六进制转换例400.2

15、5 = ( ? )Hv 400/16=25 -余数=0(个位)v 25/16=1 -余数=9(十位)v 1/16=0 -余数=1(百位)v 0.2516=4.0 -整数=4(1/10) 即:400.25 = 190.4H39二进制与十六进制间的转换v 用4位二进制数表示1位十六进制数v 0000 - 0Hv 1001 - 9Hv 1010 - AHv 1011 - BHv 1100 - CHv 1101 - DH v 1110 - EHv 1111 - FH40二进制与十六进制间的转换例: 10110001001.110 = (?)H 0101 1000 1001.1100 5 8 9 . C

16、 注意:位数不够时要补041 无符号二进制数的运算二进制数算术运算算术运算逻辑运算逻辑运算无符号数无符号数有符号数有符号数:算术运算算术运算42一、无符号数的算术运算v加法运算v减法运算v乘法运算v除法运算43注意点:v对加法:1+1=0(有进位)v对减法:0-1=1(有借位)v对乘法:仅有11=1,其余皆为0; 乘以2相当于左移一位。v对除法: 除以2则相当于右移1位。44例v000010110100=00101100B v000010110100=00000010B 即:商=00000010B 余数=11B45二、无符号数的表示范围一个n位的无符号二进制数X,其表示范围为: 0 X 2n-

17、1 若运算结果超出这个范围,则产生溢出。溢出的判别方法: 运算时,当最高位向更高位有进位(或借位)时则产生溢出。46例: 11111111 00000001 000001000最高位向前有进位,产生溢出。本例中:运算结果为256,超出位二进制数所 能表示的范围255。三、逻辑运算与()或()非()异或()掌握:逻辑关系(真值表)和逻辑门。特点:按位运算,无进位/借位。48“与”、“或”运算v任何数和“0”相“与”,结果为0v任何数和“1”相“或”,结果为1BACABC&1AB=CAB=C49“非”、“异或”运算v“非”运算即按位求反v两个二进制数相“异或”: 相同则为0,相异则为1AA

18、BC1 B=AA B=CB50“与非”、“或非”运算AB=C AB=CBACABC&151四、译码器v74LS138译码器:G1G2AG2BCBAY0Y7 38译码器原理译码使能端译码输入端译码输出端5274LS138真值表真值表使使 能能 端端输输 入入 端端输输 出出 端端G1 G2A G2B C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 0 1 1 0 1 1 0 1 0 01 0 01 0 01 0 01 0 01 0 01 0 01 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1

19、 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 531.2.2 符号数的表示及运算计算机中的符号数的表示方法: 把二进制数的最高位定义为符号位。 符号位:“0” 表示正, “1” 表示负。 把符号也数值化了的数,称为机器数。 机器数所表示的真实的数值,称为真值。注:后面的讲述均以8位二进制

20、数为例。54例v +52 = +0110100 = 0 0110100 符号位 数值位 v -52 = -0110100 = 1 0110100 真值真值机器数机器数55一、符号数的表示:v对于符号数,机器数常用的表示方法有原码、反码和补码三种。数X的原码记作X原,反码记作X反,补码记作X补。注意:对正数,三种表示法均相同。 它们的差别在于对负数的表示。56原码X原v 最高位为符号位,用“0”表示正,用“1”表示负;数值部分照原样写出即可。v 优点: 真值和其原码表示之间的对应关 系简单,容易理解;v 缺点: 计算机中用原码进行加减运算比 较困难,0的表示不唯一。正式定义为:11122200-

21、nnnXXXXX 原57数0的原码v+0=0 0000000 -0=1 0000000 即:数0的原码不唯一。58原码的例子真值: X= +18 = +0010010X= -18 = -0010010原码:X原 = 0 0010010X原 = 1 0010010符号符号位 n位原码表示数值的范围是: 对应的原码是1111 0111() ()112121nn 59反码X反对一个数X:v 若X0 ,则 X反=X原v 若X0, 则X补= X反= X原v若X0, 则X补= X反+1正式定义为:11222-nnnXXX 补码的引入(补码的引入(0问题、减法加法化)问题、减法加法化) “0”的原码原码并不

22、惟一,0的原码可以表示为0 0000000(即+0),也可以表示为1 0000000(即-0) ; 用原码原码表示时,减法并不能转化为加法运算; 反码反码也存在类似问题。 但是,带符号数用补码补码表示后,减法可以转化为加法运算 补码的定义如下: 正数正数的补码与反码、原码相同; 负数负数的补码等于它的反码加1。 例如,-23H补码的过程如下: 对应正数23H的原码 0 010 0011; 按位求反后为 1 101 1100,即-23H的反码; 反码加1后为 1 101 1101,即-23H的补码 (0DDH)。 减法加法化:减法加法化: 56H-23H=56H - 23H+100H (100H

23、是8位二进制bit8溢出) =56H +( 100H-23H ) =56H+0DDH =1 33H = 33H (1 33H是8位二进制bit8溢出) 显然,56H-23H的结果与56H+0DDH相同,即引入补码后,减法可以用加法来完成。(在8位二进制中,23H与0DDH互为补码。) 用补码表示时,最高位为最高位为0时,表示该数为正数时,表示该数为正数,数值部分就是真值;而最高位为最高位为1时,为负数时,为负数,数值部分并不是它的真值,必须再求补后,才得到该数的绝对值 -23H的补码为1 1011101,按位取反后为00100010,加1后为00100011,即23H。 8位二进制数,补码表示

24、的范围是-128+127;16位二进制数,补码表示的范围是-32768+32767。 例如,16位二进制数中-23H的补码:对应正数23H的原码为0 000 0000 0010 0011,按位取反后为1 111 1111 1101 1100;加1后为1 111 1111 1101 1101(即16位二进制数-23H的补码,相当于无符号数的0FFDDH)。可见,对于同一个数,作为可见,对于同一个数,作为8位二进制数的补位二进制数的补码和作为码和作为16位二进制数的补码不同。位二进制数的补码不同。 670的补码v +0补= +0原=00000000v -0补 = -0反+1=11111111+1

25、=1 00000000 n位补码表示数值的范围是位补码表示数值的范围是对应的补码是对应的补码是1000 0111对对8位字长,进位被舍掉位字长,进位被舍掉 ()11221nn 68特殊数10000000v该数在原码中定义为:-0v在反码中定义为: -127v在补码中定义为: -128v对无符号数,(10000000)B=128698/16位符号数的表示范围对8位二进制数:v 原码: -127 +127v 反码: -127 +127v 补码: -128 +127对16位二进制数:v 原码: -32767 +32767v 反码: -32767 +32767v 补码: -32768 +3276770

26、符号二进制数与十进制的转换对用补码表示的二进制数: 1)求出真值 2)进行转换71例将一个用补码表示的二进制数转换为十进制数。v X补=0 0101110B 真值为:0101110B 正数 所以:X=+46v X补=1 1010010B 真值不等于:-1010010B 负数 而是:X= X补补= 11010010补 = - 0101110 = - 4672二、符号数的算术运算v 通过引进补码,可将减法运算转换为加法运算。v 即:X+Y补= X补+Y补 X-Y补= X+(-Y)补 = X补+-Y补其中X,Y为正负数均可,符号位参与运算。73补码的运算是基于模的运算 模(module)就是一个计数

27、系统的最大容量。例如钟表的模为12,8位二进制数的模为28,等等。 凡是用器件进行的运算都是有模运算,运算结果超过模的部分会被运算器自动丢弃。因此,当器件为n位时,有 X=2n+X (mod 2n)根据定义, X补=2n+X (mod 2n)因此可得, X Y补= 2n + 2n + (X Y) (mod 2n) = (2n+X) + (2n Y) (mod 2n) = X补+ Y补74例X=-0110100,Y=+1110100,求X+Y=?v X原=10110100 v X补= X反+1=11001100v Y补= Y原=01110100v 所以: X+Y补= X补+ Y补 =110011

28、00+01110100 =01000000 X+Y=+100000075符号数运算中的溢出问题 两个8位带符号二进制数相加或相减时,若 C7 C61 则结果产生溢出。 其中:C7为最高位的进(借)位; C6为次高位的进(借)位。对16位或32位的运算,也有类似结论。76观察以下四种情况哪个溢出? 1 0 1 1 0 1 0 1 + + 1 0 0 0 1 1 1 1 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 + 0 1 1 0 0 0 1 1 1 0 1 0 0 1 0 1 0 1 0 0 0 0 1 0 + + 1 1 0 0 1 1 0 1 1 0 0 0 0 1

29、 1 1 1CASE1:CASE2:CASE3:假定以下运算都是有符号数的运算。 0 0 1 0 0 0 1 0 + 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1CASE4:77例:v 若:X=01111000, Y=01101001 则:X+Y=即:次高位向最高位有进位,而最高位向前无 进位,产生溢出。 (事实上,两正数相加得出负数,结果出错)11100001 01101001 01111000 1.2.3、数的定点和浮点表示、数的定点和浮点表示 十进制数十进制数485.23也可以表示为也可以表示为0.48523 X 103 计算机中也有相应两种表示法:定点数和浮计算机中也有相应两种表示法:定点数和浮点数点数 1.定点表示法定点表示法

温馨提示

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

最新文档

评论

0/150

提交评论