溢出判断的三种方式
溢出判断
-
单符号位
两同号数相加时,如果结果的符号与参与运算的操作数符号相反 ,则表明有溢出;
两异号数相减时,如果结果的符号与被减数的符号相反,则表明有溢出 -
双符号位
每个操作数的补码符号用两个二进制数表示,称为变形补码,用“00”表示正数,“11”表示负数,符号位第一位叫第一符号位,第二位称为第二符号位,两个符号位同时参加运算。
如果运算结果两符号位相同,则没有溢出发生。
如果运算结果两符号位不同,则表明产生了溢出。
10 负 溢 出 说 明 运 算 结 果 为 负 数 01 正 溢 出 说 明 运 算 结 果 为 正 数 \begin{array}{cc} 10 & 负溢出说明运算结果为负数 \\ 01 & 正溢出说明运算结果为正数 \end{array} 1001负溢出说明运算结果为负数正溢出说明运算结果为正数 -
进位值
两补码数进行加减运算时 -
若最高数值位产生向符号的进位而符号位不产生进位时,发生正溢出
-
若最高数值位无进位而符号位有进位时,发生负溢出
更多推荐
所有评论(0)