问题标签 [ones-complement]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unsigned - 计算机如何区分1的补码中的6(110)和-1(110)
我正在学习一个补码以及一个补码如何使用最高有效数字作为符号指示符。
如果用 1 的补码表示二进制数 110,则得到 -1。但是,很明显,110 相当于十进制的 6。在这里,我真的很困惑。
计算机如何知道您打算使用 -1 还是 6?谢谢。
c++ - 在 C/C++ 中使用 ~ 的补码
我正在使用 Visual Studio 2013。
最近我尝试了~
1 的补码运算符:
输出是-11
但对于
输出是4294967296
我不明白为什么输出是-11
有符号的int
。请帮我解决这个困惑。
twos-complement - 1 和 2 的补码运算
需要帮助验证我的答案。
我收到了一个问题,要求我计算以下操作的输出。
所以我的问题和答案在下面提供。
i)25+(-37)
回答 1 的补码="01000000"
回答 2 的补码="01000001"
ii)25+(-12)
回答 1 的补码="01011010"
回答 2 的补码="01011011"
c# - 从隐含的无符号十六进制字符串构造 BigInteger 的正确方法是什么?
我遇到了一个问题,因为我有一个隐含的无符号十六进制数字作为字符串,由用户输入提供,需要转换为BigInteger
.
由于设置BigInteger
了最高位 (0x8 / 1000b) 的任何输入的带符号性质,结果数字被视为负数。然而,这个问题不能通过简单地检查符号位并乘以 -1 或由于不尊重基础符号的补码而获得绝对值来解决,例如将所有值 0xF* 视为 -1。
以下是一些示例输入/输出
BigInteger
从隐含的无符号十六进制字符串构造 a 的正确方法是什么?
algorithm - 为什么补码的公式不起作用?
我刚刚了解到,要找到第一个补码的公式是
我设法将它应用于二进制案例:
但是,当我尝试将相同的公式应用于以 5 为底的数字时,
有人可以帮我吗?谢谢
javascript - ~ 和 - Javascript 运算符问题
我正在尝试编写一个程序,它将输入转换为二进制,以及这种输入的二进制补码。我相信 ~ 应该翻转位并且 - 应该做同样的事情加上一个 1 in 1 的值,但结果并不像预期的那样。
在脚本的“else”部分中,我有几行应该将变量 aNumber 转换为所需的 1 和 2 的补码,但事实并非如此。
例如,如果输入 50,则二进制是正确的,但一个变成 -51,而两个变成 -50。我意识到将 (~aNumber) 和 (-aNumber) 乘以 -1 会消除负值,但它不会修复不正确的值。
修复 - 和 ~ 运算符或规避它们的方法是什么?
python - Python:16 bit one's complement addition implementation
I implemented one's complement addition of 16 bit integers in python, however I am trying to see if there is a better way to do it.
#xA;And now an example of running it would be:
#xA;returns :
#xA;Is what wrote safe as far as results (Note I didn't do any negation here since that part is trivial, I am more interested in the intermediate steps)? Is there a better pythonic way to do it? Thanks for any help.
math - 有符号幅度和补码
我需要知道如何解决这个问题
使用 8 位有符号幅度、一个补码和二进制补码表示以下二进制十进制数:
- 88
- -76
我的解决方案是:
binary - 二进制数的一\二补码表示的逻辑是什么
我试图了解一\二补码算术背后的逻辑。为什么我可以用这种方法求和\减去数字并得到正确的答案,以及为什么所有“进位”问题在这两种方法中都有效?有人可以帮忙吗?
java - 为什么 Integer.MIN_VALUE 的负数给出相同的值?
考虑下面的java代码。
输出
value 的负值如何产生Integer.MIN_VALUE
相同的值?
但是结果不能是2147483648
因为Java中Integer的最大值是2147483647
.
但想知道为什么-2147483648
?内部发生了什么样的按位操作?