问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么是原码、反码、补码?

发布网友 发布时间:2022-04-30 04:23

我来回答

4个回答

热心网友 时间:2023-10-12 10:39

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

计算机中,并没有原码和反码。

为什么用补码?

就是为了:简化硬件,节约成本。

因为,负数,是可以用一个正数(补码)代替的。

如: 24 - 1 = 23

   24 + 99 = (一百) 23

忽略进位,用 +99 就可以代替-1。

+99,就是-1 的补数。 计算机用二进制,就称为:补码。

用补码(正数)代替了负数,那么,计算机中,就没有负数了。

那么,在计算机中,就只有加法运算了。

所以,在计算机中,只需设置一个加法器,便可加减通吃了。

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


定点整数的补码(mod=2^n)定义式如下:

  [X]补 = X      ( 0 ≤ X < 2^(n-1) )

  [X]补 = 2^n - | X |  (-2^(n-1) ≤ X < 0 )

当 n = 8 时,[-128]补 = 256-128 = 1000 0000B。

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

定点小数的补码(mod=2)定义式如下:

  [X]补 = X     ( 0 ≤ X < 1 )

  [X]补 = 2 + X   (-1 ≤ X < 0 )

因此,-1.0 的补码为 2 +(-1) = 1.0000。

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





热心网友 时间:2023-10-12 10:40

1):补码加法公式
   [X+Y]补

[X]补
+
[Y]补
2):补码减法公式
[X-Y]补
=
[X]补-[Y]补
=
[X]补
+
[-Y]补
其中:[-Y]补称为负补,求负补的办法是:对补码的每一位(包括符合位)求反,且未位加1.

热心网友 时间:2023-10-12 10:40

计算机中,只有补码,没有原码反码。
只要掌握了补码,即可。
小数补码的定义式:
  [X]补 = X    ; 0 ≤ X < 1
  [X]补 = 2+X  ; -1 ≤ X < 0
 
例如:
  X = + 0.010 1000, 则 [X]补 = 0010 1000。
  X = -0.011 1000, 则 [X]补 = 1100 1000。

热心网友 时间:2023-10-12 10:41

1、原码的定义
原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一数为x,则原码表示可记作[x]原。
①小数原码的定义
[X]原
=
X
0≤X
<1
1-
X
-1

X

0
例如:
X=+0.1011
,
[X]原=
01011
X=-0.1011
[X]原=
11011
②整数原码的定义
[X]原
=
X
0≤X
<2n
2n-X

2n

X

0
原码表示数的范围与二进制位数有关。当用8位二进制来表示小数原码时,其表示范围:
最大值为0.1111111,其真值约为(0.99)10
最小值为1.1111111,其真值约为(一0.99)10
当用8位二进制来表示整数原码时,其表示范围:
最大值为01111111,其真值为(127)10
最小值为11111111,其真值为(-127)10
在原码表示法中,对0有两种表示形式:
[+0]原=00000000
[-0]
原=10000000
2、补码的定义
机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到的。设有一数X,则X的补码表示记作[X]补。
①小数补码的定义
[X]补
=
X
0≤X
<1
2+
X
-1

X

0
例如:
X=+0.1011,
[X]补=
01011
X=-0.1011,
[X]补=
10101
②整数补码的定义
[X]补
=
X
0≤X
<2n
2n+1+X

2n

X

0
补码表示数的范围与二进制位数有关。当采用8位二进制表示时,小数补码的表示范围:
最大为0.1111111,其真值为(0.99)10
最小为1.0000000,其真值为(一1)10
采用8位二进制表示时,整数补码的表示范围:
最大为01111111,其真值为(127)10
最小为10000000,其真值为(一128)10
在补码表示法中,0只有一种表示形式:
[+0]补=00000000
[+0]补=11111111+1=00000000(由于受设备字长的*,最后的进位丢失)
所以有[+0]补=[+0]补=00000000
3、反码的定义
机器数的反码可由原码得到。如果机器数是正数,则该机器数的反码与原码一样;如果机器数是负数,则该机器数的反码是对它的原码(符号位除外)各位取反而得到的。设有一数X,则X的反码表示记作[X]反。
反码通常作为求补过程的中间形式,即在一个负数的反码的未位上加1,就得到了该负数的补码。
①小数反码的定义
[X]反
=
X
0≤X
<1
2-2n-1-X
-1

X

0
例如:
X=+0.1011
[X]反=
01011
X=-0.1011
[X]反=
10100
②整数反码的定义
[X]反
=
X
0≤X
<2n
2n+1-1-X

