6.1 信息表示
理解计算机工作原理的第一步是理解计算机内的信息表示方式。正如从Java编程中所了解到的,无论是数字、文本、可执行文件、图像、音频还是视频,凡是可以表示成0和1序列的所有形式的信息,都可以用数字计算机进行处理。对于每种类型的数据,标准编码方法已得到广泛应用:ASCII标准将128个不同字符与7位二进制数相关联,MP3文件格式严格地规定了将每个原始音频文件编码为0/1序列的方式,.png图片格式指定了将数字图像中的像素最终表示为0/1序列的方法,等等。
在计算机中,信息通常组织为字(word)的形式,字是一个固定长度(称为字长)的位序列。后续你将了解到,字长在任何一台计算机的架构中都起着关键的作用。在早期的计算机中,典型的字长是12位或16位;32位的字长又被广泛使用多年;而现在,64位字长成为常态。
每台计算机中的信息内容是一个字的序列,每个字都是由固定数量的位(bit)组成,每位都是0或者1。由于我们可以将每个字解释为二进制表示的数字,所以所有信息都是数字,所有数字也都是信息。
计算机内一个给定的位序列的含义取决于上下文。这是我们将在本章通篇都会重复的另一句话。例如,如你所见,根据上下文,我们可能会将二进制字符串1111101011001110解释为正整数64206、负整数-1330、实数-55744.0或两个字符的字符串“eN”。
二进制数字系统对计算机而言可能很方便,但对人类而言极其不便。如果你对这一事实表示难以接受,你可以尝试记住16位二进制数1111101011001110,然后合上本书并将其默写下来。为了适应计算机以二进制进行通信的需求,同时适应我们使用更紧凑的表示的需要,我们将在本节介绍十六进制(基数为16)数字系统,它可以很方便地将二进制数字进行缩写。因此,我们从详细介绍十六进制开始。 ...
Get 计算机科学导论:跨学科方法 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.