计算机原码反码补码怎样计算的啊?

作者&投稿:闭昭 (若有异议请与网页底部的电邮联系)
计算机原码反码补码怎么算~

计算机中,并没有原码和反码,只是使用补码,代表正负数。
使用补码的意义:可以把减法或负数,转换为加法运算。从而简化计算机的硬件。
------------
比如钟表,时针转一圈,周期是 12 小时。
倒拨 3 小时,可以用正拨 9 小时代替。
9,就称为-3 的补数。
计算方法:12-3 = 9。
对于分针,倒拨 X 分,就可以用正拨 60-X 代替。
------------
如果,限定了两位十进制数 (0~99),周期就是 100。
那么,减一,就可以用 +99 代替。
  24-1 = 23
  24 + 99 = (1) 23
忽略进位,只取两位数,这两种算法,结果就是相同的。
于是,99 就是 -1 的补数。
其它负数的补数,大家可以自己求!
求出了负数的补数,就可用加法,代替减法了。
------------
计算机中使用二进制,补数,就改称为【补码】。
常用的八位二进制是:0000 0000~1111 1111。
它们代表了十进制:0~255,周期就是 256。
那么,-1,就可以用 255 = 1111 1111 代替。
所以:-1 的补码,就是 1111 1111 = 255。
同理:-2 的补码,就是 1111 1110 = 254。
继续:-3 的补码,就是 1111 1101 = 253。
。。。
最后:-128,补码是 1000 0000 = 128。
计算公式:负数的补码=256+这个负数。
正数,直接运算即可,不需要求补码。
   也可以说,正数本身就是补码。
------------
补码的应用如: 7-3 = 4。
用补码的计算过程如下:
    7 的补码=0000 0111
   -3的补码=1111 1101
--相加-------------
   得:  (1) 0000 0100 = 4 的补码
舍弃进位,只保留八位,作为结果即可。
这就是:使用补码,加法就代替了减法。
所以,在计算机中,有一个加法器,就够用了。
原码和反码,都没有这种功能。
------------
原码和反码,毫无用处。计算机中,根本就没有它们。

在计算机系统中,数值,一律采用补码来表示和存放。
原码和反码的编码方式,都是不合理的。
 一个零,它们都编造了两个代码:-0、+0。
所以,在计算机中,原码和反码,都是不存在的。
 所谓的“取反加一”,也是不可能实现的。
真值和补码,可以直接互相转换。
它们的对应关系如下:

只要记住:【补码的首位是负数】这个特点,即可。
--------------------------
码长 8 位时,-128 的原码反码,都是不存在的。
但是,-128,确实有补码 1000 0000。
此时,原码反码补码,是无法计算的。

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


补码,其实,就是一个“代替负数进行运算”的【正数】。


使用了补码(正数)之后,在计算机中,就没有负数了。


随之而来的就是:减法运算,也都不存在了。


所以,借助于补码,计算机只需要配置一个加法器,就能走遍天下。


使用补码的目的,也就是:简化计算机的硬件。


而原码、反码,都没有这种功能,所以,计算机中,根本就不用它们。


原码和反码,只能在纸上写一写而已。

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

它们之间你怎么写,都没有关系,反正,都没有任何用处!

---------------------

补码(就是【正数】),怎么就能代替负数呢?


你看时针:倒拨 3 小时,可以用正拨 9 小时代替吧?


你看三角函数:-π/2、+3π/2,两者的函数值也是相同的吧?


10 进制数,如果限定只用 2 位 ,那么就会有:


   25 - 1 = 24


   25 + 99 = (一百) 24


如果忽略进位一百(10^2),+99 就可以代替-1。


上面所说的这些正数,就是“负数的补数”。


求补数的公式是: 补数(即正数)= 负数 + 周期。


正数,必须直接就参加运算,不可再做任何变换。


就是说:正数,本身就已经是正数了,它并不存在什么补数。


---------------------


计算机用二进制,补数,那就称为“补码”了。


8 位 2 进制的周期,是:2^8 = 256。


8 位 2 进制,总共可以组成 256 个代码。


用其中的一半(即 128 个)代表负数,就是:-1 ~ -128。


那么:


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


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


。。。


