ImageVerifierCode 换一换
格式:DOCX , 页数:36 ,大小:183.31KB ,
资源ID:5364367      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5364367.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电路第一章.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电路第一章.docx

1、电路第一章第一章 数据信息的二进制表示数字系统是对数字量进行加工、处理的系统。目前数字系统中广泛采用二进制信号(也称二值量、开关量),即每个信号只可有两种状态(常用0和1表示)。这种二进制信号很容易和电路状态对应,且技术实现方便。一位二进制信号只能表示两种状态,多位二进制信号组合可表示多种状态。任何信息都必须表示成二进制形式才能用数字系统处理。本章讨论数字、字符等常用信息的二进制表示。1.1 进位记数制1.1.1进位记数制的基本概念进位记数制是指按一定的规则和符号表示数量的方法,其基本要素是数码、位权和运算规则。我们熟悉的十进制数是以10为基数的记数制,所用的数码是0,1,9,各数位的位权是1

2、0的整次幂,运算规则是“逢十进一”、“借一当十”。例如十进制数368.25从左边(高位)开始各位的位权依次为 102,101,100,10-1,10-2,这个十进制数所表示的数量可以写成(368.25)10310261018100210-1510-2一般十进制数Ndndn-1d0.d-1d-m所表示的数量可写作 ( N )10dn10ndn-110n-1d0100d110-1d-m10-m (1.11)上式称为位权展开式,其中di0,1,9,m和n都是正整数。由十进制记数制可以推知一般的R进制记数制就是以R为基数的记数制,采用的数码应是0,1,R-1,各数位的位权应是R的整次幂,运算规则应是“

3、逢R进一”,其位权展开式为 (1.12)其中qi0,1,R-1,m和n都是正整数。1.1.2 数字系统中的常用数制数字系统中普遍采用二进制,而在人工读写时常用八进制和十六进制,为便于人机交换也使用十进制,但都是以二进制为基础的。1. 二进制记数制二进制(binary)记数制是以2为基数的记数制,所用的数码为0和1,各数位的位权是2的整次幂,运算规则是“逢二进一”,其位权展开式为 (1.13)其中qi0,1,m和n都是正整数。例如二进制数11010.01所表示的数量可以写作(11010.01)212412302212102002-112-2 2423212-2二进制数的运算过程如下由 1111

4、1111110000 000028 可知,8位二进制无符号正整数所能表示的数值范围为0 255。n位二进制无符号正整数所能表示的数值范围为0 2 n -1。2. 八进制记数制八进制(octal)记数制是以8为基数的记数制,所用的数码为0,1,7,各数位的位权是8的整次幂,运算规则是“逢八进一”,其位权展开式为 (1.14)其中qi0,1,7,m和n都是正整数。例如八进制数350.2所表示的数量可以写作(350.2)832858108028-1 八进制数的运算过程如下n位八进制无符号正整数所能表示的数值范围为0 8 n -1。3. 十六进制记数制十六进制记数制是以16为基数的记数制,所用的数码为

5、0,1,9和A,B,C,D,E,F,其中A,B,C,D,E,F所表示的数量分别是10,11,12,13,14,15,各数位的位权是16的整次幂,运算规则是“逢十六进一”,其位权展开式为 (1.15)其中qi0,1,9,A,B,C,D,E,F,m和n是正整数。例如十六进制数E8.4所表示的数量可以写作(E8.4)16E1618160416-1 141618160416-1十六进制数的运算过程如下由 16 n -1100 0-1FF F 可知,n位十六进制无符号正整数所能表示的数值范围为0 16 n -1。4. 不同数制的标识在同时使用不同数制的场合,为避免混淆常使用数字下标或字母后缀对不同数制加

