一,原码、补码与反码
原码与真值的关系为
[X]原= X, 0≤X2n
2n-1-X -2n<X≤0
由补码的概念引伸,当用n位二进制数表示整数X(1位为符号位,n-1位为数值位),模为2n时,数X的补码可表示为:
[X]补= X 0≤X<2 n-1
2n+X -2 n-1≤X≤0
反码[X]反
一个正数的反码,等于该数的原码;
一个负数的反码,等于该负数的原码符号位不变(即为1),数值位按位求反(即0变1,1变0)
[X]反= X 0≤X<2 n-1
(2n-1)+X -2 n-1X≤0
综上所述可归纳为:
正数的原码、反码、补码就是该数本身;
负数的原码其符号位为1,数值位不变;
负数的反码其符号位为1,数值位逐位求反;
负数的补码其符号位为1,数值位逐位求反并在末位加1。
二, 溢出的判别
双高位判别法
利用符号位(Kn-1位)及最高数值位(Kn-2位)的进位情况来判断是否发生了溢出。
CS :若符号位发生进位,则 CS=1;
否则 CS=0。
CP :若最高数值位发生进位,则 CP=1;
原创力文档

文档评论(0)