-128 的补码,就是:128 = 1000 0000。

---------------------


至此,你就可以推出“补码的定义式”:


 当 X >= 0,  [ X ]补 =  X;     零和正数不用变换。


 当 X < 0,  [ X ]补 =  X + 2^n。 n 是补码的位数。


这是通用的公式。


在严谨一点的书上,都有这种公式,你去翻翻书吧。


---------------------


按照公式求补码,是极为简便的,而且还能理解补码的意义。


而且,反过来求(由补码求数值),也是很方便的。


实际上,你只要会“补码与数值”的互换,就够用了。


那么,没有必要学“原码反码取反加一符号位不变”了。


况且,原码和反码比补码,还少了一个数,取反加一,也无法使用。


当然,那些数学不好的老师,也只能使用这些“隔路”的花样。


---------------------


算式 5 - 7 =-2,计算机用八位补码计算如下:


    5 = 0000 0101


 [-7]补码 = 1111 1001


--相加-----------


  得: (1) 1111 1110 = [-2]补码


舍弃了进位,结果,就是正确的。


---------------------




什么是原码、补码和反码?
原码 = 反码 + 1 反码 = 补码 - 1 补码 = 2^n - 1,其中n为数值的位数 例如,假设我们要计算一个8位有符号整数的原码、补码和反码,则可以按照以下步骤进行计算:1. 将8位二进制数10000001转换为十进制数:127 2. 计算原码:原码 = 反码 + 1,则反码为11111110,加上1得到原码为10000000...

计算机原码反码补码怎样计算
补码的表示方法是:正数的补码就是其本身。负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1。(即在反码的基础上+1)。[+1] = [00000001]原 = [00000001]反 = [00000001]补 [-1] = [10000001]原 = [11111110]反 = [11111111]补 对于负数,补码表示方式也是人脑无法直观看...

原码补码反码怎么计算?
1、原码符号位1不变,整数的每一位二进制数位求反,得到反码。2、反码符号位1不变,反码数值位最低位加1,得到补码。方法:(1)正整数的原码,反码和补码计算。【符号位为0,原码=反码=补码】(2)负整数的原码,反码和补码计算,先求原码,再求反码,最后求补码。(3)根据补码求真值,一般使...

计算机中的原码,补码,反码是什么意思?
计算机中的原码、反码和补码是表示有符号整数的不同方式,用于在计算机中进行整数运算和表示负数。以下是它们的定义和示例:原码(Sign-Magnitude):原码的表示方式最简单,将整数分为两部分:符号位和数值位。符号位用于表示正数或负数,0表示正数,1表示负数。数值位表示整数的绝对值。例如,十进制数 -...

原码反码补码是多少
+35:原码=反码=补码=0100011 -35:原码:1100011;反码:1011100;补码:1011101;

计算机的原码,反码,补码是怎么回事?可以举例说明吗?
反= 0 0000111 B;[-7]反= 1 1111000 B。3、补码 正数:正数的补码和原码相同。负数:负数的补码则是符号位为“1”。并且,这个“1”既是符号位,也是数值位。数值部分按位取反后再在末位(最低位)加1。也就是“反码+1”。例如:[+7]补= 0 0000111 B;[-7]补= 1 1111001 B。

原码、补码、反码之间是怎样转换的?
-负整数:首先计算原码,然后将原码的除符号位外的所有位取反得到反码,最后在反码的最低位加1得到补码。补码的表示方法与模运算有关。例如,计算机的运算通常基于字长的模,如8位字长对应256的模。对于负数,其补码实际上是在正数的基础上加上模数,这样可以将减法问题转换为加法,方便硬件的加法器处理...

计算机原码反码补码怎么算
计算机中,并没有原码和反码,只是使用补码,代表正负数。使用补码的意义:可以把减法或负数,转换为加法运算。从而简化计算机的硬件。--- 比如钟表,时针转一圈,周期是 12 小时。倒拨 3 小时,可以用正拨 9 小时代替。9,就称为-3 的补数。计算方法:12-3 = 9。对于分针,倒拨 X 分,...

