关于补码问题,百度百科中貌似有错误,求大神解惑。具体情况如下。 补码到底是什么意思,百度百科里的解释根本看不懂。
作者&投稿:罗黎 (若有异议请与网页底部的电邮联系)
原码和补码怎么算?麻烦不要百度一堆专业术语来糊弄我,谢谢大神~
1、的错误,楼主已经看出来了,不用再说。
2、的错误,除了整数、负数分不清之外,还混淆了《补码》、《求补码》的概念。
针对一个数(称为真值),可以求出它的原码、反码和补码。
对一个补码,还能再求什么补码!
很明显,这是基本概念不清。
3、世界上的数,只有零,从来就没有正零和负零。
正零和负零,只是一种代码(原码和反码),并不是数。
-----
问题二:[X+Y]补 = [X]补 + [Y]补 这个要怎么证明啊?
又不是原码,为什么能直接相加减?
把补码的定义式,代入这个等式的两端,即可看出,等式成立。
假设在八位二进制数的条件下,定义式如下:
[X]补 = X 0 <= X <= 127
[X]补 = 256 - |X| -128 <= X < 0
百度百科是自由、开放、人人可编辑的百科全书,词条由网友和专家贡献,有错误楼主可以去改,但是要添加对应的参考资料。
原码和补码怎么算?
原码和补码,都是用来表示带符号数的。
以补码形式,来代表带符号数,就可以和无符号数一样进行加减运算。
怎么算?就是逢二进一。
补码,为方便计算机运算,原理可以参考时钟,例如要将钟从10调到7,可以往回调3(-3),或者往后调9(+9),在这里-3与+9就是等价的,对于时钟来讲-3的补码就是+9。在计算机中对于n位2进制数的计算,由于位数确定,加上一个负数,等同于加上2的n-1次方加上此负数的值(最高位位符号位),所加的值即为负数的补码。整数补码算法楼上已有,不再重复。小数补码的计算以及溢出之类的相关知识建议参考下三级偏硬的教程,一般都会有比较详细的描述。
这里说的三个特性,都是错误的。1、的错误,楼主已经看出来了,不用再说。
2、的错误,除了整数、负数分不清之外,还混淆了《补码》、《求补码》的概念。
针对一个数(称为真值),可以求出它的原码、反码和补码。
对一个补码,还能再求什么补码!
很明显,这是基本概念不清。
3、世界上的数,只有零,从来就没有正零和负零。
正零和负零,只是一种代码(原码和反码),并不是数。
-----
问题二:[X+Y]补 = [X]补 + [Y]补 这个要怎么证明啊?
又不是原码,为什么能直接相加减?
把补码的定义式,代入这个等式的两端,即可看出,等式成立。
假设在八位二进制数的条件下,定义式如下:
[X]补 = X 0 <= X <= 127
[X]补 = 256 - |X| -128 <= X < 0
百度百科是自由、开放、人人可编辑的百科全书,词条由网友和专家贡献,有错误楼主可以去改,但是要添加对应的参考资料。