6、以标识,如下所示数制 下标标识 后缀标识二进制(Binary) ( n )2 n B八进制(Octal) ( n )8 n Q十进制(Decimal) ( n )10 n D十六进制(Hexadecimal) ( n )16 n H 1.1.3 不同数制的相互转换1. 任意进制数转为十进制数任意进制数转为十进制数一般采用按权相加法,就是按十进制数的运算规则计算其位权展开式,就可得到相应的十进制数。例如(11101000.01)2272625232-2(232.25)10(350.2)838258128-1(232.25)10(E8.4)16141618160416-1(232.25)102.

7、十进制数转为其它进制数要把十进制数转为其它进制数需对其整数部分和小数部分分别进行不同的处理。十进制整数的转换可采用除基取余法。就是用所要转成数制的基数连续除十进制整数,直到商为0,将所得一系列余数按先得为低位,后得为高位的顺序排列起来即为所要转换数制的数。例如求 (232)10( ? )2 (74)10( ? )2(232)10( ? )8 (232)10( ? )16转换计算过程(除基取余)如下即 (232)10(11101000)2 (74) 10(1001010)2即 (232)10(350)8 (232)10(E8)16十进制小数的转换可采用乘基取整法。就是用要转成数制的基数连续乘十进

8、制小数,直到十进制小数为0或达到要求的转换位数,将所得一系列整数按先得为高位,后得为低位的顺序排列起来即为所要转换数制的小数。注意十进制小数转换成其它进制数仍然是小数。例如 求 (0.25)10( ? )2 (0.6875)10( ? )2 (0.3125)10( ? )8 (0.25)10( ? )16转换计算过程(乘基取整)如下即 (0.25)10(0.01)2 (0.6875)10(0.1011)2整数 小数 25 16 4 0即 (0.3125)10(0.24)8 (0.25)10(0.4)16一般来说连续乘2、8或16难以使十进制小数达到0,这时可按“精度相当”原则确定转换位数。例如

9、一位十进制小数表示数的精度为十分之一,转为二进制小数要得到相应精度可取三位或四位(精度为八分之一或十六分之一);两位十进制小数表示数的精度为百分之一,相应的二进制小数可取六位或七位(精度为64分之一或128分之一)。对既有整数又有小数的十进制数,转换时需分别处理。例如(232.25)10(232)10(0.25)10(11101000)2(0.01)2 (11101000.01)23. 二进制数和八进制数、十六进制数的相互转换由于一位八进制数对应三位二进制数(见表1.11),一位十六进制数对应四位二进制数(见表1.12),二进制数和八进制数、十六进制数的相互转换非常方便。 表1.11 八进制数

10、和二进制数的对应关系八进制01234567二进制000001010011100101110111 表1.12 十六进制数和二进制数的对应关系十六进制01234567二进制00000001001000110100010101100111十六进制89ABCDEF二进制10001001101010111100110111101111要把八进制数转为二进制数,只需将每位八进制数写成相应的三位二进制数即可;要把十六进制数转为二进制数,只需将每位十六进制数写成相应的四位二进制数即可。例如 求 (56.73)8( ? )2 , (6A.D3)16( ? )2则 (56.73)8(101 110.111 01

11、1)2 (6A.D3)16(0110 1010.1101 0011)2把二进制数转为八进制数或十六进制数,需要以小数点为基准进行分组,转为八进制数时每三位一组,转为十六进制数时每四位一组,位数不足时需用0补位(补位应不改变原二进制数的数值,即整数在高位补0,小数在低位补0);按原顺序写出每组二进制数所对应的八进制数或十六进制数即可。例如 求 (1011101.01011)2( ? )8 , (1011101.01111)2( ? )16 则 (001 011 101.010 110)2(135.26)8 (0101 1101.0111 1000)2(5D.78)164. 八进制数和十六进制数的

