计算机组成原理学习3_14(第一章 信息)

1.1信息是什么(what is information)

从工程学的角度看,信息就是我们在接受到它之后,能够对事物的状态,异常,或者更多的差异性内容,有所了解。

更通俗一点的描述就是:信息就是用来描述“减少差异性的”某种量。

通过数据解决的差异性越大,数据所包含的信息也就越多。

例子:一副54张的扑克牌,描述其中一张扑克牌的信息(以下是四个独立选项)

1.扑克牌不是大小王。

2.扑克牌是红桃牌。

3.扑克牌是4.

4.扑克牌是红桃4.

可以很明显地理解,选项4包含的信息更多,更具体,而选项1包含的信息最少。

1.2信息的量化(quantify information)

虽然使用通用数学的10进制数来作为信息的载体我们会比较熟悉,但我现在要获取的是计算机系的学位,所以我还是以计算机通用的二进制位来作为信息的载体。

或者用更通用的术语;信息的载体:数据(data)

为了表示存在着的两种不同的状态,我们需要两种差异性的数据表示。(0,1)

而带权位的数据,使得我们使用数据所需要的位数为”log(信息量)“。

举例子,表示某种状态需要的信息为8,那么所需要的位数也就是3

(以000,001,010,011,100,101,110,111的解释方式的话)。

我们需要三位的二进制(bit)数据来表示这个信息。

而假如表示某种状态,或者差异的离散分布,需要的信息为36,log(36)=5.17;

但是我们无法表示5.17的位数;

所以要么用6位的数据表示这个信息,或者选用其他的解释方式。

1.3熵(entropy)

说是用来评价编码方式好坏的某种标准(但是没怎么听懂)

是某个信息标准临界线吗?

假如需要表示信息的具体位数需要为8位,那么8位的编码就是熵?低于8位的编码方式会造成信息的不足,高于8位的编码会造成多余的,不需要的位。可能会造成编码位数的浪费?(编码位数也是需要消耗资源的)

1.4编码(encodings)

编码就是将具体的东西(比如字符)映射到具体信息的载体上(0,1),然后通过相应的解释方式唯一正确地解释信息的过程。

假设我们需要表示A,B,C,D四个字符,并且用这四个字符组成字符串,那么我们对他们进行编码解释方式的设计。

首先是定长的编码方式;A:00,B:01,C:10,D:11。

那么以这种方式表示的一个序列,比如说CBDA,在数据(data)上就应该是:10011100,

或者可以选择精心设计过的编码方式比如:A:0,B:10,C:110,D:111。

这样的话CBDA就是:110101110。这样的编码方式也能确保解释方式的绝对确定性。

可以用二叉树简单验证的。

为了对比正确的编码方式,举个错误编码方式的例子:A:0,B:1,C:10,D:11。

这样的话,CBDA的编码就是:101110,但实际解释这段数据的时候,

会错误将其解释位:BABBBA,这样,就没有得到正确的信息。

就像是二叉树短寻路路径一样。

这里突然提起来二叉树,往上一看,好像上面的定长编码方式也可以理解为二叉树的定长路径,也就是完全二叉树的2^n?三叉数在数学上对定长信息的表示是3^n?10进制可以理解为一个十叉树?

假如无限延申的话,树论似乎可以延伸到所有数学中,而我现在学的是计算机组成,算了,就不对此深入探索了。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容