CF(位0)携带标志 - 设置算术操作会产生随身携带的或从结果中最明显的位中借来的;否则清除。此标志指示 未签名的算术。它也用于多精确算术中。
对于(不必要的)视觉线索,在这个4-5的操作中,这是第二个借用的红色,它设置了CF
如果您从零减去,那么对于任何数字而言,自然而然地来了,但是零本身,您始终拥有CF集,因为子Trahend至少具有一个位。
最终,某些说明可让您更改符号位,而不会影响CF(例如,请参见逻辑操作或
neg
的行为)。
我们从小学知道A -B = A +(-b)。 这就是逻辑的方式,我们不减去添加负面。 我们还从初学者编程课程中知道,两台补充的课程可以使您倒置并添加一个。 a -b = a +(〜b) + 1。我们也从小学中知道携带的概念。 9+3 = 2携带一个。 在二进制中相同,有两个操作数可以使1 + 1 = 0携带一个。 因此,逻辑中的每一列都需要随身携带。 每个都有两个钻头的三个位,加上两个操作数,携带并执行,结果取消了。 由于这些逻辑斑点中的每一个都有一个输入位,因此携带,第一次携带的正常添加为零,但是对于减法,我们可以将其携带为1,然后倒下第二个操作数以获得A + B = a +(〜 b) +1
如果您通过一些简单的示例进行工作,或者最好尝试自己的操作数组合,则是添加的。 您会发现没有签名或未签名的添加(或减法),《 Twos的美》编码的美。
确定所有这些,减去是添加的,加上我们在未签名的溢出上进行进行,签名的溢出位是当携带进口和携带MSBIT不匹配时,通常表示为V标志。 现在,一些架构,因为它们已经在进来的途中颠倒了B操作数,并且在途中进来,它们会在出路时倒转。 有些不。 因此,您必须查看自己的特定体系结构,以了解该执行方式是否被认为是无符号的额外溢出,还是借用。 或不借任何东西。
零减去并不总是会进行加法。
0b000 - 0b111
0001
000
+ 000
=====
001
添加量为零。 您的体系结构可能会选择以这种方式离开它,或者它可以选择将其倒置并将其称为借用。与建筑家庭有关。 所有的X86或所有手臂都可能永远以同样的方式继续这样做。 但是没有理由期望手臂和mips,x86和xyz都以相同的方式做到这一点。 从术语的角度来看,将其定义为借用是有意义的。
HADRYMENE LMOI MN CHMNL DVVHGI MBL MBL MN BI或RHNBO FVGJU MN KANHA KANHA SHRAMA YUVAJSHRAMA BHVAVN BHVAVN SHRAMA SHRAMA SHRAMA SHRAMA GAHARAMA SHARMA MBLOF5000
100