12、相互转换八进制数和十六进制数的相互转换可通过二进制数实现。如要将一个八进制数转为十六进制数,可先将其转为二进制数,再将此二进制数转为十六进制数。例如 (45.6)8 (0010 0101.1100)8 (25.C)16(7A9.D)1616 (011 110 101 001.110 100)2 (3651.64)81.2 带符号的二进制数的表示数字系统中所表示的数可能是正数,也可能是负数;可以是纯整数,称为定点整数;也可以是纯小数,称为定点小数;也可以既有整数,也有小数,称为浮点数。浮点数将在1.3节讨论,本节讨论定点数。1.2.1 真值和机器数带符号的数是用正负号加绝对值表示的数。真值是指带

13、正负号的二进制数,是带符号的二进制数的书写形式。在数字系统中“数”是用寄存器、存储器等硬件设备来表示的,其位数是固定的,即无效0也要表示,如无符号二进制数11011,在8位字长的机器中表示为00011011(8位二进制数)。数的正负号通常是用位于数码最高位(最左端)的一个二进制位表示,这个二进制位叫作符号位,一般是0表示正,1表示负。这种用一个二进制位表示数的正负号的方法称为符号数码化。机器数是符号数码化的定长二进制数,是带正负号的二进制数在机器中的表示形式。例如+4和-4写成二进制数(真值)分别为+100和-100,表示成8位字长的原码(机器数)分别为00000100和10000100,两机

14、器数的最高位是符号位,0表示“”,1表示“”。注意:由于机器数的位数是固定的,当实际数的有效数位不足时需要用0补位。常用的机器数有原码,补码和反码。1.2.2 原码(true from)原码又叫符号数值(sign-magnitude)表示法,是用一个二进制位(称为符号位)表示数的正负号,其余各位(称为数值部分)表示数的绝对值。n位定点整数原码形式为xnxn-1 x1n位定点整数原码的定义式为 (符号位的位权为2 n-1) (1.21)式中x原 表示真值x的原码。当x为正数时x原x,即正数的原码的符号位为0,数值部分等于真值(若真值的有效数位不足时需用0补位);当x为负数时x原2 n-1x,即负

15、数的原码的符号位为1(符号位的位权为2 n-1),数值部分等于真值的绝对值(需补位定长)。按定义可以写出n位定点整数原码所能表示的数值如下正 数真值 原码负 数真值 原码 +1 00 01 +(2 n-1 -1) 01 11 -1 10 01 -(2 n-1 -1) 11 11可以看出,n位定点整数原码所能表示的数值范围为 -(2 n-1 -1) +(2 n-1 -1)。原码和真值的转换可以按原码的符号位对应真值的正负号,原码的数值部分等于真值的绝对值(需补位定长)来完成。例如 若 x10110,y-10110 按8位字长则 x原00010110,y原100101100的原码有两种形式 +0原

16、00 0,-0原10 0n位定点小数原码形式为xnxn-1 x1n位定点小数原码的定义式为 (符号位的位权为20) (1.22)机器表示定点小数时小数点是隐含的,并不表示出来。但我们在书写时为明确起见常把小数点写出来。例如 若有 x0.1101, y-0.1101 按8位字长则 x原0.1101000, y原1.1101000原码具有符号和数值分离的特点,形式直观易于理解。但运算不便,例如对两个原码表示的数做相加运算,需先检查两数的符号位,若同号则两数的数值部分相加;若异号则需将两数的数值部分相减。数字系统较少采用原码。1.2.3 补码(twos complement)补码是按模定义的一种表示

17、带符号的二进制数的方法,由于补码运算方便,在数字系统中得到了广泛应用。1补码的定义用来记数的设备所能表示的数总有一个限度,或者说有一定的容量,这个容量我们就称之为模。例如指针式钟表的小时记数,在表盘上有12个刻度,可表示12种状态或记12个数,我们就称其为以12为模。对钟表的小时记数来说,12和0的指示相同;另外如果指针原指在2的刻度上,将其顺时针方向拨过(加)12个刻度,指针仍然指在2的刻度上。上述情况可表示为120 (mod 12)2122 (mod 12)其中mod 12表示以12为模。一般说来若记数设备以m为模,则有m0 (mod m)akma (mod m) (1.23)其中k是整数