2n

X

0
例1.
已知[X]原=10011010,求[X]补。
分析如下:
由[X]原求[X]补的原则是:若机器数为正数,则[X]原=[X]补;若机器数为负数,则该机器数的补码可对它的原码(符号位除外)所有位求反,再在未位加1而得到。现给定的机器数为负数,故有[X]补=[X]原十1,即
[X]原=10011010
[X]反=11100101
十)
    
1
[X]补=11100110
例2.
已知[X]补=11100110,求[X]原。
分析如下:
对于机器数为正数,则[X]原=[X]补
对于机器数为负数,则有[X]原=[[X]补]补
现给定的为负数,故有:
[X]补=11100110
[[X]补]反=10011001
十)
1
[[X]补]补=10011010=[X]原

热心网友 时间:2023-10-12 10:39

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

计算机中,并没有原码和反码。

为什么用补码?

就是为了:简化硬件,节约成本。

因为,负数,是可以用一个正数(补码)代替的。

如: 24 - 1 = 23

   24 + 99 = (一百) 23

忽略进位,用 +99 就可以代替-1。

+99,就是-1 的补数。 计算机用二进制,就称为:补码。

用补码(正数)代替了负数,那么,计算机中,就没有负数了。

那么,在计算机中,就只有加法运算了。

所以,在计算机中,只需设置一个加法器,便可加减通吃了。

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


定点整数的补码(mod=2^n)定义式如下:

  [X]补 = X      ( 0 ≤ X < 2^(n-1) )

  [X]补 = 2^n - | X |  (-2^(n-1) ≤ X < 0 )

当 n = 8 时,[-128]补 = 256-128 = 1000 0000B。

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

定点小数的补码(mod=2)定义式如下:

  [X]补 = X     ( 0 ≤ X < 1 )

  [X]补 = 2 + X   (-1 ≤ X < 0 )

因此,-1.0 的补码为 2 +(-1) = 1.0000。

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





热心网友 时间:2023-10-12 10:40

1):补码加法公式
   [X+Y]补

[X]补
+
[Y]补
2):补码减法公式
[X-Y]补
=
[X]补-[Y]补
=
[X]补
+
[-Y]补
其中:[-Y]补称为负补,求负补的办法是:对补码的每一位(包括符合位)求反,且未位加1.

热心网友 时间:2023-10-12 10:40

计算机中,只有补码,没有原码反码。
只要掌握了补码,即可。
小数补码的定义式:
  [X]补 = X    ; 0 ≤ X < 1
  [X]补 = 2+X  ; -1 ≤ X < 0
 
例如:
  X = + 0.010 1000, 则 [X]补 = 0010 1000。
  X = -0.011 1000, 则 [X]补 = 1100 1000。

热心网友 时间:2023-10-12 10:41

1、原码的定义
原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一数为x,则原码表示可记作[x]原。
①小数原码的定义
[X]原
=
X
0≤X
<1
1-
X
-1

X

0
例如:
X=+0.1011
,
[X]原=
01011
X=-0.1011
[X]原=
11011
②整数原码的定义
[X]原
=
X
0≤X
<2n
2n-X

2n

X

0
原码表示数的范围与二进制位数有关。当用8位二进制来表示小数原码时,其表示范围:
最大值为0.1111111,其真值约为(0.99)10
最小值为1.1111111,其真值约为(一0.99)10
当用8位二进制来表示整数原码时,其表示范围:
最大值为01111111,其真值为(127)10
最小值为11111111,其真值为(-127)10
在原码表示法中,对0有两种表示形式:
[+0]原=00000000
[-0]
原=10000000
2、补码的定义
机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到的。设有一数X,则X的补码表示记作[X]补。
①小数补码的定义
[X]补
=
X
0≤X
<1
2+
X
-1

X

0
例如:
X=+0.1011,
[X]补=
01011
X=-0.1011,
[X]补=
10101
②整数补码的定义
[X]补
=
X
0≤X
<2n
2n+1+X

2n

X

