计算机组成原理 - 浮点数和定点数
如果你有 python 或者 node 的命令行终端,或者浏览器里面的 Console,你可以做个测试,输入 0.3 + 0.6 看下值究竟是多少。
1 | Welcome to Node.js v12.16.1. |
如果你有 python 或者 node 的命令行终端,或者浏览器里面的 Console,你可以做个测试,输入 0.3 + 0.6 看下值究竟是多少。
1 | Welcome to Node.js v12.16.1. |
所有数据,字符串,整数等一切事物在计算机里,都是通过 0 和 1 来组成,也就是用二进制表示。二进制的特点就是「逢二进一」。
同时为了应对负数,采用了补码表示法,即第一位既作为符号位,同时也参与运算。比如 4 位二进制数,从 1000 到 0111,表示的范围在 -8 到 7 之间的 16 个数,不会浪费任何一个位。
有了补码表示负数,整数相加也变得很容易,不需要做任何特殊处理,只是把它当成普通的二进制相加,就能得到正确的结果。
什么是性能?我们一般这样定义:
1 | 性能 = 1 / 响应时间 |
除了响应时间,吞吐率也是衡量性能的一个指标。一般通过 CPU 的多核,或者水平增加机器来提示吞吐率,从而提高单位时间的任务处理速度。