单片机与接口技术 (1)

上传人:豆浆 文档编号:3905112 上传时间:2017-08-05 格式:PPT 页数:50 大小:611KB
返回 下载 相关 举报
单片机与接口技术 (1)_第1页
第1页 / 共50页
单片机与接口技术 (1)_第2页
第2页 / 共50页
单片机与接口技术 (1)_第3页
第3页 / 共50页
单片机与接口技术 (1)_第4页
第4页 / 共50页
单片机与接口技术 (1)_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《单片机与接口技术 (1)》由会员分享,可在线阅读,更多相关《单片机与接口技术 (1)(50页珍藏版)》请在金锄头文库上搜索。

1、第1章 微型计算机基础,1.1 计算机中的数制及相互转换 1.2 二进制数的运算 1.3 带符号数的表示 1.4 定点数和浮点数 1.5 BCD码和ASCII码 1.6 微型计算机的组成及工作过程,1.1 计算机中的数制及相互转换,1.1.1 进位计数制 按进位原则进行计数的方法, 称为进位计数制。十进制数有两个主要特点: (1) 有 10 个不同的数字符号: 0、 1、 2、 、 9; (2) 低位向高位进位的规律是“逢十进一”。 因此, 同一个数字符号在不同的数位所代表的数值是不同的。如555.5中 4 个 5分别代表500、 50、 5 和 0.5, 这个数可以写成555.5=5102+

2、5101+5100+510-1 式中的10称为十进制的基数, 10、101、100、10-1称为各数位的权。,任意一个十进制数N都可以表示成按权展开的多项式:,其中, di是09共10个数字中的任意一个, m是小数点右边的位数, n是小数点左边的位数, i是数位的序数。例如, 543.21可表示为543.21=5102+4101+3100+210-1+110-2,一般而言, 对于用 R 进制表示的数 N , 可以按权展开为,式中, ai 是 0、1、 、 (R-1)中的任一个, m、 n是正整数, R是基数。在 R 进制中, 每个数字所表示的值是该数字与它相应的权Ri的乘积, 计数原则是“逢

3、R进一”。,1. 二进制数 当 R=2 时, 称为二进位计数制, 简称二进制。在二进制数中, 只有两个不同数码: 0和1, 进位规律为“逢二进一”。任何一个数 N, 可用二进制表示为,例如, 二进制数 1011.01 可表示为(1011.01)2=123+022+121+120+02-1+12-2,2. 八进制数 当R=8 时, 称为八进制。在八进制中, 有 0、1、2、7 共 8 个不同的数码, 采用“逢八进一”的原则进行计数。如(503)8可表示为(503)8=582+081+380,3. 十六进制 当R=16时, 称为十六进制。在十六进制中, 有 0、1、2、 9、 A、B、C、D、E、

4、F共 16个不同的数码, 进位方法是“逢十六进一”。 例如, (3A8.0D)16可表示为(3A8.0D)16=3162+10161+8160+016-1+ 1316-2,表1.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

5、62,2. 十进制数转换成二、八、十六进制数 任意十进制数 N 转换成 R 进制数, 需将整数部分和小数部分分开, 采用不同方法分别进行转换, 然后用小数点将这两部分连接起来。 (1) 整数部分: 除基取余法。 分别用基数 R 不断地去除 N 的整数, 直到商为零为止, 每次所得的余数依次排列即为相应进制的数码。最初得到的为最低有效数字, 最后得到的为最高有效数字。,例 2 将(168)10转换成二、 八、 十六进制数。,(2) 小数部分: 乘基取整法。 分别用基数 R(R=2、8或16)不断地去乘N 的小数, 直到积的小数部分为零(或直到所要求的位数)为止, 每次乘得的整数依次排列即为相应进

6、制的数码。 最初得到的为最高有效数字, 最后得到的为最低有效数字。,故: (0.645)10=(0.10100)2=(0.51217)8=(0.A51EB)16,例 4 将(168.645)10转换成二、 八、 十六进制数。 根据例2、例 3 可得 (168.645)10= (10101000.10100)2= (250.51217) 8=(A8.A51EB)16,3. 二进制与八进制之间的相互转换 由于23= 8, 故可采用“合三为一”的原则, 即从小数点开始分别向左、右两边各以3位为一组进行二八换算: 若不足 3 位的以 0 补足, 便可将二进制数转换为八进制数。反之, 采用“一分为三”的

7、原则, 每位八进制数用三位二进制数表示, 就可将八进制数转换为二进制数。 例 5 将(101011.01101)2转换为八进制数。,即 (101011.01101)2= (53.32)8,例 6 将(123.45)8转换成二进制数。,即 (123.45)8=(1010011.100101),例 7 将(110101.011)2转换为十六进制数。,0011 0101 . 0110,3 5 . 6,即 (110101.011) 2=(35.6)16,例 8 将(4A5B.6C)16转换为二进制数。,即 (4A5B.6C)16=(100101001011011.011011)2,1.2 二进制数的运

