首页 > 其他 > 详细

整型数与浮点数在内存中的表示

时间:2016-03-17 07:11:29      阅读:292      评论:0      收藏:0      [点我收藏+]

 落下的基础还是要早点补起来的。。。 



整型数在内存中存储

正整数

int a = 25为例

1.      a2进制表示

(25)10 = (11001)2

因为int型在内存中占4个字节,也就是32位,实际是

(0000 0000 0000 0000 0000 0000 0001 1001)

2.      16位表示

(0 0 0 0 0 0 19) à(00 00 00 19) 在内存中低地址在高位,也就是

19 00 00 00

 

负整数

int b = -25为例

1.    b2进制表示

(1000 0000 0000 0000 0000 0000 0001 1001)

2.    取反

0111 1111 11111111 1111 1111 1110 0110

+1

0111 1111 11111111 1111 1111 1110 0111

7 F F F F F E 7 à 7F FF FF E7

在内存中表示为

E7 FF FF 7F

 

浮点数在内存中存储

正浮点数

float c = 8.25f

1.      c2进制表示

1000.01

1000.01 = 1.00001*2^3(尾数00001,指数3)

0     表示符号位(0正数,1负数)

1-22  表示尾数部分

23-31 表示指数部分(共9位) 127+指数 

所以表示为

0 1000 0010 00001 后面补0,共32

0100 0001 00000100 0000 0000 0000 0000

4 1 0 4 0 0 0 0 à 41 04 00 00

内存中

00 00 04 41

 

负浮点数

float d = -8.25f

1.      d2进制表示

-1000.01

先计算除符号以外的

1000.01 =1.00001*2^3

因为是负数,所以首位是1

1 1000 0010 00001

1100 0001 00000100 0000 0000 0000 0000

C 1 0 4 0 0 0 0 à C1 04 00 00

内存中

00 00 04 C1

 

2016-03-16 23:16:16 于北京 海淀

本文出自 “做最好的自己” 博客,请务必保留此出处http://qiaopeng688.blog.51cto.com/3572484/1751963

整型数与浮点数在内存中的表示

原文:http://qiaopeng688.blog.51cto.com/3572484/1751963

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!