从计算机码制看迭代--挖掘之二

先解释一个名词:码制

码制是进行数值运算的时候计算机中对带符号数的编码方式。


第一种出现的码制:原码

它最接近人对数字的表示,0的原码由两种表示方式。

正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值。用这样的表示方法得到的就是数的原码。

它是最原始的胚胎,符号位在运算的时候需要单独处理,否则就会出现正数和负数相加会一直出现符号位为1,这是负数。然后就崩溃了。虽然最原始,至少它可以解决一部分问题了,它有存在的价值了。


第二种出现的码制:反码

它是基于原码上的进一步尝试,0的反码还是有两种方式。

对于一个带符号的数来说,正数的反码与其原码相同,负数的反码为其原码除符号位以外的各位按位取反。

它是修正版,符号位已经不需要单独处理了,可以参与到运算过程中。这是一大进步,采用这种码制,计算机的效率能提高很多,虽然0有两种表现方式。还是有缺陷的地方,至少它已经搞定大部分的问题了。


第三种出现的码制:补码

它是在反码上的进一步完善,0的表示方式只有一种了。

正数的补码与其原码相同,负数的补码为其反码在最低位加1。

它是最终版,已经可以算作一个完善的方案了,它已经脱离了人对数字的直观表示,它是计算机中很完备的符号数表现机制了。


这非常符合事物发展的一般过程,从刚开始出现的时候,问题很多,功能不够完善,只能部分覆盖需求;到进一步的大版本修复,覆盖大部分存在的问题,功能也可以说的过去;到最后一个成熟的解决方案出现,需要很多人去认真的思考,执行,完善。但是不完善的方案也有它完美发挥的场合,就需要仔细甄别环境和条件了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值