c语言:原码,反码 补码?

-10 -6
原码:101010 原码:100110
反码:110101 反码:111001
补码:110110 补码:111010
那我要算(-10)+(-6)的和
计算机内部是怎么样计算的?
用补码加补码似乎不管这俩数几都和这俩数的和很相似
即 (-10)补+(-6)补=10110+11010=110000
晕半天了 请达人给解~~

第1个回答  2007-04-08
即 (-10)补+(-6)补=10110+11010=110000

110000就是 -16的补码~
二进制加法就是封二进一~~ 不知你到底哪里不理解~?本回答被提问者采纳
第2个回答  2022-08-09

用八位补码计算,如下:

  [-10]补 = 1111 0110

   [-6 ]补 = 1111 1010

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

     (1)   1111 0000 = [-16]补

第3个回答  2007-04-08
计算机内部是用补码算的,你给的数据为最高位为符号为,然后信息位为5位
如-10:101010,从左到右第一个1表示符号,之后的01010是10
(-10)补+(-6)补=110110+111010=1110000 (你算得时候把符号位给去掉了)
这样结果是7位,但是给定的是6位(包括符号位),所以会舍去最高位变成110000,110000中的最高位为1,即表示负的,然后再转换成原码:110000,即为-16(-16的原码和补码相同只是巧合)以后题目中一般都会告诉你有几位二进制,一般见的题目都是8位(包括一位符号位)
第4个回答  2020-01-09

正数的原码反码补码到底是不是一样的?
C语言里正数的原码反码补码是一样的。符号位是0,原码,反码,补码:00001010;补码是为负数想出来的办法,目的是减法可以用加补码的方法实现。补码可用反码加1得来,于是又有了负数的反码。计算机里有硬件“加法器”,有了补码,减法也可以用加法器做了。计算机里运算速度,硬件远快于软件,这是做出反码...

C语言中,什么是补码、源码、反码?分别怎样计算?
一、原码 求原码:X≥0,则符号位为0,其余照抄;X≤0,则符号位为1,其余照抄。【例1】X=+1001001 [X]原 = 01001001 【例2】X=-1001001 [X]原 = 11001001 二、反码 求反码:若X≥0,符号位为0,其余照抄;若X≤0,符号位为1,其余按位取反。【例3】X=+1001001 [X]反 =...

计算机基础之原码,补码,反码
首先,以数字2为例。2的原码、反码和补码分别为00000001。当进行右移2位操作时,低位2位01会溢出,但考虑到原码为正数,补码结果为00000000,与原码相同,即为0。对于-1的情况,其原码为10000001,反码为11111110,补码为11111111。右移2位时,低位2位11溢出,补充符号位1后,结果补码为11111111,与反码...

C语言的原码,反码,补码是什么意思?
[X2]反=10110101 反码通常作为求补过程的中间形式,即在一个负数的反码的未位上加1,就得到了该负数的补码。例1. 已知[X]原=10011010,求[X]补。分析如下:由[X]原求[X]补的原则是:若机器数为正数,则[X]原=[X]补;若机器数为负数,则该机器数的补码可对它的原码(符号位除外)所有位...

c语言中原码,补码分别是什么意思
原码:正数末尾取0,负数尾数为1;补码:正数=原码,负数为反码(除符号位)+1 比如 12 -12 原码 0001100 1001100反码 0001100 1110011补码 0001100 1110110

C语言中,原码,补码和反码怎么换算?
1、数在计算机中是以二进制形式表示的。2、数分为有符号数和无符号数,原码、反码、补码都是有符号定点数的表示方法。3、一个有符号定点数的最高位为符号位,0是正,1是副;【原码】就是这个数本身的二进制形式。4、正数的【反码】和补码都是和原码相同;负数的【反码】是将其原码除符号位之外...

急急急急……C语言菜鸟……
原码、补码和反码(1)原码表示法 原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一数为x,则原码表示可记作〔x〕原。例如,X1= +1010110X2= 一1001010其原码记作:〔X1〕原=[+1010110]原=01010110〔X2〕原=[-1001010]原=11001010原码表示数的范围与...

C语言原码取反加一什么意思啊
C语言中的整数一般使用三种基本的编码方式——原码、反码、补码。其中原码取反加1即是补码。举个例子就明白了,以8位二进制为例,求-1的原码、反码、补码。-1的原码:1000 0001,最高位是符号为,1表示负数,0表示正数。-1的反码:1111 1110, 按位取反是除符号位以外,其它每个位上的0变成1,...

C语言编程之二进制原码、反码和补码
原码和反码,在计算机中,都是不存在的。想要了解补码,还得从小学说起。大概是在小学二年级吧,就学过进位了。两位十进制数是:0 ~ 99。那么有:27 + 99 = (一百) 26 也可以:27 - 1 = 26 如果你忽略进位,依然保持两位数,这两种算法的功能,就是完全相同的。如果在计算机中舍弃进位:●...

c语言整数内码是什么意思
反码是将原码中正数的位保持不变,负数的每一位取反而得到的数,补码是反码加1。在计算机中,通常采用补码表示法来表示负数,因为计算机只能使用加法运算,而采用补码可以通过加法运算实现减法运算。C语言整数内码对于计算机的运算和数据处理起着至关重要的作用。由于计算机只能对二进制数值进行计算,因此对于...

相似回答