软考必考之有关计算机的数据表示

补码表示的定点数相加:
• 例子说明:如果想求0.1010+(-0.0101),则应当先将其各自转换为补码形式,即补码形式为:01010+11011,结果为100101,其中发现最高位的1溢出,因此结果为00101,恢复为二进制即:0.0101。
• 纯小数的表示:
• 纯小数即形如(0.1….)的小数,特点是以0,1为最高位和次高位,并且小数点在其之间。纯小数在计算机内表示时,由于其小数点固定,因此可以忽略最高位的0和次高位的1,并将气候不足的位数补0.例如:(0.111)2在计算机内表示时,表示为(1110000)即可,而当负数纯小数时,最高位为符号位,其他各位为忽略符号和最高位0及小数点并补0的数字进行相应编码后的结果。例如(-0.111)2,按照8为反码编码时,首先符号设置1,然后去掉符号位和最高位及小数点,并补足7位后得到1110000,反码表示为0001111,因此(-0.111)2在计算机内部表示为(10001111)2。
• 浮点小数的表示法
• 浮点小数即小数点位置不固定的小数。由于小数点位置不固定,因此计算机无法直接表示浮点小数,需要先通过科学技术法将浮点小数转为定点小数。这种转换后的定点小数与科学计数法相似。
• 在计算机中表示一个浮点数时,要给出定点小数形式表示的尾数,以及整数形式表示的阶码。其中,由于尾数部分的长度决定了有效数字的位数,也就决定了浮点小数的表示精度;而阶码决定了浮点小数的表示范围。由于尾数和阶码都有可能为负数,因此需要采用有别于整数及纯小数的表示方法。
• 阶码符号位 阶码数据E1-En 尾数符号位 尾数数据位M1-Mn
• 即尾数部分的符号位确定浮点数的正负;阶码的符号位确定小数点移动的方向,为正时向右移,为负时向左移。由于计算机内表示都是以2为地鼠,因此二进制数N的小数点每右移一位,阶码就要相应减小1以保持N不变,相应的,尾数也要右移一位。
• 由于费用点数相加时只需要统一阶码后尾数部分相加即可;而浮点数相乘时,阶码部分要做加法,因此为了简化正负数的加法运算,阶码部分一般采用新的编码方式,对于k为的移码,在其补码的基础上加2^k后就得到了移码的值,实际上就是符号位取反,目的是根据数值本身的大小可以进行原数据的比较。由于移码表示法中0有唯一的编码—-1000…00,因此当发现000…00时(即-2^n)就出现了浮点数的向下溢出。
• 设X=Mx×2^x,Y=My×2^y
• x+-y时:1.对阶时小阶向大阶看齐。
• 2.尾数Mx和My进行加减法运算。
• 3.舍入操作,在实行对阶或右规操作时常用0舍1入法(类似于十进制中的四舍五 入法)将右移出去的尾数数值进行舍入,已确保精度。
• 4.检查阶码是否溢出,若阶码下溢,则认为结果超过了所能表示的最小值,腰肢结果为0。
• 设X=Mx×2^x,Y=My×2^y
• x×y时:1.乘法时[Ex+Ey]移=[Ex]移+[Ey]补 。除法时: [Ex+Ey]移=[Ex]移+[Ey]补
• 2.浮点数的尾数处理。浮点数中尾数乘除法的运算结果要进行舍入处理。
• 汉字的内码
• 国际GB2312-80规定,全部国标汉字及符号组成94×94的矩阵,每一行称为区,每一列称为一个位。
• 汉字的内码:是在区位码的基础上演变而来,它是在计算机内部进行存储,传输所使用的汉字代码
• 汉字的内码采用如下运算规定:
高位内码=区码+20H+80H 低位内码=位码+20H+80H
20H为基本ASCII的控制码,80H把最高二进制位置1,因此可用最高位是否为1来时别是否是ASCII字符
例子:汉字‘玻’的缺位吗转换成机内码
高位内码=(18)10+(20)16+(80)16
=(00010010)2+(00100000)2+(10000000)2
=(10110010)2
=(B2)16=B2H
低位内码=(03)10+(20)16+(80)16
=(00010010)2+(00100000)2+(10000000)2
=(10100011)2
=(A3)16=A3H
因此,汉字“玻”的内码=B2A3H。
• 奇偶校验码
• 直接举例来说:
例如8位码字传送ASCII码时,可以使用最高位作为校验码。这是如果想要传输字符0,由于字符0的ASCII编码值为48,即0110000,共有偶数个1,当采用奇校验码时,最高位作为校验码应为1,即增加奇校验编码后的值为10110000;而采用偶校验时,最高位作为校验位应为00110000.以奇校验为例,当接收方收到00110000时,可以判断出数据错误,要求发送发重新发送。
• 点阵法和矢量法
• 点阵法使用一个16×16点阵,24×24点阵或32×32点阵存储并输入一个汉字,由于点阵的表示能力有限,可能出现具有相同的点阵的不同汉字;而矢量法使用轮廓曲线存储并输出汉字,提高了输出质量,所以不会出现具有相同矢量编码的不同汉字;

猜你喜欢

转载自blog.csdn.net/weixin_42746744/article/details/82024888