8、算,1.2.1 二进制数的算术运算 二进制数只有 0和1两个数字,其算术运算较为简单,加、 减法遵循“逢二进一”、“借一当二”的原则。,1. 加法运算规则: 0+0=0; 0+1=1; 1+0=1; 1+1=10(有进位),例 1 求1001B+1011B。,2. 减法运算规则: 0-0=0; 1-1=0; 1-0=1; 0-1=1(有借位),例 2 求1100B-111B。,3. 乘法运算规则: 00=0; 01=10=0; 11=1例 3 求1011B1101B。,即 10100101B/1111B=1011B,4. 除法运算规则: 0/1=0; 1/1=1例 4 求10100101B/1

9、111B,1.2.2 二进制数的逻辑运算,1. “与”运算 “与”运算是实现“必须都有,否则就没有”这种逻辑关系的一种运算。 运算符为“ ”, 其运算规则如下:00=0, 01=10=0, 11=1 例 5 若X=1011B, Y=1001B, 求XY。,.,即 XY=1001B,2. “或”运算 “或”运算是实现“只要其中之一有,就有”这种逻辑关系的一种运算, 其运算符为“+”。 “或”运算规则如下:0+0=0, 0+1=1+0=1, 1+1=1 例 6 若X=10101B, Y=01101B, 求X+Y。,101010110111101,+,即 X+Y=11101B,3. “非”运算 “非

10、”运算是实现“求反”这种逻辑的一种运算,如变量A的“非”运算记作 。 其运算规则如下:,例 7 若A=10101B, 求 。,4. “异或”运算 “异或”运算是实现“必须不同, 否则就没有”这种逻辑的一种运算, 运算符为“”。其运算规则是:,例 8 若X=1010B, Y=0110B, 求XY。,101001101100,即 XY=1100B,1.3 带符号数的表示,1.3.1 机器数及真值 计算机在数的运算中, 不可避免地会遇到正数和负数, 那么正负符号如何表示呢?由于计算机只能识别0和1, 因此, 我们将一个二进制数的最高位用作符号位来表示这个数的正负。 规定符号位用“0”表示正, 用“1

11、”表示负。例如, X=-1101010B, Y=+1101010B, 则X表示为: 11101010B, Y表示为01101010B。,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在计算机中(设机器数的位数是

12、8)其原码可分别表示为+115原= 01110011B; -115原= 11110011B,可见, 真值X与原码X原的关系为,值得注意的是, 由于+0原=00000000B, 而-0原=10000000B, 所以数 0的原码不唯一。 8位二进制原码能表示的范围是: -127+127。,2. 反码 一个正数的反码, 等于该数的原码; 一个负数的反码, 由它的正数的原码按位取反形成。反码用X反表示。 若X=-Xn-2Xn-3X1X0, 则X反=1Xn-2Xn-3X1X0。例如: X=+103, 则X反=X原=01100111B; X=-103, X原=11100111B, 则X反=10011000

13、B。,3. 补码 “模”是指一个计量系统的计数量程。如, 时钟的模为12。任何有模的计量器, 均可化减法为加法运算。仍以时钟为例, 设当前时钟指向11点, 而准确时间为7点, 调整时间的方法有两种, 一种是时钟倒拨4小时, 即11-4=7; 另一种是时钟正拨8小时, 即11+8=12+7=7。 由此可见, 在以12为模的系统中, 加8和减4的效果是一样的, 即 -4=+8(mod 12)对于n位计算机来说, 数X的补码定义为,即正数的补码就是它本身, 负数的补码是真值与模数相加而得。 例如, n=8时, +75补=01001001B -73补=10000000 B- 01001001B=101

14、10111B 0补=+0补=-0补=00000000B 可见, 数0的补码表示是唯一的。在用补码定义求负数补码的过程中, 由于做减法不方便, 一般该法不用。负数补码的求法: 用原码求反码, 再在数值末位加1, 即: X补=X反+1。 例如: -30补=-30反+1 =+30原+1=11100001+1=11100010B。 8位二进制补码能表示的范围为: -128 +127, 若超过此范围, 则为溢出。,1.4 定点数和浮点数,1. 定点法 定点法中约定所有数据的小数点隐含在某个固定位置。 对于纯小数, 小数点固定在数符与数值之间; 对于整数, 则把小数点固定在数值部分的最后面, 其格式为,纯小数表示: 数符. 尾数,.小数点,.小数点,2. 浮点法 浮点法中, 数据的小数点位置不是固定不变的, 而是可浮动的。 因此, 可将任意一个二进制数N表示成N=M2E其中, M为尾数, 为纯二进制小数, E称为阶码。可见, 一个浮点数有阶码和尾数两部分, 且都带有表示正负的阶码符与数符, 其格式为,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

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