gpt4 book ai didi

c - Objective C Int 到 2 补码的转换

转载 作者:行者123 更新时间:2023-11-30 16:47:03 31 4
gpt4 key购买 nike

如果 16 位整数为负数,我会尝试将其转换为二进制补码。

目前,我正在使用补码运算符。我想我可以使用它,然后将二进制值加 1 将其转换为二进制补码。但是,我无法执行 x = ~a + 1,因为这只会产生整数值 + 1。

如果我的过程是正确的,我怎样才能给二进制整数加1?如果不是,在 Objective-C 中将 16 位整数转换为 2 的补码最合适的方法是什么?

最佳答案

二进制补码是有符号数的一种表示形式,而不是值或运算。在几乎所有现代计算机上,二进制补码是有符号整数的标准表示形式。 (它是标准中允许的三种整数表示之一。)

因此,如果您有任何有符号整数,它会以二进制补码表示。我认为你想要一个正数的“the”补码。如果您的机器使用二进制补码作为有符号数,则这只是负值。

int positiveValue = 5; 
int twosComplement = -positiveValue;

关于c - Objective C Int 到 2 补码的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43501553/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com