18、。对钟表来说,如果将指针由2的位置逆时针拨过(减)9个刻度,则指针指向5;而将指针由2的位置顺时针拨过(加)3个刻度,指针也指向5。即29235 (mod 12)按式(1.2-3)上式也可写成292(129)23 (mod 12)我们称数与模的和为该数对模的补数。如-9对模12的补数为3,-5对模12的补数为7,+3对模12的补数为3。这样,减法操作可由加负数对模的补数来实现。n位二进制整数共有2n种状态,可表示2n 个数(0 2n 1),而0和2n 的n位二进制表示是相同的, xnxn-1 x1 0 0 0 0 1 0 0 0 2n即n位二进制整数是以2n 为模。对n位二进制整数有2 n0

19、(mod 2 n)ak2 na (mod 2 n) (1.2-4)其中k是整数。定义:二进制数与模的和为二进制数的补码。即x补2nx (mod 2n) (1.25)根据模的特点,n位定点整数补码的定义式也可写成 (1.26)式中x补 表示真值x的补码。例如按8位字长+100补0000 0100-100补28 1001111 1100+110100补0011 0100-1补28 11111 1111-27补28 27271000 0000+0补0000 0000-0补28 028 0000 0000即0的补码形式唯一。为使补码能够正确地表示数值并能区分真值的正负,可将补码的最高位为作为符号位,0

20、表示正,1表示负。这样可以写出n位定点整数补码所能表示的数为正 数真值 补码负 数真值 补码+1 00 01+2 00 10 +(2 n-1 -1) 01 11-1 11 11-2 11 10 -(2n-1 -1) 10 01 -2n-1 10 00即n位定点整数补码所能表示的数值范围为 -2n-1 +(2n-1-1)。其中 -2n-1 是n位定点整数补码所能表示的绝对值最大的负数,常作为特殊数,后面所要讨论的简便转换方法对此数不适用。把补码本身(连同符号位)作为二进制数,其数值叫做补码的码值。补码的码值和真值的关系可用数轴表示如图1.2-1显然若两数同号时, 真值大的数其补码的码值也大;若两

21、数异号时, 真值大的数其补码的码值小。2补码与真值的相互转换 由真值求补码由定义式可以求出真值的补码。例如按8位字长写出下列各数的补码x1+101100 x2+11010x3-101100 x4-11010由定义式(1.2-6)x1补0010 1100 x2补0001 1010x3补28x310000 00001011001101 0100x4补28x410000 0000110101110 0110直接按定义式求正数的补码只需做补位定长,可以直接写出;直接按定义式求负数的补码,需要做二进制减法运算,不太方便。下面推导求负数的补码的简便方法对n位字长,设xxn-1 xn-2 x1 为n1位数值

22、,则由定义式x补2nx100 0xn-1 xn-2 x1 11 11xn-1 xn-2 x1 1(1xn-1)( 1xn-2) (1x1)1 (1.2-7)其中1xi的结果与xi相反,用表示,其中字符上面的“”称为“取反”,即 当x i0时,1xi1; 当xi1时,1xi0。式(1.2-7)说明负数的补码符号位为1,数值部分可由真值的数值部分按位取反,末位加1得到。注意在做上述操作之前需先将真值的数值部分补位至n1位。按位取反,末位加1(简称取反加1)的操作称之为求补操作。例如 若 x3-101100 x4-11010 按8位字长 则 x3补-010 1100补1101 001111101 0

23、100 x4补-001 1010补1110 010111110 0110经观察可知,求补操作也可以按“保持低位的0以及首1(由低位到高位出现的第一个1)不变,首1之后的各位按位取反”的方法完成。例如按8位字长x3-0101 100 x4-00110 10 取反 不变 取反 不变x3补11010 100 x4补111001 10注意:上述求负数的补码的简便方法不适用于特殊数 -2n-1(n位定点整数补码能表示的绝对值最大的负数),其补码可直接由定义式得出-2 n-1补2 n -2 n-12 n-1 10 0例如按8位字长,-1000 0000补-2 7补2 8-2 72 7 1000 0000由

