您当前的位置:首页 > 美文摘抄 > 内容

计算机如何区别原码与补码?原码,反码,补码的定义是什么

不是计算机来区别原码、补码,即原码、反码和补码,正数的原码、反码和补码,负数的补码最高位为1,计算机如何区别原码与补码使用补码的意义在于:可把负数变正数,负数的原码最高位为1,负数的反码最高位为1,补码原码。

计算机如何区别原码与补码

使用补码的意义在于:可把负数变正数,可把减法变加法。

从这个实用性来讲,计算机中,只是用补码。原码根本就不存在。

-------

计算机,是执行程序的。程序,都是由人,编写的。

所以,不是计算机来区别原码、补码。

而是由人,来区别。

-------

如果限定,只是使用两位十进制数 0~99,共有一百个。

那么,减一,就可以用 +99 代替:

  24 - 1 = 23

  24 + 99 = (1)  23

只保留两位,忽略进位,结果就是相同的。

99,就称为-1 的补数。

-------

看到了吗?  出现了进位。

如果你忽略了进位,实际上就是减法运算!

--这时,99 就是补数,是当做-1 来用的。

如果不忽略进位,结果就是 1 百 23,这还是加法运算。

--此时,99,就是正常的数字。

。。。。。。

一个代码,到底是原来的数字,还是代表负数?

就看你怎么对待它了。

这些都是由编程人,来决定。

计算机,它才不管这些。

原码,反码,补码的定义是什么

有符号数,有三种表示方法,即原码、反码和补码。

但是,在计算机系统中,数值一律用补码来表示和存储。

所以,在计算机系统中,原码和反码,都是不存在的。

----------

想要理解补码,要先从补数开始。

钟表的时针转一圈,周期是 12 小时。

倒拨 3 小时,就可以用正拨 9 小时代替。

9 就是-3 的补数。 9 = 12-3。

同理,分针倒拨 X 分,就可以用正拨(60-X)代替。

60 是分针的周期。

------

对于两位十进制 0~99,周期就是一百。

这时,减一,你就可以用 +99 代替。

   25 - 1 = 24

   25 + 99 = (1) 24

结果取两位,舍弃进位。这两种算法,功能就是相同的。

   99,就称为-1 的补数。

   98,就是-2 的补数。

   。。。

   负数的补数 = 周期 + 该负数。

利用补数,就可以用加法,代替减法运算。

正数,不需要求补数。

------

计算机使用二进制,补数,就改称:补码。

八位二进制,共有 256 个数字。负数的补码 = 256+该负数。

16 位二进制,共有 2^16 个数字。负数的补码 = 65536+ 该负数。

这就是补码的定义式。在你的书上,一定能找到这种算式。

------

在八位时:

 -1 的补码是:256-1 = 255 = 1111 1111(二进制)。

 -2 的补码是:254 = 1111 1110。

 -3 的补码是:253 = 1111 1101。

 。。。

 -128 补码:128 = 1000 0000。

------

有了补码,计算机仅需要一个加法器,就可以加减通用了。

而原码和反码,不具备这种能力。

所以,原码和反码,究竟是怎么定义,就不必关心了。

因为,它们,毫无用处。

电脑中原码和补码是什么关系

电脑中,只有补码。并没有原码和反码。正数的原码、反码和补码,都是相同的。如果绝对值相同,则有,正数的补码+负数的补码=0。那么,负数的补码=0-正数的补码。

什么是一个数的原码,反码,补码

原码,反码,补码针对的是定长二进制存储器表示的有符号整数。正数的原码,反码,补码都相同。负数的原码最高位为1,其他位为整数的绝对值(零有+0、-0之分)。负数的反码最高位为1,其他位为整数的绝对值按位取反(零有+0、-0之分)。负数的补码最高位为1,其他位为整数的绝对值按位取反再加一(零没有+0、-0之分,最常用)。比如-1的原码为0x80000001,反码为0xFFFFFFFE,补码为0xFFFFFFFF。//---------在计算绝对值、取反、加一的过程中,无论提升成多少位去计算,最后装填时,都保留后几位(符号位以外相应位数)。


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 包装箱标识卡(包装箱标识)

下一篇: 什么样的属于劳务(一般劳务和其他劳务的区别)



推荐阅读

网站内容来自网络,如有侵权请联系我们,立即删除! | 软文发布 | 粤ICP备2021106084号