0
补码表示数的范围与二进制位数有关。当采用8位二进制表示时,小数补码的表示范围:
最大为0.1111111,其真值为(0.99)10
最小为1.0000000,其真值为(一1)10
采用8位二进制表示时,整数补码的表示范围:
最大为01111111,其真值为(127)10
最小为10000000,其真值为(一128)10
在补码表示法中,0只有一种表示形式:
[+0]补=00000000
[+0]补=11111111+1=00000000(由于受设备字长的*,最后的进位丢失)
所以有[+0]补=[+0]补=00000000
3、反码的定义
机器数的反码可由原码得到。如果机器数是正数,则该机器数的反码与原码一样;如果机器数是负数,则该机器数的反码是对它的原码(符号位除外)各位取反而得到的。设有一数X,则X的反码表示记作[X]反。
反码通常作为求补过程的中间形式,即在一个负数的反码的未位上加1,就得到了该负数的补码。
①小数反码的定义
[X]反
=
X
0≤X
<1
2-2n-1-X
-1

X

0
例如:
X=+0.1011
[X]反=
01011
X=-0.1011
[X]反=
10100
②整数反码的定义
[X]反
=
X
0≤X
<2n
2n+1-1-X

2n

X

0
例1.
已知[X]原=10011010,求[X]补。
分析如下:
由[X]原求[X]补的原则是:若机器数为正数,则[X]原=[X]补;若机器数为负数,则该机器数的补码可对它的原码(符号位除外)所有位求反,再在未位加1而得到。现给定的机器数为负数,故有[X]补=[X]原十1,即
[X]原=10011010
[X]反=11100101
十)
    
1
[X]补=11100110
例2.
已知[X]补=11100110,求[X]原。
分析如下:
对于机器数为正数,则[X]原=[X]补
对于机器数为负数,则有[X]原=[[X]补]补
现给定的为负数,故有:
[X]补=11100110
[[X]补]反=10011001
十)
1
[[X]补]补=10011010=[X]原
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
读一读下面的句子,在比喻句的后面打上 “√”。 1.燕子有一对剪刀似... 判断下面的句子是不是比喻句,是的打√不是的打×1.北极星是盏指路灯... 我来评判:在是比喻句的句子后面打“√”。1.罗丹嘴里叽里咕噜的,好像跟... 判断下列句子是不是比喻句,是的就打“√”。 1.他摸了摸嘴,好像回味似... 我能判断下面的句子是否是比喻句,在正确句子后面的括号里画“√... 判断下面句子是不是比喻句,是的画“√”,不是的画“×”。(1)那跃跃... 英语题(会的都来哈~要全部回答哦~绝对会采纳!!) 英语题 诚心采纳。 英语题(大家帮帮忙,会采纳哦!) 初二英语下,几个空,求解 诚信采纳 为x添加补码下标什么意思 excel补码下标怎么添加? 如何在word中添加补码下标 6月份新彊天气预报 简易式灭火器是可任意移动的,灭火剂充装量小于多少 灭火器充装量怎么确定? 手提式干粉灭火器净含量4+0.08kg是什么意思? 为什么信用卡“套”你没商量? 如果一个人喜欢把自己的图片当封面说明是什么 信用卡不还款会怎么样? 用铜版纸做封面该注意什么?为什么一个图片打印出来后有横竖交叉在一起的两个图片? 北京银行信用卡好批吗 做画册封面为什么用PS做的图片放到Coreldraw中去打印出来的图片边边都是锯齿状的? 画册中的图片与画册本身的分辨率不同,怎么办?回答上佳的朋友再送50。 想问一下,怎样制作小说封面?人家要的图片网址是什么?制作封面要耗时多久,容易吗? 只有简介和图片做一个16P的画册(A4),需要怎么排版;求高手呐 PS画册中每个页面的效果图是什么效果,如何做?用渐变做出来的吗? LOL账号估价,懂得进来看 LOL账号求估价 怎么卖LOL账号,怎么评估账号价值,想把号卖了 如果用一个Byte来表示整数,那么-3的补码是___。 补码下标是什么 word文档添加补码下标 在excel中给y添加补码下标 怎么弄 什么是补码下标 C语言中的“void ”和“int”分别在什么时候使用? c++中int和void的定义是什么?表示什么意思 在C语言中,void与int的区别 C++中,对函数进行声明时,void和int的区别是什么?求专业,易懂的解答 main函数前面加的void或者int是什么意思? 毛主席诗词沁园春雪是在什么地方写作的? 《沁园春》本出自哪里?据说是古代的 关于执着为话题的作文,急啊,800字 沁园春雪在哪里写的 以执着为题目的800字作文 毛泽东的沁园春雪是在什么环境下写的?在哪里? 《执着》作文 沁园春的出处是哪里? 我有我的执着作文800字 毛主席诗词沁园春雪写于那一年,什么地方(地址)?