单片机原理及接口技术:第1章 微型计算机基础

上传人:努力****83 文档编号:193035272 上传时间:2023-03-07 格式:PPT 页数:50 大小:609.50KB
返回 下载 相关 举报
单片机原理及接口技术:第1章 微型计算机基础_第1页
第1页 / 共50页
单片机原理及接口技术:第1章 微型计算机基础_第2页
第2页 / 共50页
单片机原理及接口技术:第1章 微型计算机基础_第3页
第3页 / 共50页
点击查看更多>>
资源描述
第1章 微型计算机基础 第第1 1章章 微型计算机基础微型计算机基础 1.1 计算机中的数制及相互转换计算机中的数制及相互转换 1.2 二进制数的运算二进制数的运算 1.3 带符号数的表示带符号数的表示 1.4 定点数和浮点数定点数和浮点数 1.5 BCD码和码和ASCII码码 1.6 微型计算机的组成及工作过程微型计算机的组成及工作过程 第1章 微型计算机基础 1.1 计算机中的数制及相互转换计算机中的数制及相互转换 1.1.1 进位计数制进位计数制 按进位原则进行计数的方法,称为进位计数制。十进制数有两个主要特点:(1)有 10 个不同的数字符号:0、1、2、9;(2)低 位 向 高 位 进 位 的 规 律 是“逢 十 进 一”。因此,同一个数字符号在不同的数位所代表的数值是不同的。如555.5中 4 个 5分别代表500、50、5 和 0.5,这个数可以写成555.5=5102+5101+5100+510-1 式中的10称为十进制的基数,10、101、100、10-1称为各数位的权。第1章 微型计算机基础 任意一个十进制数N都可以表示成按权展开的多项式:inmiimmnnnnddddddN1010.1010.1010111002211 其中,di是09共10个数字中的任意一个,m是小数点右边的位数,n是小数点左边的位数,i是数位的序数。例如,543.21可表示为543.21=5102+4101+3100+210-1+110-2第1章 微型计算机基础 一般而言,对于用 R 进制表示的数 N ,可以按权展开为 inmiimmnnnnRaRaRaRaRaRaN111002211.式中,ai 是 0、1、(R-1)中的任一个,m、n是正整数,R是基数。在 R 进制中,每个数字所表示的值是该数字与它相应的权Ri的乘积,计数原则是“逢 R进一”。第1章 微型计算机基础 1.二进制数二进制数 当 R=2 时,称为二进位计数制,简称二进制。在二进制数中,只有两个不同数码:0和1,进位规律为“逢二进一”。任何一个数 N,可用二进制表示为 inmiimmnnnnaaaaaaN22.22.22111002211 例如,二进制数 1011.01 可表示为(1011.01)2=123+022+121+120+02-1+12-2 第1章 微型计算机基础 2.八进制数八进制数 当R=8 时,称为八进制。在八进制中,有 0、1、2、7 共 8 个不同的数码,采用“逢八进一”的原则进行计数。如(503)8可表示为(503)8=582+081+380 第1章 微型计算机基础 3.十六进制十六进制 当R=16时,称为十六进制。在十六进制中,有 0、1、2、9、A、B、C、D、E、F共 16个不同的数码,进位方法是“逢十六进一”。例如,(3A8.0D)16可表示为(3A8.0D)16=3162+10161+8160+016-1+1316-2 第1章 微型计算机基础 表1.1 各种进位制的对应关系 十进制十进制二进制二进制八进制八进制十六进制十六进制十进制十进制二进制二进制八进制八进制十六进制十六进制000091001119111110101012A2102211101113B3113312110014C41004413110115D51015514111016E61106615111117F7111771610000201081000108第1章 微型计算机基础 1.1.2 不同进制间的相互转换不同进制间的相互转换 1.二、二、八、八、十六进制转换成十进制十六进制转换成十进制 例例 1 将数(10.101)2,(46.12)8,(2D.A4)16转换为十进制。(10.101)2=121+020+12-1+02-2+12-3=2.625 (46.12)8=481+680+18-1+28-2=38.156 25 (2D.A4)16=2161+13160+1016-1+416-2=45.640 62 第1章 微型计算机基础 2.十进制数转换成二、八、十六进制数十进制数转换成二、八、十六进制数 任意十进制数 N 转换成 R 进制数,需将整数部分和小数部分分开,采用不同方法分别进行转换,然后用小数点将这两部分连接起来。(1)整数部分:除基取余法。分别用基数 R 不断地去除 N 的整数,直到商为零为止,每次所得的余数依次排列即为相应进制的数码。最初得到的为最低有效数字,最后得到的为最高有效数字。第1章 微型计算机基础 例例 2 将(168)10转换成二、八、十六进制数。第1章 微型计算机基础 (2)小数部分:乘基取整法。分别用基数 R(R=2、8或16)不断地去乘N 的小数,直到积的小数部分为零(或直到所要求的位数)为止,每次乘得的整数依次排列即为相应进制的数码。最初得到的为最高有效数字,最后得到的为最低有效数字。第1章 微型计算机基础 故:(0.645)10=(0.10100)2=(0.51217)8=(0.A51EB)16 第1章 微型计算机基础 例例 4 将将(168.645)10转换成二、八、十六进制数。根据例2、例 3 可得 (168.645)10=(10101000.10100)2=(250.51217)8=(A8.A51EB)16 第1章 微型计算机基础 3.二进制与八进制之间的相互转换二进制与八进制之间的相互转换 由于23=8,故可采用“合三为一”的原则,即从小数点开始分别向左、右两边各以3位为一组进行二八换算:若不足 3 位的以 0 补足,便可将二进制数转换为八进制数。反之,采用“一分为三”的原则,每位八进制数用三位二进制数表示,就可将八进制数转换为二进制数。例例 5 将(101011.01101)2转换为八进制数。101 011 .011 010 5 3 .3 2 即 (101011.01101)2=(53.32)8 第1章 微型计算机基础 例例 6 将(123.45)8转换成二进制数。1 2 3 .4 5001 010 011 .100 101 即 (123.45)8=(1010011.100101)第1章 微型计算机基础 例例 7 将(110101.011)2转换为十六进制数。0011 0101 .0110 3 5 .6 即 (110101.011)2=(35.6)16 第1章 微型计算机基础 例例 8 将(4A5B.6C)16转换为二进制数。4 A 5 B .6 C0100 1010 0101 1011 .0110 1100即 (4A5B.6C)16=(100101001011011.011011)2 第1章 微型计算机基础 1.2 二进制数的运算二进制数的运算 1.2.1 二进制数的算术运算二进制数的算术运算 二进制数只有 0和1两个数字,其算术运算较为简单,加、减法遵循“逢二进一”、“借一当二”的原则。1.加法运算加法运算规则:0+0=0;0+1=1;1+0=1;1+1=10(有进位)第1章 微型计算机基础 例例 1 求1001B+1011B。第1章 微型计算机基础 2.减法运算减法运算规则:0-0=0;1-1=0;1-0=1;0-1=1(有借位)例例 2 求1100B-111B。第1章 微型计算机基础 3.乘法运算乘法运算规则:00=0;01=10=0;11=1例例 3 求1011B1101B。第1章 微型计算机基础 即 10100101B/1111B=1011B 4.除法运算除法运算规则:0/1=0;1/1=1例例 4 求10100101B/1111B 第1章 微型计算机基础 1.2.2 二进制数的逻辑运算二进制数的逻辑运算 1.“与与”运算运算 “与”运算是实现“必须都有,否则就没有”这种逻辑关系的一种运算。运算符为“”,其运算规则如下:00=0,01=10=0,11=1 例例 5 若X=1011B,Y=1001B,求XY。100110011011.即 XY=1001B 第1章 微型计算机基础 2.“或或”运算运算 “或”运算是实现“只要其中之一有,就有”这种逻辑关系的一种运算,其运算符为“+”。“或”运算规则如下:0+0=0,0+1=1+0=1,1+1=1 例例 6 若X=10101B,Y=01101B,求X+Y。101010110111101+即 X+Y=11101B 第1章 微型计算机基础 3.“非非”运算运算 “非”运算是实现“求反”这种逻辑的一种运算,如变量A的“非”运算记作 。其运算规则如下:A10,01例例 7 若A=10101B,求 。ABBA0101010101 第1章 微型计算机基础 4.“异或异或”运算运算 “异或”运算是实现“必须不同,否则就没有”这种逻辑的一种运算,运算符为“”。其运算规则是:011,101,110,000例例 8 若X=1010B,Y=0110B,求XY。101001101100即 XY=1100B 第1章 微型计算机基础 1.3 带符号数的表示带符号数的表示 1.3.1 机器数及真值机器数及真值 计算机在数的运算中,不可避免地会遇到正数和负数,那么正负符号如何表示呢?由于计算机只能识别0和1,因此,我们将一个二进制数的最高位用作符号位来表示这个数的正负。规定符号位用“0”表示正,用“1”表示负。例如,X=-1101010B,Y=+1101010B,则X表示为:11101010B,Y表示为01101010B。第1章 微型计算机基础 1.3.2 数的码制数的码制 1.原码原码 当正数的符号位用0表示,负数的符号位用1表示,数值部分用真值的绝对值来表示的二进制机器数称为原码,用X原表示,设X为整数。若X=+Xn-2Xn-3X1X0,则X原=0Xn-2Xn-3X1X0=X;若X=-Xn-2Xn-3X1X0,则X原=1Xn-2Xn-3X1X0=2n-1-X。其中,X为n-1位二进制数,Xn-2、Xn-3、X1、X0为二进制数0或1。例如+115和-115在计算机中(设机器数的位数是8)其原码可分别表示为+115原=01110011B;-115原=11110011B 第1章 微型计算机基础 可见,真值X与原码X原的关系为,2,1XXXn原02201XXnn 值得注意的是,由于+0原=00000000B,而-0原=10000000B,所以数 0的原码不唯一。8位二进制原码能表示的范围是:-127+127。第1章 微型计算机基础 2.反码反码 一个正数的反码,等于该数的原码;一个负数的反码,由它的正数的原码按位取反形成。反码用X反表示。若X=-Xn-2Xn-3X1X0,则X反=1Xn-2Xn-3X1X0。例如:X=+103,则X反=X原=01100111B;X=-103,X原=11100111B,则X反=10011000B。;)12(,1XXXn反022011XXnn第1章 微型计算机基础 3.补码补码 “模”是指一个计量系统的计数量程。如,时钟的模为12。任何有模的计量器,均可化减法为加法运算。仍以时钟为例,设当前时钟指向11点,而准确时间为7点,调整时间的方法有两种,一种是时钟倒拨4小时,即11-4=7;另一种是时钟正拨8小时,即11+8=12+7=7。由此可见,在以12为模的系统中,加8和减4的效果是一样的,即 -4=+8(mod 12)对于n位计算机来说,数X的补码定义为,2,XXXn补02)2(mod;2011XXnnn第1章 微型计算机基础 即正数的补码就是它本身,负数的补码是真值与模数相加而得。例如,n=8时,+75补=01001001B -73补=10000000 B-01001001B=10110111B 0补=+0补=-0补=00000000B 可见,数0的补码表示是唯一的。在用补码定义求负数补码的过程中,由于做减法不方便,一般该法不用。负数补码的求法:用原码求反码,再在数值末位加1,即:X补=X反+1。例 如:-3 0 补=-3 0 反+1 =+3 0 原+1=11100001+1=11100010B。8位二进制补码能表示的范围为:-128+127,若超过此范围,则为溢出。第1章 微型计算机基础 1.4 定点数和浮点数定点数和浮点数 1.定点法定点法 定点法中约定所有数据的小数点隐含在某个固定位置。对于纯小数,小数点固定在数符与数值之间;对于整数,则把小数点固定在数值部分的最后面,其格式为 纯小数表示:数符.尾数 数 符尾 数.小数点数 符尾 数.小数点第1章 微型计算机基础 2.浮点法浮点法 浮点法中,数据的小数点位置不是固定不变的,而是可浮动的。因此,可将任意一个二进制数N表示成N=M2E其中,M为尾数,为纯二进制小数,E称为阶码。可见,一个浮点数有阶码和尾数两部分,且都带有表示正负的阶码符与数符,其格式为 阶 符阶码E数 符尾数M第1章 微型计算机基础 设阶码 E的位数为m位,尾数M的位数为n位,则浮点数N的取值范围为 2-n2-2m+1|N|(1-2-n)22m-1 为了提高精度,发挥尾数有效位的最大作用,还规定尾数数字部分原码的最高位为1,叫做规格化表示法。如0.000101表示为:2-30.101 第1章 微型计算机基础 1.5 BCD码和码和ASCII 码码 1.5.1 BCD码码 十进制数 8421BCD码 十进制数 8421BCD码 00000501011000160110200107011130011810004010091001表1.2 8421BCD编码表 第1章 微型计算机基础 例例 1 写出69.25的BCD码。根据表 1.2,可直接写出相应的BCD码:69.25=(01101001.00100101)BCD 第1章 微型计算机基础 1.5.2 ASCII码码 表 1.3 ASCII 码 表 第1章 微型计算机基础 1.6 微型计算机的组成及工作过程微型计算机的组成及工作过程 1.6.1 基本组成基本组成 图 1.1 微型计算机的基本组成 第1章 微型计算机基础 1.中央处理器中央处理器CPU CPU(Central Processing Unit)是计算机的核心部件,它由运算器和控制器组成,完成计算机的运算和控制功能。运算器又称算术逻辑部件(ALU,Aithmctieal Logic Unit),主要完成对数据的算术运算和逻辑运算。控制器(Controller)是整个计算机的指挥中心,它负责从内部存储器中取出指令并对指令进行分析、判断,并根据指令发出控制信号,使计算机的有关部件及设备有条不紊地协调工作,保证计算机能自动、连续地运行。第1章 微型计算机基础 CPU中还包括若干寄存器(Register),它们的作用是存放运算过程中的各种数据、地址或其它信息。寄存器种类很多,主要有:通用寄存器:向 ALU提供运算数据,或保留运算中间或最终的结果。累加器A:这是一个使用相对频繁的特殊的通用寄存器,有重复累加数据的功能。程序计数器PC:存放将要执行的指令地址。指令存储器IR:存放根据PC 的内容从存储器中取出的指令。在微型计算机中,CPU一般集成在一块被称为微处理器(MPU,Micro Processing Unit)的芯片上。第1章 微型计算机基础 2.存储器存储器M 存储器(Memory)是具有记忆功能的部件,用来存储数据和程序。存储器根据其位置不同可分为两类:内存储器和外存储器。内存储器(简称内存)和CPU直接相连,存放当前要运行的程序和数据,故也称主存储器(简称主存)。它的特点是存取速度快,基本上可与CPU处理速度相匹配,但价格较贵,能存储的信息量较小。外存储器(简称外存)又称辅助存储器,主要用于保存暂时不用但又需长期保留的程序和数据。存放在外存的程序必须调入内存才能进行。外存的存取速度相对较慢,但价格较便宜,可保存的信息量大。第1章 微型计算机基础 3.输入输入/输出接口(输出接口(I/O接口)接口)输入/输出(I/O)接口由大规模集成电路组成的I/O器件构成,用来连接主机和相应的I/O设备(如:键盘、鼠标、显示器、打印机等),使得这些设备和主机之间传送的数据、信息在形式上和速度上都能匹配。不同的I/O设备必须配置与其相适应的I/O接口。第1章 微型计算机基础 4.总线总线 总线(BUS)是计算机各部件之间传送信息的公共通道。微机中有内部总线和外部总线两类。内部总线是CPU内部之间的连线。外部总线是指CPU与其它部件之间的连线。外部总线有三种:数据总线DB(Data Bus),地址总线 AB(Address Bus)和控制总线 CBControl Bus)。第1章 微型计算机基础 1.6.2 基本工作过程基本工作过程 根据冯诺依曼原理构成的现代计算机的工作原理可概括为:存储程序和程序控制。存储程序是指人们必须事先把计算机的执行步骤序列(即程序)及运行中所需的数据,通过一定的方式输入并存储在计算机的存储器中。程序控制是指计算机能自动地逐一取出程序中的一条条指令,加以分析并执行规定的操作。第1章 微型计算机基础 来看Z=X+Y的执行过程。假定我们有一个虚拟机SAM,主存储器由4K16位的字组成,CPU 中有一个可被程序员使用的16位累加器A。SAM指令格式为 操作码地址码SAM中有如下指令:第1章 微型计算机基础 假设X和Y均已存放在存储单元中。注意,X是个变量名,可以是某个存储单元的地址,该单元中存放的是X的值。(1)从地址为X的单元中取出X的值送到累加器中。(2)把累加器中的X与地址为Y 的单元的内容相加,结果存放在累加器中。(3)把累加器中的内容送到地址为Z的单元中。相应的SAM指令是:LOAD X ADD Y STORE Z 第1章 微型计算机基础 表 1.4 计算Z=X+Y的程序 第1章 微型计算机基础 指 令 被 取 出 后 送 入 指 令 寄 存 器 I R(I n s t r c t i o n Register),由控制器中的译码器对指令进行分析,识别不同的指令类别及各种获得操作数的方法。以加法指令ADD Y为例,译码器分析后得到如下结果:(1)这是一个加法指令;(2)一个操作数存放在Y(地址为A01H)中,另一操作数隐含在累加器 A中。接着,操作进入指令执行阶段。仍以 ADD Y 为例,将Y 与A中内容送入 ALU,进行加法运算,结果送入A。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!