上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.2 计数系统
计数系统是一种表示数值的机制。今天,大多数人使用十进制(即基数为10)计数系统,而大多数计算机系统使用二进制(即基数为2)计数系统。弄混这两种计数系统会导致低级的编程错误。
十进制计数系统是阿拉伯人发明的(这是十进制数字被称为阿拉伯数字的原因)。十进制计数系统采用位值记数法来表示数值,只用到了少量符号。位值记数法中的符号除了本身的含义,其位置也有意义。这种机制比其他非位值记数的表示形式要先进得多。图2-1中数字25的tally-slash表示形式说明了非位值记数系统和位值记数系统之间的区别。
图2-1 采用tally-slash计数系统表示的数值25
为了表示数值n,tally-slash表示形式一共用了n个记号。为了便于理解,大多数人5个5个地将记号分开,如图2-1所示。tally-slash计数系统的优点在于容易统计对象的数量。但这种记数法很笨重,而且很难进行算术运算。tally-slash计数系统的最大问题在于数值所占物理空间较大。数值n的表示形式需要的空间与n成正比。如果n的值特别大,这种表示法就不能用了。