问题标签 [carryflag]
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.
assembly - 如何设置进位标志添加两个数字(32位)
我使用 read_int 得到了两个数字,并添加了两个数字。最后我检查了 EFLAGS (dump_regs)。
所以,要设置进位标志,我尝试了“4,294,967,295 + 1”,但是没有设置进位标志。('CF'没有显示在屏幕上)
如果我想设置进位标志,我需要什么数字?
我输入了 4294967295 和 1
overflow - MIPS 中的溢出/进位标志
我搜索了一下,没有找到任何可以正确解释这一点的东西。
在 MIPS 中,你有add
并且addu
可以做加法。主要区别在于addu
不会产生溢出异常。
假设我们有这个二进制文件(我使用了 4 位,尽管 MIPS 为 32 以进行简化):
如果我们添加1
它变成1000
.
该add
指令存在溢出且没有进位,因为正 7 变为负 1(假设 MIPS 中的二进制补码)。这也会产生溢出异常。
addu
没有溢出也没有进位,因为一切都按预期进行。
现在假设你有这个二进制文件:
如果我们添加1
它变成0000
.
使用该add
指令应该不会溢出,因为负 1 变为 0。进位标志呢,它会变为 1 吗?
addu
指令会发生什么?是否认为溢出,因为 15 变成了 0?我知道没有溢出异常,但是溢出标志会发生什么?它被设置为1吗?携带标志呢?
routing - 串行通过并行展位乘法器
为什么“比特串行加免提链”?
我不明白为什么第一位串行 2 的补码块放在后续位串行加法器之前?
assembly - 如何将两个数字相加,每个数字有 12 个字节?
我想添加两个具有 12 字节的数字并将结果存储在 16 字节的 var 中。我怎样才能做到这一点?
我想我可以将数字 1 的前 4 个字节数与数字 2 的前 4 个字节数相加,依此类推.. 但我不知道如何在我的结果变量中连接结果。如果需要,我该怎么做?这个解决方案是正确的吗?
rust - 如何在 Rust 中获取进位标志的值
我想在执行位移后获取进位标志的值。
Rust 有稳定的函数来检查溢出,如下所示:
生成这样的程序集:
然而overflowing_shr
,只有当值移动其大小或更多时才返回 true,我只关心将存储在 CF 中的最低有效位,目前我想出的最好的是:
然而,这有点效率低下:
我宁愿有类似的东西:
似乎没有内在的获取 CF 并且内联汇编目前不稳定。
assembly - 汇编 - SHL 指令不打开进位标志
我有这些代码行应该将进位标志设置为1。我通过emu8086中的模拟器运行了这段代码,它告诉我没有设置进位标志。在我看来,进位标志应该设置,因为数字0xC7(二进制:1100 0111)被移到左边,所以进位标志应该返回1。希望有人能帮忙。
gcc - 有人可以解释一下这个内联#define 程序集在做什么吗?
我是一个偶尔的 C 程序员。我在 Turbo C 程序中遇到过这段内联汇编代码
dst 和 src 都是无符号的 16 位整数。
它不会在 GNU C++ 中编译。有人可以解释一下它在做什么吗?蒂亚!
c - 让 C 编译器使用 x86 移位的进位标志结果?
是否可以在没有内联汇编的情况下从 C 中的 x86 SHL/SHR/SAR 指令中捕获进位标志?
我找不到任何内在的转变,而且编译器似乎没有选择将使用它的模式。
假设我想要以下内容:
我可以编写什么 C 代码来让编译器生成那种输出?
c++ - 如何做由多个整数组成的数字的加法
我目前正在尝试实现一个可以计算一些加密哈希函数的程序。我正在制作一个 BigInt 类,我希望它能让我用任意大小的整数进行基本的数学和逻辑运算。
我正在学习的部分课程:
我希望有一些方法可以添加无符号整数并获得溢出位,以及将这个溢出位传递给下一个整数的方法,就像在汇编语言中一样,我相信 ARM 汇编中的操作码是'ADCS' 将设置溢出位,并将溢出位带入下一个加法和。但是,我四处搜索,似乎在 C++ 语言中找不到任何功能。
编辑:以防万一有人偶然发现,这是我对加法功能的实现。