负数在计算机中的存储原理
1、在计算机中如果一个二进制数据的最高位(最左边)是1,那么该数据肯定是一个负数;若最高位是0,则该数一定是一个正数。
2、负数在计算机中存储的都是补码。
3、负数的存储过程
1)先取负数的绝对值,求出该绝对值得二进制形式(原码);
2)原码取反得到反码(0变1,1变0);
3)反码+1得到补码。
>
例:-9的存储:
第一步:取-9的绝对值 9,化成二进制
9————00001001(原码)
第二步:原码取反得到反码;
00001001————-11110110(反码)
第三步:反码加一得到补码
11110110 + 00000001——————11110111(补码)
11110111就是-9的二进制储存形式。
>
如何通过补码得出真实的数据
与负数的存储过程相反,步骤如下
1)补码-1得到反码;
2)反码取反得到原码;
3)原码数据前+负号即可得出真实数据。
>
例:求补码11111001的真实数据
11111001 -00000001———11111000(反码)—取反—00000111(原码)=7
在7前面加负号 -7,就是索取补码的真实数据。