24、真值求补码的方法可概括为:先将真值的数值部分补位定长,对于正数,其补码的符号位为0,数值部分等于真值的数值部分(以后简称为数值不变);对于负数,其补码的符号位为1,数值部分由真值的数值部分求补得到(以后简称为数值求补)。定点小数的小数点隐含在最高位(符号位)之后。n位定点小数补码的定义式可写成 (1.28)求定点小数补码的方法和求定点整数补码的方法完全相同(但补位是在低位加0)。例如按8位字长x x补位后 x补+0.10011 +0.1001100 0.1001100-0.10011 -0.1001100 1.0110100-0.1101 -0.1101000 1.0011000 由补码求真值

25、下面推导由补码求真值的方法设 x补xn xn-1 xn-2 x1若 xn0 则真值为正,由定义式知 x+ xn-1 xn-2 x1若 xn1 则真值为负,由定义式 x补2nx 得 x-2nx补-2n1xn-1 xn-2 x1-2n2 n-1xn-1 xn-2 x1-2n-1xn-1 xn-2 x1-(2n-1xn-1 xn-2 x1)-(11 11xn-1 xn-2 x1)-(1xn-1)(1xn-2) (1x1)1)即由补码求真值的方法可概括为:若补码的符号位为0,则真值为正,真值的数值部分等于补码的数值部分;若补码的符号位为1,则真值为负,真值的数值部分由补码的数值部分求补得到。例如 若

26、x1补0011 0100 x2补1011 0100则 x1 +011 0100 x2 -100 11003由x的补码求-x的补码在数据处理中经常要做加法运算和减法运算。若各数均用补码表示,运算结果也用补码表示,则根据式(1.2-4)和(1.2-5),可将加减运算表示为xy补2n(xy)2nx2nyx补y补 (mod 2n)xy补x(y)补x补y补 (mod 2n)这样在做补码的减法运算时,需要由减数的补码求其相反数的补码。下面推导由一个数的补码求其相反数的补码的方法。设 x补xn xn-1 xn-2 x1由 x补2nx (mod 2n) 得 x2nx补2nxn xn-1 xn-2 x1则 -x

27、补2n(-x)2n2nxn xn-1 xn-2 x1 (mod 2n)2nxn xn-1 xn-2 x1 111 11xn xn-1 xn-2 x1 (1xn)(1xn-1)(1xn-2) (1x1)1 (1.2-9)即对x的补码(连同符号位)求补就得到x的补码。例如 若 x补0011 0100 y补1011 0100则 -x补1100 1100 -y补0100 1100注意:由于补码所能表示的数值范围中的特殊数(就是绝对值最大的负数,对n位定点整数来说就是 -2n-1;对n位定点小数来说就是 1.0)的相反数超出补码所能表示的数值范围,不能对其求补码。1.2.4 反码(ones comple

28、ment)反码也是按模定义的,但对n位定点整数来说反码是以2n1为模。即x反2n1x (mod 2n1) (1.2-10)根据模的特点,n位定点整数反码定义式可写成 (1.2-11)式中x反 表示真值x的反码。不难得知,n位定点整数反码所能表示的数值范围为 (2n-11) +(2n-1-1)。0的反码有两种形式+0反00 0-0反2n1011 1由反码的定义式和补码的定义式可知,当x0时,x反xx补;当x0时,x反2n1x2nx1x补1。对比真值和补码的转换方法,不难得出由真值求反码的方法为:先将真值的数值部分补位定长,对于正数,其反码的符号位为0,数值部分等于真值的数值部分;对于负数,其反码的符号位为1,数值部分由真值的数值部分按位取反得到。例如对下列各数按8位字长写出其反码x110011 x2-10011x30.10011 x4-0.10011解:先补位(整数在高位补0,小数在低位补0)x100

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1