第三章——计算机进行小数运算时出错的原因
本章的重点是小数处理
二进制表示小数
二进制小数点后面的位权,第一位是2的-1次幂,第二位是2的-2次幂,这样的规律不仅限于二进制数,在十进制数和十六进制数中同样适用。
计算机运算出错的原因
有一些十进制的小数无法转换为二进制数,比如十进制数0.1,因为二进制数0.0001表示0.0625,0.0010表示0.125。0.1转换为二进制数是0.00011001100…计算机无法处理无线循环小数。
什么是浮点数
单精度浮点数:32位,float
双精度浮点数:64位,double
浮点数:用符号、尾数、基数和指数这四个部分来表示小数。与实际小数点位置不同的书写方法。
定点数:小数点的实际位置固定不变。
符号部分:
使用一个数据位来表示符号,该数据位是1时表示负,是0时表示“正或0”
尾数部分:将小数点前面的值固定为1的正则表达式。
正则表达式:按照特定的规则表示数据的形式为正则表达式。
十进制的浮点数原则:小数点前面是0,小数点后面第一位不是0。
二进制数的原则:将小数点前面的值固定为1的正则表达式。
指数部分:EXCESS系统表现
通过将指数部分表示范围的中间值设为0,使得负数不需要用符号来表示。
当指数部分是8位单精度浮点数,最大值为11111111=255的1/2,即01111111=127表示的是0;
指数部分是11位双精度浮点数,11111111111=2047的1/2,即01111111111=1023表示的是0。
如何避免计算机出错
- 回避策略;
- 把小数转换成整数计算;
- BCD(财务计算)。
二进制数和十六进制数
数值开头加Ox就表示十六进制数,二进制数的四位表示十六进制数的一位。
十六进制来表示二进制小数时,二进制小数点后不够四位的用0补低位。
以上是第三章所学内容,下一章见!
标签:表示,十六进制,第三章,有感,二进制,浮点数,程序,小数点,小数 From: https://www.cnblogs.com/zyk0915-/p/18019612