我对背旗(CF)和溢出旗( of )的理解有点困难。
下面是我正在处理的一些示例问题:
1. 1011 1111 2. 1111 0111 3. 0111 1110 --> 0111 1110
+ 1011 0111 + 1101 1101 - 1011 0000 --> + 0100 1111
___________ ___________ ___________ + 1
0111 0110 1101 0100 ___________
1100 1110
。
我想我很难理解无符号溢出和适当的CF值。
发布于 2011-09-22 04:40:18
免责声明:我不是专家(甚至不是这个级别代码的用户)。
我相信进位标志对无符号数据是有意义的,溢出标志对于有符号数据是有意义的。
两者都将被生成,但这取决于您是否考虑了值的无符号,或两个的补语,所以这取决于您注意的标志。
来自:http://en.wikipedia.org/wiki/Overflow_flag
在
内部,溢出标志通常是由一个排它或内部进进出出的符号位生成的。由于符号位与被认为无符号的数字中最重要的位相同,因此溢出标志“没有意义”,通常在添加或减去这些数字时被忽略。
符号位是最有意义的位(最远的一个位)。
排他性或(XOR)是:
)
进位到符号位是当第二位最重要的位,当被添加时,产生一个值被转到下一列。
执行是指当将最重要的位(符号位,如果数字是两个补码)相加时是否必须执行进位。
XOR这两个值,在给定的加法后,您应该得到溢出标志的值。
https://stackoverflow.com/questions/7509559
复制相似问题