原码是符号位加上真值的绝对值, 即用第一位表示符号,其余位表示值;反码的表示方法,正数的反码是在其原码的基础上,符号位不变,其余各个位取反;补码的表示方法,正数的补码是在其原码的基础上,,符号位不变,其余各位取反,最后+1。
在计算机系统中,并没有原码和反码,数值,一律采用补码表示和存储。
数值和补码,可以直接转换,并不需要绕道原码和反码。
数值和补码的关系,用十进制来说明,比较容易理解。
你看 2 位 10 进制数的运算:
25 - 1 = 24
25 + 99 = (一百) 24
只要你把超出 2 位数的进位舍弃,+99 就能代替-1。
同时,加法,也就能代替减法。
同理,+98,也就你代替-2。
。。。
这些正数,就称为“负数的补数”。
求补数的公式:补数=负数+计数周期。
其中,n 位 10 进制数的周期是:10^n。
而零和正数,必须直接参加运算,就不需要求补数了。
------------------------
在计算机中,用的是二进制,这就用到了:补码。
一个字节,是 8 位 2 进制数。
二进制的计数范围是:0000 0000~1111 1111。
换算成十进制,就是:0 ~ 255,共有 256 个数字。
那么,其计数周期是:2^8 = 256。
此时,就可以用 255 = 1111 1111,代替-1。
254 = 1111 1110,代替-2。
。。。
这些正数,也就是“负数的补码”。
计算公式,依然是:补数=负数+计数周期。
其中,n 位 2 进制数的周期是:2^n。
------------------------
示例,+1 + (-1) = 0。
用补码计算如下:
0000 0001 = 1
+ 1111 1111 = 255
--------------
(1) 0000 0000 = 0
进位 1 必须舍弃,那么,结果就是:0。
-------------------------
利用补码,可以把减法,转换成加法运算。
从而,就能简化计算机的硬件。
原码和反码,都没有这种功能。
所以,在计算机中,根本就没有原码和反码。
老外数学不好,也弄不懂“补码的意义”。
所以,才编造了“符号位原码反码取反加一符号位不变”这些垃圾。
其实,这些步骤,并没有任何理论基础,都是臆想。
在计算机中表示的带符号的二进制数称为“机器数”(用形式上的码表示真实的数)。机器数有3种表示方式:原码、反码和补码。
机器数的最高位为符号位,0表示正数,1表示负数,数值跟随其后。
原码是与真值最接近的一种表示形式。
原码的定义:
[X]原 ={ X (0 ≦ X <1)
1 - X = 1 + |X| (-1 < X ≦ 0)}
即[X]原 = 符号位 + |X|
例:X = -0.1011,[X]原 = 1-X=1.1011
数值零的真值有 +0 和 -0 两种表示形式,其原码也有两种表示形式:[+0]原 = 00000,[-0]原 = 10000
当运算结果不超出机器能表示的范围时,运算结果仍以原码表示。
机器数的最高位为符号位,0表示正数,1表示负数。其余取反。
反码零有两种表示形式:
[+0]反=0.0000 [-0]反=1.1111
机器数的最高位为符号位,0表示正数,1表示负数。
串行求补:从末位开始,连续的0不变,第一个1也不变,其余取反。
补码的定义:(反码+1)
[X]补 = { X (0 ≦ X < 1)
2 + X = 2 - |X| (-1 ≦ X < 0)}
即 [X]补 = 2 · 符号位 + X mod2
此处,2为十进制数,即二进制的10。
例:X = -0.1011,则[X]补 = 2+X=1.0101
数值零的补码表示形式是唯一的:[+0]补 = [-0]补 = 0.0000。可根据补码定义计算:
当X=-0.0000,[X]补=2+X=10.0000+0.0000=10.0000=0.0000 mod 2
例:X = +0.1011 Y = -0.1011
由此可见,正数的原码、反码、补码的表示形式相同(三码合一),而负数则各不相同。
声明: 我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本站部分文字与图片资源来自于网络,转载是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们(管理员邮箱:daokedao3713@qq.com),情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
本站内容仅供参考,不作为诊断及医疗依据,如有医疗需求,请务必前往正规医院就诊
祝由网所有文章及资料均为作者提供或网友推荐收集整理而来,仅供爱好者学习和研究使用,版权归原作者所有。
如本站内容有侵犯您的合法权益,请和我们取得联系,我们将立即改正或删除。
Copyright © 2022-2023 祝由师网 版权所有
邮箱:daokedao3713@qq.com