计算机源码,反码,补码之间怎么计算?
1、正整数的原码、反码、补码完全一样,即符号位固定为0,数值位相同。2、负整数的符号位固定为1,由原码变为补码时,规则如下:原码符号位1不变,整数的每一位二进制数位求反,得到反码;反码符号位1不变,反码数值位最低位加1,得到补码。3、例如正整数的原码为01110110,则反码和补码也为...

什么叫机器数、原码、反码、补码?
补码的表示方法是:正数的补码就是其本身 负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1.(即在反码的基础上+1)[-1]= [10000001]原 = [11111110]反 = [11111111]补 计算机中的存储系统都是用2进制储存的,对我们输入的每一个信息它都会自动转变成二进制的形式,而二进制在存储...

清原满族自治县15879737542: 一个数的原码,反码,补码怎么算啊? -
厍聪金固:[答案] 数在计算机中是以二进制形式表示的. 数分为有符号数和无符号数. 原码、反码、补码都是有符号定点数的表示方法. 一个有符号定点数的最高位为符号位,0是正,1是副. 以下都以8位整数为例, 原码就是这个数本身的二进制形...

清原满族自治县15879737542: 原码,反码和补码之间有怎样的计算关系? -
厍聪金固:[答案] 原码 正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值.用这样的表示方法得到的就是数的原码. 反码 对于一个带符号的数来说,正数的反码与其原码相同,负数的反码为其原码除符号位以外的各位按位取反. 补码 正数的...

清原满族自治县15879737542: 和计算机有关的,反码,原码,补码!求它们的计算方法!望各位指教! -
厍聪金固: 原码就是一个n位二进制数,例如11110000B 反码把原码按位取反,00001111B 补码把反码加一,产生的最高位进位舍弃,00010000B 补码就是把反码加1 ,就可以了 反码0101010B的补码是0101011B

清原满族自治县15879737542: 原码反码补码 - 原码补码反码如何计算原码补码反码详细计算
厍聪金固: 正数的原反补一样, 负数:原码就是把原来的数化成2进制,比如10的原码就是00001010,+10的原码是00001010,最高位的0代表 这个数是正数(最高位就是符号位). -10的原码就是10001010,最高位的1代表这个数是负数 +10的原码是00001010,那他的反码,补码都和原码相同 也是00001010,原因是正数的原 反 补码相同 -10的原码是10001010,那他的反码是11110101,也就是符号位不变,其他位0变1,1变0. 他的补码是在反码的基础上,最低位加1,也就是11110110.

清原满族自治县15879737542: 怎么样计算补码的反码 -
厍聪金固: 一般原码将1变0,0变1就成为反码,而补码在反码基础上加一, 要求补码的反码直接减一就行了.

清原满族自治县15879737542: 真值与码值有何区别?原码、反码、补码三者之间如何换算? -
厍聪金固: 如果原码00000 反码就是11111 补码是反码(正数)反码+1(负数) 真值是一个变量本身所具有的真实值 码值就是个表

清原满族自治县15879737542: 如何计算小数的原码补码与反码 -
厍聪金固:[答案] 把小数转化为分数,然后分子和分母分别算原码和补码,然后在相除计算出小数.

清原满族自治县15879737542: 计算机中的 原码和补码怎么求 他们之间怎么计算? -
厍聪金固:[答案] 原码,用处不大. 特别是负数的原码,除了用来求补码之外,基本就没有用了. 补码,有用. 计算机里面,表示负数,基本上,都是用补码. 参考:

清原满族自治县15879737542: 总结原码,反码和补码的表示方法和运算规则.为什么在计算机中大多采用补码 -
厍聪金固:[答案] (1)原码、反码、补码表示的简易记忆法:正数的原码、反码、补码相同正数符号位为0,负数符号位为1原码, 除符号位外的数值位与真值相同负数的反码 =原码(除符号位外)每位取反;负数的补码 = 反码 + 1; (2)运算...

清原满族自治县15879737542: ( - 5)D+(9)D在计算机中使用原码,反码和补码进行运算的过程 -
厍聪金固:[答案] 用二进制把原码表示出来,正数的补码与原码相同,负数的补码,为它的原码除符号位外对各位“按位求反”,在最低位加1即可-5=10000101(原码) 10000101 (反码) 11111011(补码)+9=00001001(原码) 00001001 (反码...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网