首页 理论教育 计算机数据:C/C++程序设计

计算机数据:C/C++程序设计

时间:2023-12-04 理论教育 版权反馈
【摘要】:八进制所谓八进制,就是其基数为8,采用0、1、2、3、4、5、6、7这八个数字符号,逢八进一。

计算机数据:C/C++程序设计

2.1 计算机中的数据

提到数据大家就会在脑海中浮现出诸如“1、2”这样的信息来,其实数据是一个很广义的概念,不是简单的数字呈现。在本节中我们要探讨在计算机中数据是如何表示的。

2.1.1 计算机的数据观

通过文字、声音、影像等方式,计算机可以描述形形色色的事物,给我们呈现出一个多姿多彩的世界。那么计算机是如何实现这些功能的呢?

其实,计算机只能感知电压、电流等物理量,这在《计算机组成原理》等书籍中已经有很深入的探讨,这里不再详细讨论。因而电压的高低、电流的通断等状态就很容易表示出来了。如果我们用“0”和“1”来表示这种状态的话,计算机中的数据就可以用“01”串来表示,实际上这就是进制

2.1.2 进制

在2.1.1节中,我们已经提到了二进制,那么如何理解二进制呢?它和十进制有什么联系呢?还有其他的进制么?这就是本节要讨论的问题。

我们认识数据总是从整数开始,这次也不例外,我们就以数字来讨论进制。

(1)十进制

十进制使用十个数字(0、1、2、3、4、5、6、7、8、9)记数,基数为10,逢十进一。由于我们是从十进制开始认识数字的,因为太过于熟悉,往往忽略了十进制的本质。但深入思考就能够发现0~9这十个数字实际上仅仅是符号而已。这十个符号表示了十种状态,又经过特定的组合形成了特定的记数方法。

(2)二进制

二进制以2为基数,只用0和1两个数字表示,逢二进一。二进制与十进制数遵循一样的运算规则,但比十进制更简单。例如:

①加法:0+0=0;0+1=1;1+0=1;1+1=0。(www.xing528.com)

②减法:0-0=0;1-1=0;1-0=1;0-1=1。

③乘法:0×0=0;0×1=0;1×0=0;1×1=1。

④除法:0÷=0;1÷1=1;除数不能为0。

(3)八进制

所谓八进制,就是其基数为8,采用0、1、2、3、4、5、6、7这八个数字符号,逢八进一。

八进制与十进制运算规则一样。那么为什么要用八进制呢?实际上,八进制与十六进制的引用主要是为了书写和表示方便,因为二进制表示位数比较长。如:(1024)10用二进制表示为(10000000000)2,共有11位数字,用八进制表示为(2000)8。更重要的是,二进制与八进制之间存在着一种对等关系,每三位二进制与一位八进制数完全对等(23=8)。根据这种关系,就可以很方便地进行二进制和八进制的相互转换,而十进制不具备这一特点。

(4)十六进制

十六进制是应用非常广泛的一种计数制。通过上面的讨论不难看出十六进制是二进制数的一种更加紧凑的表示方法。

十六进制基数为16,采用0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F(其中A至F也可以是小写)这十六个数字符号,逢十六进一。

我们通过表2-1对上述几种进制的数据关系做一个对照。

表2-1 进制之间的对照关系

img13

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