溢出
讲过了进制,我们回头来讲溢出。
限定位数的数值表达
在位数不受限制的情况下,利用进位制,我们可以使用有限种数字符号来表示所有的数值。
但如果限制数位会如何?
还是用我们熟悉的十进制举例子:
假设我们规定,某一个整数是十进制数,但是它最多总共只能占两位——只能有两个数位,也就是最低的两位:个位和十位。
那么它最小能表达的是 0, 最大能表达的是99。
当我们给99加上1的时候,它的个位和十位都进了位,可是因为百位对于它根本不存在,于是最前面的1没有了,结果变成了99 + 1 = 0 。
这种现象,就叫做溢出。
计算机中的溢出问题
原本三位的数字我非要放到两个数位里去,肯定是放不下啊。放不下非要硬放,于是就会出现错误,把最高位给“挤没了”。这个错误的名字叫做溢出。
溢出现象在平时我们徒手做数学计算的时候并不会出现,做算术题,位数不够了随时往前加就是了,草稿纸写到头了就换一张,总能继续往前写。
计算机里面可就不一定了,计算机里面的存储空间是有限的!
一般的编程语言给某一特定类型的数据值分配的存储