计算机的计算

来源:互联网 发布:js根据class获取元素 编辑:程序博客网 时间:2024/05/06 19:05

章节导学

计算机使用二进制。人们习惯使用十进制,据说是因为人类的双手有十根手指头。与十进制相比,二进制有什么特点呢?

在理论上,二进制与十进制虽各有千秋,但没有本质上的区别,计算时,既可以用十进制,也可以用二进制。但是,计算机中的二进制与数学上的二进制却有很大的差别。计算机的世界中没有正负号,没有小数点,……,只有(只能模拟)“0”和“1”。计算机使用了“纯粹”的二进制。这就意味着在使用计算机处理数据之前需要先对数据进行“编码”。

把现实世界中的信息变成由0和1组成的“数串”就是所谓的数字化信息编码。编码是一种对应关系,但并非一一对应,因此,同样的数据可能有多种编码方式,不同的数据可能对应于同样的编码。因为编码后的数据只含有“0”和“1”,所以计算机能识别和处理它们。

正负号的编码看似简单,却藏有玄机。小数点的位置多变,如何编码是个挑战。一个字符具有多种编码,输入时需输入码(输入法),存储时需机内码,输出时需字形码。用0和1组成的“数串”编码字符的形状时需要一点想象力。

编码的方式决定了计算机模拟“二进制”计算时采用的计算规则,而这些规则又使得计算机中的计算呈现出独特性。如计算机中的整数构成一个环。计算机中10个0.1相加不等于1。计算机是一种机器,当一台计算机被生产出来时,它的计算能力已经“固定”。它会算的,它肯定算对;它不会算的,它肯定算不对。使用计算机时,不要“强人所难”。

计算机究竟是怎样进行计算的?

计算机使用二进制,但用作与计算机交流的工具——C语言却不使用二进制,这又是为什么呢?

本章将介绍计算机的一些基础知识。作为非计算机专业的学生,只需知道一些结论即可,如对于整数计算机的计算能力大约只限在-21亿至21亿内的整数,无需知道为什么。并非只有计算机专家才能利用C语言使用计算机,正如不是每个出色的赛车手都是顶尖的赛车专家。

第0章 计算机的计算

第0章 计算机的计算... 380

0.1 二进制... 380

0.1.1 位权... 380

0.1.2 十进制数转换成二进制数... 381

0.1.3 二进制的运算... 384

0.2 计算机中的计算... 385

0.3 整数的编码... 387

0.4 补码的加法运算... 389

0.4.1 补码加法运算举例... 389

0.4.2 补码的符号位为何可以参加运算?...390

0.5 小数的编码... 393

0.5.1 定点小数... 393

0.5.2 浮点数... 395

0.6 计算... 398

0.6.1 不同的角度... 398

0.6.2 C语言不用二进制... 398

0.7 字符的编码... 400

0.7.1 机内码... 400

0.7.2 输入码和字形码... 402



原创粉丝点击