目录
人们使用很多计数系统来表示数字。
有些计数系统(如罗马数字)并不适合用于算数运算;而印度技术系统经过改进,传入欧洲后变成了阿拉伯计数系统,这种数字方便了数学、科学和商业计算。
现代的计算机技术系统是基于占位符概念的,使用了最先出现在印度计数系统中的零。
虽然在日常生活中使用的是十进制,但计算领域通常使用八进制、十六进制和二进制。
十进制数
数字的书写方式是基于10的幂数。例如,对于数字2468,2表示2个1000,4表示4个100,6表示6个10,8表示8个1。
2468 = 2 x 1000 + 4 x 100 + 6 x 10 + 8 x 1
一千是10x10x10或10的3次幂,用10³表示。使用这种表示法,可以这样书写上述关系:
2468 = 2 x 10³ + 4 x 10² + 6 x 10¹ + 8 x 10º
因为这种数字表示法是基于 10的幂,所以将它称作基数为10的表示法或十进制表示法。可以
用任何数作基数。例如,C++允许使用基数8(八进制)和基数16(十六进制)来书写整数(请注
意,10º为1,任何非零数的0次幂都为1)。
八进制整数
八进制数是基于8的幂的,所以基数为8的表示法用数字0-7来书写数字。C++用前缀0来表示八进制表示法。也就是说,0177是一个八进制值。可以用8的幂来找到对应的十进制值:
八进制 | 十进制 |
---|---|
177 | = 1 x 8² + 7 x 8¹ + 7 x 8º |
= 1 x 64 + 7 x 8 + 7 x 1 | |
= 1 |