您好,欢迎访问三七文档
五计算机中数的表示和编码内容:一、进位计数制及其表示方法二、数制之间的转换三、字和各种字符的编码四、小结一、各种进制及其表示方法(一)、进制及其要素:例:十进制数有:0、1、2、3、4、5、6、7、8、9十种状态。我们说:十进制数基数10,变化范围0~9(10-1),逢十进一。看一个十进制数:4094每一位十种数码的状态(0~9)千百十个本位绝对值的大小=数×位权103102101100如:千位=4×103=4000十进制数有二个要素:1.基数:十每一位0、1、2、3、4、5、6、7、8、9(逢十进一)。2.位权:10i某一位数绝对值大小=数×位权.二个要素:适用于二、八、十六进制。二进制数:基数2,每一位0、1,位权2i八进制数:基数8,每一位0、1、2、3、4、5、6、7位权8i十六进制数:基数16,每一位0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,位权16i(二)、进位计数制的表示方法:1234.56=1103+2102+3101+4100+510-1+610-2按权展开---〉十进制数例如:二进制数10011101B127+124+123+122+120=(157)10在计算机里进行运算和处理均是按二进制数处理的。17Q=181+780=15d17H=1161+7160=23而二进制数写起来麻烦;书写时又以八进制或十六进制表示;日常生活中又常用十进制,因此就有:二十八十二八数制之间转换问题十六十二十六二、数制之间的转换:(一)、十二1.整数十→二(除2取余法,降幂法)(1)除2取余法上竖式为:(22)10=(10110)2十进制二进制八进制十六进制BCD000001011112102210311331141004410051015510161106611071117711181000108100091001119100110101012A1000011101113B1000112110014C1001013110115D1001114111016E1010015111117F101011610000201010110。。。11。。。。12。。。。。。(255)D11111111B377QFFH(10,0101,0101)BCD(二)、二八,二十六,二BCD之间转换1、二八二→八:三位一段,不够补0,三位二进制数用一位八进制数表示。例:(1,101,001)2不够补0(001101001)2=(151)8八→二:一位八进制数用三位二进制数表示.(151)8=(001101001)22、二十六:二→十六:四位一段,不够补0,四位二进制数用一位十六进制数表示。例:(1101001)2→(69)16不够补0(0110,1001)2=(69)16十六→二:一位十六进制数用四位二进制数表示。例:(69)16=(0110,1001)23、二BCDBCD数:常用8421码,每一位十进制数用四位二进制编码表示。1111B9D1001BCD10D00010000BCDBCD码与二进制数之间转换没有直接关系,必须先转换成十进制,然后转换成二进制。例:1111111B=255D=0010,0101,0101BCD0010,0101,0101BCD=255D=11111111B三.字和各种字符的编码(ASCⅡ编码)字和各种字符按照特定规则用二进制编码在机器中表示。编码有各种方式:目前规定在微型机中最普遍采用ASCⅡ码(AmericanStandardCodeforInformationInterchange)美国标准信息交换码。参看P23ASCⅡ码表。ASCⅡ码:采用七位二进制编码,可以表示128个字符。bit7作奇偶校验位,在机器中表示时,常认为“0”,用一个字长(8位)表示一个ASCⅡ字符。常用的ASCⅡ字符:0—9的ASCⅡ码30H—39HA—Z的ASCⅡ码41H—5AHa—z的ASCⅡ码61H—7AH(一)带符号数的表示1.机器数与真值2.原码3.反码4.补码上面提到的是一种无符号数,机器数中会有正有负。符号怎么表示呢?通常数的最高位为符号位,对于字长8位机器数:D7为符号位:0表示“+”,1表示“—”。符号数码化了。D6~D0为数字位。如:X=(01011011)2=+91X=(11011011)2=-91连同符号位在一起作为一个数称为机器数,机器数的数值称为的真值。如:N1=+1011011N2=-1011011为真值0101101111011011为机器数符号数码化了,对数据进行运算时,符号位应如何处理?把符号位和数值位一起编码:原码,反码,补码。2.原码:正数符号位用“0”表示,负数符号用“1”表示,这种表示法称为原码。X=+105[X]原=01101001X=-105[X]原=11101001符号数值原码表示简单,真值转换方便,减法不方便。引进反码,补码。3.反码:正数反码表示与原码相同,(最高位“0”表示正,其余位为数值位。)负数的反码表示为其绝对值按位取反。例:[+4]反=00000100[-4]反=11111011[+127]反=01111111[-127]反=10000000[+0]反=00000000[-0]反=111111114.补码:正数的补码表示与原码相同,(最高位用“0”表示正,其余位为数值位.)负数的补码表示为它的反码+1。[+127]原=01111111[+0]原=00000000[-127]反=10000000[-0]反=11111111[-127]补=10000001[-0]补=000000005.“0”的表示原码反码补码[+0]原=000…00[+0]反=000…00[+0]补=000…00[-0]原=100…00[-0]反=111…11[-0]补=000…006.数的表示范围:8位二进制数无符号数:0~255原码:-127~+127反码:-127~+127补码:-128~+127
本文标题:数的表示和编码
链接地址:https://www.777doc.com/doc-3394841 .html