问题标签 [twos-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.
binary - 1 和 2 的补码系统
我试图了解这两个系统之间的差异以及它们对 C 编程的影响。
根据我从 Wikipedia 中了解到的信息:
- 两个系统都用于表示负数
- 一个补码按位不应用于负数(系统有 +0 和 -0)
- 二进制补码与第 2 步一样并加 1(消除 +/-0)
我还缺少其他东西吗?
我的问题:
- 哪些架构支持哪些系统?现在最常见的是什么(1 或 2 的补码)?
- 在用 C 编程时,我们应该在什么意义上考虑这些系统?它主要只在嵌入式世界中有意义吗?
提前致谢!
assembly - 这两种情况下的偏移量将如何应用?
首先,我熟悉二进制补码系统如何表示负数的概念,并且我知道当有跳转指令(短或接近)时,它包含的偏移量将始终添加到 EIP 寄存器中并且没有从 EIP 寄存器中减去偏移量的情况(如果我是对的!)。但我想知道在以下两种带有负偏移量的寻址的情况下,它是否与如何使用跳转指令中的偏移量的情况相同,该偏移量总是被添加到基数而不是任何减去案子?
(以 GASM 格式):
“base_address(offset,index register,scale)”,例如:
“偏移量(基址寄存器)”如:
将二进制数添加到 eax 寄存器还是减去?
twos-complement - 补码减法
-5-8 我们必须用 2 的补码形式表示两个整数然后相加吗?
assembly - 多余-N 到 2 的补码
有人可以解释一下如何做到这一点吗?这不是家庭作业。
有人可以向我解释如何做到这一点吗?
首先,如何将多余 N 数的求和公式转换为 2 的补数公式?其次,我究竟应该如何证明这一点?
numbers - 我什么时候会使用二、一或只是签名?
如果我想要二进制的-3,我可以使用有符号位,或者一个补码,或者二进制补码,对吗?
但是,什么时候适合使用方法呢?为什么?
让我们只使用 8 位:
-3
签名只是10000011
-3
与那些只是11111100
-3
有两个只是11111101
binary - 如何正确填充二进制数(带和不带基数)
所以我有一个关于用 0 填充的快速问题。我做的例子如下,只是假设长度无关紧要并且没有符号位。
我知道在前面填充二进制数的整数部分很好(尽管有缓冲区和类似的东西)。当我处理小数点时,我永远不记得它是如何工作的。你是在基数(b)旁边还是在数字(c)的末尾填充。另外,像这样的填充会影响这些数字的补码吗?
谢谢
编辑: 我问这个的原因是因为我正在从二进制转换为十六进制,将二进制转换为八进制。为此,我必须将位分组为 4 或 3 组。我没有足够的位,所以我需要在某处添加零。
twos-complement - 2 的补码问题
我有与 2 的补码相关的 aq。假设我在 2 的补码表示中有一个带符号的 16 位十六进制,例如,取 0xfaa
如果它是 16 位,我需要扩展它,因为它现在只有 12 位。我知道我必须扩大左侧,所以它会被做成0xffaa。
这意味着我的数字是负数,对吗?
java - 如何将负整数转换为二进制补码形式?(爪哇)
我需要将数字(正数和负数)转换为二进制格式 - 例如,将 2 转换为“00000010”,将 -2 转换为“11111110”。我不需要超过 12 位左右,所以如果字符串比那个长,我可以剪掉前导符号位。似乎Integer.toBinaryString()
会做正数,但有没有可以做负数的?
c - 按位补码
我有一个 , , 的示例问题,解决w=1
方案是,但我不知道为什么?y=7
z=0
x = ~(w && y) | y;
x = -1
这是我的思考过程:
(w && y) = (1 && 7) = 1
~1
1 in bits is 0000 0001
~1 in bits is1111 1110
不知道从这里做什么。
c - 无符号字符旋转
我对 unsigned char 是什么感到有点困惑。有符号的字符是位形式的字符的表示,对吗?一个示例问题让我们向右旋转 n 位位置,使用此解决方案的无符号字符的位:
如果有人可以用 char 示例及其各自的位进行解释,将不胜感激。非常感谢。