从计算机码制看迭代--挖掘之二
先解释一个名词:码制 码制是进行数值运算的时候计算机中对带符号数的编码方式。 第一种出现的码制:原码 它最接近人对数字的表示,0的原码由两种表示方式。 正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值。用这样的表示方法得到的就是数的原码。 它是最原始的胚胎,符号位在运算的时候需要单独处理,否则就会出现正数和负数相加会一直出现符号位为1,这是负数。然后就崩溃了。虽然最原始,至少它可以解决一部分问题了,它有存在的价值了。 第二种出现的码制:反码 它是基于原码上的进一步尝试,0的反码还是有两种方式。 对于一个带符号的数来说,正数的反码与其原码相同,负数的反码为其原码除符号位以外的各位按位取反。 它是修正版,符号位已经不需要单独处理了,可以参与到运算过程中。这是一大进步,采用这种码制,计算机的效率能提高很多,虽然0有两种表现方式。还是有缺陷的地方,至少它已经搞定大部分的问题了。 第三种出现的码制:补码 它是在反码上的进一步完善,0的表示方式只有一种了。 正数的补码与其原码相同,负数的补码为其反码在最低位加1。 它是最终版,已经可以算作一个完善的方案了,它已经脱离了人对数字的直观表示,它是计算机中很完备的符号数表现机制了。 这非常符合事物发展的一般过程,从刚开始出现的时候,问题很多,功能不够完善,只能部分覆盖需求;到进一步的大版本修复,覆盖大部分存在的问题,功能也可以说的过去;到最后一个成熟的解决方案出现,需要很多人去认真的思考,执行,完善。但是不完善的方案也有它完美发挥的场合,就需要仔细甄别环境和条件了。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |