进位标志cf如何计算
-
如何计算自己的本命年
本命年的意思是一个人的生命在自己的本命年不安定的时候是有很多的注意事项的,本命年是我们的传统习俗,每年都有很多人到了自己的本命年,有些人到了自己的本命年,就有很多的注意...
生肖 2023-02-23 20:54:00
【,已知x=0.10111,y=0.10010,用变形补码分别计算[x]补+[y]补,并对计算结果进行分析.要求写出运算过程.(7分)】
解答:约定字长8位
[x]补=00.101110b
[y]补=00.100100b?
[x]补+[y]补=01.010010b
双负号位为01,正向溢出,进位标志为CF=1
x+y=CF+0.010010b=1.01001b
解:
[x]补=0010111[y]补=0010010
则[x]补0010111
+[y]补0010010
0101001
两个符号位出现“01”,表示正溢出,即结果大于+2^n
原码求补码
求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。
【简述OF与CF标志位分别表示什么含义?哪一个用来表示有符号数溢出?有符号数计算结果溢出判断规则是什么?】
这里说的溢出,是指:数值过大,超出了编码所能表示的范围。
本质上,任何形式的计数,都是有可能溢出的。
在Intel设计的CPU中,有两个标志位:CF、OF(OverFlag)。
每当无符号数的运算出现了溢出,就会有CF=1,翻译过来就是:进位。
每当有符号数溢出了,则OF=1,称为OVER,翻译过来就是:溢出。
按照Intel的论调,就是说:
所谓的“溢出”,是特指“有符号数的运算”。
无符号数的溢出,就不叫溢出了,必须得叫做“进位”
这说法,有些“反人类”哈!
没有办法,人家是大佬嘛,说的对不对,也必须得这么执行。
---------------------
所以,在计算机领域:
有符号数,才有可能出现溢出的。
溢出的特征,是“符号位出错”。
如:正数+正数,却得出了负数、...。
无符号数,是没有溢出的,它只有“进位借位”。
而有符号数的运算,就不必关心进借位了。
进位标志cf如何计算相关文章: