数,数制
每天都会对着计算机发呆,如果对于计算机的数据表示如果没有理解就不能说熟悉计算机。学习过计算机基础的人都清楚的知道,在计算机中数据是以二进制流的形式进行运算的。可是为什么会是二进制?他们在计算机中是怎样存储,并且进行计算的呢?
所谓的数是一种抽象的概念,我们用一百表示数,用一万表示数表示的都是抽象的一个概念,“一百”和“一万”都是表示这个抽象概念的不同的符号。人是一个抽象的概念,汉字“人”和英语“Person”便是不同的符号表示。我们之所以用符号表示是为了交流,应用的方便;同样的,计算机也需要进行交流,也需要通信,于是也就需要一种数据的表示方法。二进制是计算机采用的表示符号由其特定的结构决定的。计算机的逻辑电路又无数的门电路组合而成,组合逻辑和时序逻辑操作的是高低电平信号,表示符号就是‘1’和‘0’。我们比较常见的数据表示还有八进制,十进制,十六进制;其中二进制,八进制,十六进制之间的互相转换最容易,十进制则主要是BCD码。对于数据的运算主要也就有与,或,非,取反,移位等操作。映射到数字电路当中就是门。不同的数据在计算机中存储所占的空间是不同的,同时空间和时间又是一个比较矛盾的问题。计算机对于不同的长度,不同表示方法的数据的操作需要的指令的数据是不同的,当然性能也就有所差异。比较通常的空间是8,16,32,64,80位。比较特殊的是浮点数的表示方法。对于数据的运算还有零扩展,符号扩展,饱和运算,打包解包,规格化反向规格化等。
![Creative Commons License](http://i.creativecommons.org/l/by/2.5/cn/88x31.png)
本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名孙镜涛(包含链接),具体操作方式可参考此处。如您有任何疑问或者授权方面的协商,请给我留言。