首页 > 代码库 > 计算机中的真值和机器数

计算机中的真值和机器数

真值(即:带有正负号的数值是真值,用0或1来表示正负号的数值是机器数,例如:-10011为真值,110011为机器数)

以下X表示数据的真值。

1. 原码表示法

最简单且直观的机器数表示法,其最高位为符号位(0为正,1为负),数值部分与真值的数值相同

设X为纯小数,一位符号位,n个数值位,则

[X]
{
X                  0=<X<=1-2n-1

1-X=1+|X|             -(1-2n-1)=<X<=0

 例如:x=-0.1001,那么先把它转化成机器数为:1.1001

 根据公式:[X]=1-X=1-(-0.1001)=1+0.1001=1.1001=1+|-0.1001|

     [+0.8125]=(0.1101000)2
    [-0.8125]=1-(-0.8125)=(1.0000000)2+(0.1101000)2=(1.1101000)2

设X为纯整数,一位符号位,n个数值位,则

[X]
{
X                         0=<X<=2n-1

2nX=2n+|X|           -(2n-1)=<X<=0

   例如:机器字长n=8
   [+35]=(00100011)2
   [-35]=27-(-35)=(10000000)2+(00100011)2=(10100011)
2

   

 

计算机中的真值和机器数