c语言中小数怎么表示

Python017

c语言中小数怎么表示,第1张

两种表示方式:

1、定点表示:必须有小数点。

例如:0.123, .123, 123.0。

2、指数表示:e或E之前必须有数字,指数必须为整数。

例如:12.3e3 ,123E2, 1.23e4。

注意:浮点数常量默认为double类型,如果浮点数常量表示float类型,在末尾添加小写的f或者大写的F,表示此常量为单精度浮点常量。

定点小数是纯小数,约定的小数点位置在符号位之后、有效数值部分最高位之前。若数据x的形式为x=x0.x1x2…xn(其中x0为符号位,x1~xn是数值的有效部分,也称为尾数,x1为最高有效位),则在计算机中的表示形式为:

一般说来,如果最末位xn= 1,前面各位都为0,则数的绝对值最小,即|x|min= 2^(-n)。如果各位均为1,则数的绝对值最大,即|x|max=1-2^(-n)。所以定点小数的表示范围是:2^(-n)≤|x|≤1 -2^(-n)。

扩展资料

由于“编码总位数为8”的限制,真值-128无法用原码、反码来表示,似乎不能用上述规则来求解补码,但实际上是可行的——只要不管它的最高位即可,操作办法如下:

将128化为二进制为:1 0000000,最高位为1,可以只对舍去最高位后剩余的7位进行处理即可,首先取反得:1111111,加1得:1 0000000,最高位有进位需丢弃,即得:0000000,加上符号位就得补码:1 0000000。

又如,当编码总位数为4时,真值X=+0.101的原码、反码、补码均为:0 101。

真值X=-0.101的原码、反码、补码依次为:1 101、1 010、1 011。

同理,特例,-1的补码为:1 000。

在定点小数中,小数点隐含在第一位编码和第二位编码之间

定点小数,是指小数点准确固定在数据某个位置上的小数,从实用角度看,都把小数点固定在最高数据位的左边,小数点前边再设一位符号位。按此规则,任何一个小数都可以被写成 :N = NS . N-1 N-2 … N-M。

参考资料来源:百度百科-定点小数的表示方法

定点数是计算机中采用的一种数的表示方法。参与运算的数的小数点位置固定不变。定点数又分为定点整数和定点小数。定点整数小数点位固定在最后一位之后称为定点整数。若机器字长为n+1位,数值表示为:

X=X0X1X2...Xn,其中Xi={0,1},0≤i≤n

即(-1)^X0

*

(X1*2^(n-1)

+

X2*2^(n-2)

+

...

+

Xn-1*2

+

Xn)

数值范围是

-(2^n-1)≤X≤2^n-1

例如:1111表示-7。定点小数小数点固定在最高位之后称为定点小数。若机器字长为n+1位,数值表示为:

X=X0.X1X2...Xn,其中Xi={0,1},0≤i≤n

(这里X0不表示数字,只表示符号,若X0=0,则代表X=0.X1X2...Xn,X0=1,则代表-0.X1X2...Xn)。即X=X0.X1X2...Xn代表的小数为

(-1)^X0

*

((X1*2^(-1))

+

X2*2^(-2)

+

...

+

Xn-1*2^(-n+1)

+

Xn*2^(-n))

数值范围是

-(1-2^(-n))≤X≤1-2^(-n)

例如:1111表示-0.875