补码-5的原码是多少??要过程
-5的原码、反码和补码各是10000101、11111010和11111011。
5的原码、反码和补码各是00000101、01111010和01111011。
计算机中的存储系统都是用2进制储存的,对我们输入的每一个信息它都会自动转变成二进制的形式,而二进制在存储的时候就会用到原码,反码和补码。
例如:输入25
原码就是:0000000000011001
反码: 1111111111100110
补码: 1111111111100111
扩展资料:
补码是为了计算方便而发明的。原始计算器只能做加法不能做减法,但是科学家发现,例如7+(-5)=2可以这样算:7+(-5) = 7+(10000-5)-10000 = 10002 - 10000 = 2 。
这很奇怪,因为机器太傻,只能做加法,但是虽然不会减法,-10000还是很方便的,只要去掉开头的1;用10000减也是很方便的,因为可以用9999减然后+1,而用9999减,只要把每一位用9减。
参考资料来源:百度百科-原码
参考资料来源:百度百科-补码
参考资料来源:百度百科-反码
5D=00000101B,由于5是正数,补码和原码一致都是这个
以8位二进制数
-5的原码是:1000 0101
反码是符号位不变,取余按位取反,即:1111 1010
补码是符号位不变,反码+1,即:1111 1011
因此[-5]补=1111 1011
例如:
用二进制把原码表示出来
正数的补码与原码相同
负数的补码,为它的原码除符号位外对各位“按位求反”,在最低位加1即可
+5=00000101(原码) --- 00000101(补码)
-5=10000101(原码) --- 11111011(补码)
+8=00001000(原码) --- 00001000(补码)
扩展资料:
负数
求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。
同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。
例:求-5的补码。
-5对应负数5(10000101)→所有位取反(11111010)→加00000001(11111011)
所以-5的补码是11111011。
参考资料来源:百度百科-补码
这之前,遇到什么原码,反码,补码,就头疼,其实遇到一个自己怕的问题,就一定要解决它,吃掉它,这样心里的心结就解决了,不然等到以后,每次遇到都是跳过,跳过,难受香菇。
首先提几个概念: 原码,反码,补码
原码是什么?
原码就是早期用来表示数字的一种方式: 一个正数,转换为二进制位就是这个正数的原码。负数的绝对值转换成二进制位然后在高位补1就是这个负数的原码
举例说明:
int类型的 3 的原码是 11B(B表示二进制位), 在32位机器上占四个字节,那么高位补零就得:
int类型的 -3 的绝对值的二进制位就是上面的 11B 展开后高位补零就得:
但是原码有几个缺点,零分两种 +0 和 -0 。很奇怪是吧!还有,在进行不同符号的加法运算或者同符号的减法运算的时候,不能直接判断出结果的正负。你需要将两个值的绝对值进行比较,然后进行加减操作 ,最后符号位由绝对值大的决定。于是反码就产生了。
反码是什么 ?
正数的反码就是原码,负数的反码等于原码除符号位以外所有的位取反
举例说明:
int类型的 3 的反码是
和原码一样没什么可说的
int类型的 -3 的反码是
除开符号位 所有位 取反
解决了加减运算的问题,但还是有正负零之分,然后就到补码了
补码是什么?
正数的补码与原码相同,负数的补码为 其原码除符号位外所有位取反(得到反码了),然后最低位加1.
还是举例说明:
int类型的 3 的补码是:
int类型的 -3 的补码是
就是其反码加1
最后总结一下:
正数的反码和补码都与原码相同。
负数的反码为对该数的原码除符号位外各位取反。
负数的补码为对该数的原码除符号位外各位取反,然后在最后一位加1
各自的优缺点:
原码最好理解了,但是加减法不够方便,还有两个零。。
反码稍微困难一些,解决了加减法的问题,但还是有有个零
补码理解困难,其他就没什么缺点了
喔日,说到这里,估计都晕了,举个栗子把。
5的原码是 (四个字节,32位(byte))
5的原码和反码,补码都一样。
-5的原码是原码除符号位以外所有的位取反 ,
-5的反码就是原码符合外取反得到反码
-5的补码就是反码加一得到补码
最后补充一句,负数一般用补码来计算
以8位二进制数
-5的原码是:
1000 0101
反码是符号位不变,取余按位取反,即:
1111 1010
补码是符号位不变,反码+1,即
1111 1011
因此[-5]补=1111 1011
补码、原码、反码,这些都是计算机专家编造的词汇。
事实上,它们,都不应该存在。
计算机的运算,是很简单的,和这些词汇,并没有任何关系。
--------------------------
你想象一下:
有一个小朋友,很小的,大概是三岁吧。
他只会数一百个数(0~99),会加法,还不会做减法。
那么,你可以这样教他:加 99,就是减一。
比如: 25 - 1 = 24
25 + 99 = (一百) 24
让他只取 2 位数,忽略进位,结果,就是正确的。
--------------------------
上面是一个简单的例子,却说明了一个事实:
做计算时,限定了位数,正数,就能当做负数使用。
限定了位数,有两个意义:
数值是循环的,具有周期性;
有没有进位,都不必考虑。
代替负数的正数,怎么求呢?
你一定能看出来公式: 正数 = 负数 + 周期。
--------------------------
在计算机中,8 位 2 进制,称为一个字节。
计数值范围是:0000 0000~1111 1111。
对应的十进制:0 ~ 255。
计数周期,是:2^8 = 256。
这里,共有 256 个机器数。
较大的128 个,就可以代表负数了:
-1 补码就是:-1 + 256 = 255 = 1111 1111。
-2 的补码 = 254 = 1111 1110 (二进制)。
。。。
-128 的补码 = 128 = 1000 0000 (二进制)。
较小的 128 个,就代表自身的数值了:0 ~ 127。
--------------------------
减法算式: 5 - 7 = -2, 用 8 位补码计算如下:
5 = 0000 0101
-7 的补码 = 1111 1001
--相加---------------
得: (0) 1111 1101 = -2 的补码
在这里,用加法代替减法,略去进位,结果,就完全正确。
--------------------------
用正数(补码)代替了负数,减法运算也就没有了。
因此,计算机的硬件,就可以得到简化了。
所以,在计算机系统中,负数,一律采用补码表示和存储。
原码和反码,在计算机中,根本就不能用。
事实上,它们,根本就不存在。
--------------------------
什么是补码? 为什么要用补码?
看完上面的介绍,相信你都有了答案。
那么,原码和反码,就没有任何意义了。
这两种代码,只是用来求补码的过渡而已。
其实,原码和反码,还有“取反加一”,都是“鸡肋”。
浪费不少时间学习这些,却不能理解【补码的意义】。
况且,用“取反加一”求 0 和-128 的补码,就是难事。
-128,它没有原码和反码,拿什么取反加一?
-0 的补码,求出来是 0000 0000。
符号位,居然是 0 !
难道,负零,是正数吗?
有人说,零,不分正负,所有只有一个补码。
那么,原码反码中,为什么有两个零?
--------------------------
其实,原码反码符号位取反加一,就是一大篇自相矛盾的谬论。
小学生都能弄懂的事,他们竟然弄出这许多骚操作!
老外数学不好,由此可见一斑。
补码-5的原码是多少??
奇怪!
补码-5,是什么意思?
楼主先说说看。
-5的移码等于多少?
-5的原码是101加一个符号位11,即为11101,求补码为11011,求移码为00011.应该是双符号位
+5,-5用8二进制补码表示为多少?详细解答
用二进制把原码表示出来,正数的补码与原码相同,负数的补码,为它的原码除符号位外对各位“按位求反”,在最低位加1即可 +5=00000101(原码) --- 00000101(补码)-5=10000101(原码) --- 11111011(补码)+8=00001000(原码) --- 00001000(补码)
5-6 6=是怎么算
-5 的原码是1000 0101反码1111 1010 补码是1111 1011 6的原码,反码,补码都一样,都是0000 0110 计算机中的计算都是补码计算,也就是1111 1011+0000 0110计算结果为 0000 0001(补码),最高位为符号位,为0表示为正数,正数的原码,反码,补码都一样,也就是最终结果为 0000 0001 也就是1 ...
设某计算机的机器数占8位,请写出下列十进制数的原码,反码和补码:-5,20...
真值 -5 20 -36 -1 100 原码 10000101 00010100 10100100 10000001 01100100 反码 11111010 00010100 11011011 11111110 01100100 补码 11111011 00010100 11011100 11111111 01100100
如何求一个正数或者负数的原码,反码,补码?比如+5
若字长8位,则:[+5]原 =[+5]反 =[+5]补 =0000 0101b [-13]原 =1000 1101b [-13]反 =1111 0010b [-13]补 =1111 0011b
如何求一个正数或者负数的原码,反码,补码?比如+5
计算机中,并没有原码和反码,只是使用补码,代表正负数。使用补码的意义:可以把减法或负数,转换为加法运算。从而简化计算机的硬件。--- 比如钟表,时针转一圈的周期是 12 小时。倒拨 3 小时,可以用正拨 9 小时代替。9,就是-3 的补数。计算方法:12-3 = 9。--- 比如限定了两位十进制...
...表示十进制数 -5,-7,+11,+15,-35,-80,-100,-123
1000 0101(-5原码) 到1111 1010(反码) 1111 1011(-5补码)1000 0111(-7原码)到1111 1000 (反码)1111 1001(-7补码)0000 1011(11原码)到1111 0100(反码) 1111 0101(11补码)0000 1111(15原码)到1111 0000(反码) 1111 0001(15补码)1010 0011(35原码)到1101 1100(反码) 1101 1101(-35...
(-5)D+(9)D在计算机中使用原码,反码和补码进行运算的过程
用二进制把原码表示出来,正数的补码与原码相同,负数的补码,为它的原码除符号位外对各位“按位求反”,在最低位加1即可 -5=10000101(原码) 10000101 (反码) 11111011(补码)+9=00001001(原码) 00001001 (反码) 00001001(补码)原码过程:10000101 +00001001 --- 10001110 反码过程...
补码的表示方法有哪些?有什么规律?
1101_0111b 与查询结果一致 6、补码的拓展:在运算时必要时要对二进制补码进行数位拓展,此时应将符号位向前拓展。-5补码 = 4'b1011 = 6'b11_1011 ps.原码的拓展是将符号位提到最前面,然后在拓展位上部0.-5原码 = 4‘b’1101 = 6'b10_0101,对其求补码得6'b11_1011,与上文一致。
写出+35,-35的原码,反码,和补码.
+35:原码=反码=补码=0100011 -35:原码:1100011;反码:1011100;补码:1011101。
水军博士:[答案] -5的原码为10000101,因为5的二进制位101,符号位为从左到右第一位是符号位,负数符号位为1,正数为0,包括符号位总位数是八位,不及八位要补零.计算机中所有数都是以二进制存储的,它的二进制存储的值称做它的原码,将原码...
湘潭市15650227083: 十进制数 - 5的补码表示为? - ?
水军博士: -5的原码为10000101,因为5的二进制位101,符号位为从左到右第一位是符号位,负数符号位为1,正数为0,包括符号位总位数是八位,不及八位要补零.计算机中所有数都是以二进制存储的,它的二进制存储的值称做它的原码,将原码转换后称为该数的补码,补码用来计算减法.转换的规则为:正数的补码与原码相同,负数的补码为对该数的原码除符号位外各位取反,然后在最后一位加1.
湘潭市15650227083: 微机原理,求 - 5的8位补码 - ?
水军博士: -5的补码为11111011
湘潭市15650227083: - 5的原码、反码和补码各是多少啊,5呢? - ?
水军博士: -5的原码、反码和补码各是10000101、11111010和11111011. 5的原码、反码和补码各是00000101、01111010和01111011.
湘潭市15650227083: 假设计算机内用两个字节表示一个整型数据,则 - 5的补码是? - ?
水军博士: 两个字节就是16位, 原码:1000 0000 0000 0101; 反码:1111 1111 1111 1010; 补码:1111 1111 1111 1011.
湘潭市15650227083: 如何求一个正数或者负数的原码,反码,补码?比如+5? - ?
水军博士:[答案] 正数的原码,反码,补码就是它的二进制数 负数原码是它的二进制数 反码是原码各位取反0取反是1,1取反是0 补码就是反码加1 如+5的原码,反码,补码都是1,101 而-5的原码是0,101 反码0,010 补码0,011 正号用1表示 负号用0表示
湘潭市15650227083: 带符号数通常有三种机器码表示法:原码表示、反码表示、补码表示.请问 - 5的补码是多少?(能有演算过程最好)?
水军博士: -5化成二进制数-101 原码:前面添一个符号位,-为1,+为0,∴原码为1101 反码:除符号位各位取反,∴反码为1010 补码:反码末位加1,∴补码为1011
湘潭市15650227083: C语言中 - 5按位右移2位为什么是 - 2啊 - ?
水军博士: 计算机中存的是补码 (以8位为例) -5 原码为 1 000 0101 反码为: 1 111 1010 补码 按位右移2位,则变成: 1 111 1110 这是-2的补码
湘潭市15650227083: 负数的原码 反码 补码 怎么求 - ?
水军博士: 正数的原码,反码,补码就是它的二进制数 负数原码是它的二进制数 反码是原码各位取反0取反是1,1取反是0 补码就是反码加1 如+5的原码,反码,补码都是1,101 而-5的原码是0,101 反码0,010 补码0,011正号用1表示 负号用0表示
湘潭市15650227083: 假设计算器的字长为8位, - 5的补码用二进制数表示是多少 - ?
水军博士: [-5]原=10000101 [-5]反=11111010 [-5]补=11111011