清华大学软件学院与计算机系,计算机组成原理课中的工程师思维-清华大学软件学院可信网络与系统.PDF...

计算机组成原理课中的工程师思维-清华大学软件学院可信网络与系统

专栏 第 13 卷  第10 期  2017 年 10 月

计算机组成原理课中的

工程师思维

杨 铮

关键词 :工程师思维 解决问题 计算机 清华大学

每个人看到 “工程师思维”这五个字都有自己 也会是其他方面的代价。工程师做事应先考虑代

的理解。在我看来,工程师思维中最重要的目标之 价。信息的表现形式多种多样,如整数、小数、文

一是要办成事,因此一切思维和方法都是面向解决 字、图片、音乐、视频等等,而计算机只能存储非

问题的。许多学生申请学校时,在简历或个人陈述 0 即1 的比特串。因此,在计算机中表示信息,需

(Personal Statement) 中介绍自己具有problem-solving 要有一定的规则。以整数为例,我先考虑一下一个

的能力。这个 “problem-solving”,我认为就是工程 整数需要用多少比特来表示?整数的数量是可数无

师思维的一个体现。 穷的,而计算机中的比特是有限的,只能表示一定

面对具体问题,在特定的环境下思考针对这个 范围的整数。尽管表示范围有限,但计算机中常见

问题的解决办法,即《孙子兵法》中的 “势者,因 的整数表示方法 (例如32 比特补码表示)可以满

利而制权也”。例如十二诡道中的后八个,“利而诱 足现实中很大一部分需求,而且处在表示范围内的

之,乱而取之,实而备之,强而避之,怒而扰之, 整数都能精确表示。进一步考虑小数,情况就更加

卑而骄之,佚而劳之,亲而离之”——也就是俗话 复杂,不仅范围有限,精度也有限。比如,有限的

讲的 “兵来将挡,水来土掩”。有办法并且坚信办 比特串就不能精确表示0 .1 这个重要的小数。换句

法总比困难多,是工程师思维的重要原则。 话说,想精确表示0 .1 这个小数,多少比特都不够用。

计算机作为拥有信息表示、运算、存储以及其 我们只能用有限的比特表示合理范围内的、合理精

它信息处理能力的复杂系统,除了以计算机理论作 度的小数,通常,这个比特数是32 位或64 位。那

为基石,其设计与实现还处处体现了工程师思维, 么如何表示呢?一种思路是借鉴整数表示方法,将

特别是体现着工程师解决问题的思路。注意,是思 比特串分为两部分,用整数形式来分别表示小数的

路而不仅仅是结果。从这个角度考虑,学习 “计算 整数部分和小数部分。工程师进一步思考,能否在

机组成原理”课程就是理解和掌握工程师思维的最 有限的64 位比特上表示更大范围、更精确的小数?

便捷方式之一。 这个思考催生了浮点数,即使用二进制科学计数法

s E

(符号s、尾数M 、阶数E )来表示小数(-1) M2 ,

M E frac exp

以有限的资源办成事 其中 和 分别编码为 与 存储在计算机中

(如图1 )。有了浮点数,表达范围从不足264 提升

做任何事情都是有代价的,即使不是钱的代价, 到约2210 ,表达精度从不足2-64 细化到最小2-2(52+10) ) 。

44

第 13 卷  第10 期  2017 年 10 月

Norm) 情况,即当阶数是特定值时(00000000000 ,1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值