twos-complement

    0热度

    2回答

    说明:将这些十进制数到5位二进制补码形式,如果可能的话。如果不可能,请解释为什么这样。 (16)基地10 根据网上的转换器: 据我了解, 若小数点为积极: 第1步:转换ma对二进制的认识。 步骤2:将0填充到所需的比特大小。 若小数点为负: STEP 1:将幅度为二进制。 步骤2:将0填充到所需的比特大小。 第3步:反转位,获得1's补。 第4步:加1到实现二进制补码。 由于16是正的,我只需将其

    0热度

    1回答

    我需要使用6位补码2的表示法来计算(-13)(基数10)+(-14)(基数10)。我读了Wikipedia:Two's complement如何做到这一点。我将13转换为(-13):10011并将14转换为(-14):10010,我只是通过数学运算得到:100101,但检查我的答案的系统一直告诉我这是错误的,不明白为什么。

    1热度

    5回答

    Two's compliment是当字节中的每个位都被翻转,然后将'1'添加到结果中时。 我不想提取每一位并翻转它。是否有捷径可寻?

    0热度

    1回答

    我只是试图在将一个较小的位长度值(如短整数)分配给像int或double这样的较大值时解释一些规则。假设一个6位机器使用有符号整数的二进制补码算法,当我将更少的位数投入更大的位数时会发生什么?它是否将所有零或全部添加到结尾或开头?不知道,任何帮助将不胜感激。 I.e: short num = -3; int y = num; “num”in binary = 101,does y = 000

    -1热度

    2回答

    我目前在做我的课程中的二进制补码,使用8位我试图完成此操作,其-85 + -44。我错过了一次演讲,所以我试图追上自己,这就是我想出的,告诉我我是对还是错。 -85 85 = 01010101 10101010 + 1 --------- -85= 10101011 所以这是第一个。 -44 44 = 0010

    0热度

    1回答

    好的。所以我提出了一个问题,说有一个用十六进制符号表示的模式。第一个是0x0C000000。事情是,我应该假设它是一个二进制补码整数,然后是无符号整数。假设之后,我应该说什么十进制数是基于它的二进制补码和无符号。 我应该只是从十六进制转换为2的补码?我怎么做,而不先转换为小数? 任何其他可能的洞察力都会很棒。

    0热度

    3回答

    int类型为4字节长,我在Ubuntu下用C语言编写了一个小程序,用于输出我刚输入的数字。当我输入2147483648,即2^31时,它打印2147483647而不是-1。当我输入任何大于2147483647的数字时,会发生同样的事情。为什么当我学习表单簿时它不会溢出到-1,但似乎被截断为INT_Max以及在位级发生了什么? #include <stdio.h> int main(){

    -1热度

    2回答

    作业一次又一次。 我要创建一个程序打印1和二进制数的二进制补码。 到目前为止是2S补那朵是否正确?我应该允许输入,然后在2之前计算1的赞美吗? import java.util.Scanner; public class BitWiseComplement { public static void main (String [] args) { String a = "1

    0热度

    4回答

    我需要从两个互补转换为符号 - 量值仅使用运营商 ! ~ &^| + << >> 我的办法是找标志在C: int sign = !(!(a>>31)); 基本上,if sign == 1 。我想翻转数字并加1,否则只是想显示数字。 的事情是我不能使用任何循环,if语句等 这就是我的工作: int s_M = ((((a+1)>>31)^sign)+1)&sign; 有什么建议?

    0热度

    1回答

    我一直在读了一对夫妇的问题/答案在这里: twos-complement-in-python is-twos-complement-notation-of-a-positive-number-the-same-number 有人给了一些示例代码来创建一个数的二进制补码: def twos_comp(val, bits): """compute the 2's compliment of