问题标签 [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.
math - 有符号幅度和补码
我需要知道如何解决这个问题
使用 8 位有符号幅度、一个补码和二进制补码表示以下二进制十进制数:
- 88
- -76
我的解决方案是:
math - 如何找到十进制数的 10 的补码
1056.074 的 10 的补码是多少?
请检查解决方案:
9999.999 - 1056.074 = 8943.925(1056.074 的 9 的补码)
现在将 1 添加到 .074 或 8943?
binary - 2 的补码除法算法
遇到了适用于有符号震级数的两种除法算法(恢复和非恢复)。但不能将其应用于 2 的补码格式的数字。2的补码除法有什么算法吗?
binary - 使用符号幅度和二进制补码的二进制算术
我正在复习一周后的考试。我有一个我已经回答的示例问题,但我不确定它是否正确。有人可以为我验证我的答案,如果不正确,请解释 iv 哪里出错了。
这里是问题:考虑符号幅度符号中的两个二进制变量:A = 011111 和 B = 000001。显示所有涉及的步骤,以二进制格式执行以下操作(即,不要从二进制转换为另一个基数以获得结果)。假设您只有六位可用于答案。
AB 使用二进制补码。
这是我的答案:在 B B = 000001 翻转上使用二进制补码并加 1
然后 A + 补码 B
最终答案:011110
cpu-registers - 添加保存在 32 位寄存器中的 2 个有符号数。进位标志和结果是什么?
假设我们在 32 位寄存器(A 和 B)中保存了以下 2 的补码值:7FFFFFF0 和 0000002F,我们想将它们都相加,然后添加二进制 1 并将它们保存在不同的寄存器(C)中......什么是结果?进位标志是什么?
我知道结果将是 80000020,但这是负面的。这是要保存在寄存器 C 中的内容吗?
c# - 显示整数的 16 位
我需要你的帮助,这是我的代码的一部分,但有一个我无法解决的问题。请帮助我;这就是我现在所做的,我可以得到 16 位二进制形式的正整数
`
问题是我将如何获得 16 位二进制形式的整数的负值
喜欢; 当我输入 5 时,我可以得到:0000000000000101
prolog - 补图 - 序言
我有个问题。我有一个连续的无向图。所以我需要一个 Prolog 中的代码,它给我一个补充图。
例如图表:
请帮助:)谢谢。
c - 如何在C中检查一个数字是二进制还是2的补码?
我只使用逻辑门在 C 中制作二进制加法器。例如,现在我想添加4 + (-5)
,所以我会在 2 的补码中得到答案,然后将其转换为十进制。同样,如果我这样做,4 + (-3)
我会得到二进制的答案,并想使用相同的函数将其转换为十进制。
现在,我知道如何将 2 的补数转换为十进制,将二进制转换为十进制。但我想使用相同的函数将 2 的补码和二进制转换为十进制。为此,我必须弄清楚数字是二进制还是 2 的补码。这是我卡住的地方。
有人可以给我一个想法、算法或 C 代码来找出一个数字是 2 的补码还是正常的二进制?
源代码
筹码
我们的hdr.h
注意:我将只显示该项目所需的标题。所以只是认为其他标题没有用。
将数组转换为整数的函数
获取整数位的函数,并返回指向包含位的数组的指针
将二进制转换为十进制的函数,反之亦然
主要程序设计
- 从用户读取两个
n1
数字n2
- 获取一个指针
bits1
,bits2
它指向一个数组,其中包含 和 的n1
位n2
。请注意,数组的顺序是相反的,即最后一位将在0th
数组的变量中。 - 放置一个 for 循环,您将在其中传递三个变量,即您要添加的位和最后一次添加位操作的进位。
- 返回值将是三位和进位的加法,加法后将更改为进位(如果有)。例如,您通过
1
and0
,并且进位是1
,因此,返回将是0
并且进位将再次更改为1
。 - 返回值将存储在另一个名为
sum
. - 数组
sum
将使用我上面给出的函数转换为 int。 - 现在这就是我卡住的地方。我现在想将 int 更改为十进制数。但要做到这一点,我必须知道它是 2 的补码形式,还是只是普通的二进制形式。我不知道该怎么做。
注意:这个nand2tetris
项目是用 C 完成的,hdl
但我很熟悉用 C 来完成。此外,我上面提到的许多功能都取自stackoverflow
. 虽然,设计是我自己的。
google-sheets - Google spreadsheet get complements
As the title says, how can I end up with cells that don't match in value, the difference/complement (set theory)?
I would prefer it with only FUNCTIONS and no script.
or with letters
or with with space.
c++ - C++程序Booths算法2s使用数组补码
我已经包含了我遇到逻辑问题的程序。该程序基于booth的算法,我已经放了一个片段。在这个“工作”片段中,十进制数在数组 (a[0]=1 LSB) 的帮助下从用户转换为十进制形式接受,最后计算数组 b[] 的 2s 补码。现在,当我运行程序时:
输出
在输出中,我希望第 6 行为 0101,但得到 1101。为什么数组 b[] 的值会发生变化?第 5 行的数组 b[] 的值是正确的,为什么它会改变?根据代码,值不应该改变吗?我被卡住了..请帮忙!!任何建议将不胜感激!!