是否可以将两个带符号的8位数字相加并设置进位和溢出位?
答案 0 :(得分:5)
根据你的意见,你的问题似乎是“是否有可能同时设置携带和溢出以获得涉及签名号码的二重补充?”它是。典型的实现是对链路末端的进位输出最后一个加法器的进位的异或 - 因此,负数的溢出将导致进位位被设置以及要设置的溢出位。
这是一个例子,将-1添加到-128:
Carry 10000 0000
1000 0000 (-128)
1111 1111 (-1)
---------
0111 1111 (oops, this is 127!)
进位将被设置,因为最后一次添加导致进位 - 并且将根据上面的规则设置溢出(同样,请注意-128加到-1显然不是127)
答案 1 :(得分:1)
您无权访问C中的标志,即使您可以让编译器生成设置它们的代码,您也无法使用它们。
答案 2 :(得分:0)
您可以在C中编写自己的添加例程,它将返回进位和溢出标志 签名的8位操作数。如果你指的是里面的硬件进位和溢出位 处理器,不,不能在C中移植。