3.1 将0.1累加100次也得不到10
3.2 用二进制表示小数
只需将各数位数值和位权相乘,然后再将相乘的结果相加即可实现。
3.3 计算机运算出错的原因
有一些十进制数的小数无法转换成二进制数。
小数点后4位能够用二进制数表示的数值二进制数是连续的,十进制数是非连贯的
因为无法正确表示的数值,最后都变成了近似值。
计算机这个功能有限的设备,是无法处理无限循环小数的。
因此,在遇到循环小数时,计算机就会根据变量数据类型所对应的长度将数值从中间截断或者四舍五入。
3.4 什么是浮点数
- 浮点数的表现形式。由符号、尾数、基数、指数四部分构成
- 浮点数的内部构造(IEEE的规定)
3.5 正则表达式和EXCESS系统
EXCESS系统表现是指,通过将指数部分表示范围的中间值设为0,使得负数不需要用符号来表示。
单精度浮点数指数部分的EXCESS系统表现
3.6 在实际的程序中进行确认
3.7 如何避免计算机计算出错
- 回避策略
- 小数转换成整数
- BCD(Binary Coded Decimal)一种使用二进制表示十进制的方法
##3.8 二进制数和十六进制 - 如果位数太多,看起来就比较麻烦
- 通过使用十六进制数使位数变短
- 小数点后的二进制数的4位也相当于十六进制数的1位
17)] - 小数点后的二进制数的4位也相当于十六进制数的1位