int130原码是多少,由一个数求出来的二进制数属于源码还是补码啊
来源:整理 编辑:亚灵电子网 2023-05-13 16:01:42
1,由一个数求出来的二进制数属于源码还是补码啊
68的二进制是01000100,首位是符号号,负号为1所以-68的原码:11000100负数的反码是原码符号号不变,其它位取反:10111011负数的补码是反码尾加1,所以补码:10111100

2,byte c byte130运算过程
130是一个大于byte最大值127的数,所以会默认作为int型处理。 强制转换过程: 130作为int是四个字节 00000000 00000000 00000000 10000010 它是一个正整数,所以其原码,反码和补码都是相同的。 强转时截取其最后的一个字节 100000010 对于截取后的来说,截取的是int的补码,所以要转为原码显示 10000010是一个符号为1的负数 符号位 数值位 补码 1 00000010 反码 1 00000001 原码 1 11111110 = (-)126

3,C 浮点数在计算机中的表示
符号位的设立,就造成了原码反码的错误。零,本来只有一个,原码反码,却都弄了正零和负零两个代码。这就违反了一一对应的常规。况且,八位的原码反码,都不能表示-128,而-128 却有补码。就因为这些缺陷,原码和反码,在计算机中,都无法使用。所以,在计算机系统中,数值,一律采用补码表示和存储。其实,部补码的来源,并非来自于“符号位原码反码取反加一”。从符号位开始讲解补码,就不能正确说明补码的意义。---------------------------补码,其实是一个“代替负数”的正数。使用补码(正数)代替负数,在计算机中,就没有负数了,而且,也就没有减法运算了。从而,计算机的硬件,就可以简化了。一个正数(即补码),怎么就能代替负数呢?这是因为计数系统的周期性,所导致的。时针,倒拨 3 小时,可以用正拨 9 小时来代替。 +9 = -3 + 周期 12。 如果是分针,周期,就是 60。两位十进制数(0~99),周期就是 10^2 = 100。 25 - 1 = 24 25 + 99 = (一百) 24 舍弃进位,只取 2 位,正数(+99),就可以代替负数(-1)。三角函数也有周期性。 -π/2 和 +3π/2,也是借助于周期 2π,进行的等效变换。计算机中,一个字节是 8 位 2 进制数。其计数周期就是 2^8 = 256。 补码(正数)=负数 + 周期 256。-1 的补码就是:-1 + 256 = 255 = 1111 1111 (二进制)。-2 的补码就是:254 = 1111 1110 (二进制)。。。。-126 的补码就是:130 = 1000 0010 (二进制)。-127 的补码就是:129 = 1000 0001 (二进制)。-128 的补码就是:128 = 1000 0000 (二进制)。正数,不需要变换,也不许变换,必须直接参加运算。所以,正数,根本就没有补码。------------------------讨论补码时,千万不要牵扯到“符号位原码反码取反加一”。用“取反加一”来求补码,就不能理解【补码的意义】。老外数学不好,没有正确的思路,编造了这一滩垃圾,这也不奇怪。

文章TAG:
int130原码是多少原码 多少 一个