各种操作系统下基本数据字节数,以及存储原理

本文探讨了在不同操作系统(16位、32位和64位)中基本数据类型的字节数及其精度变化。在32位系统中,int和long均为4字节,而在64位系统中,long变为8字节。同时,介绍了signed和unsigned的区别,无符号类型在存储上多一个数据位。此外,还简单阐述了浮点数的存储方式,将数值分为值和阶两部分进行存储。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



各种操作系统下,基本数据字节数



字节之下,具体精度情况

早期的操作系统是16位系统,int用二字节表示,范围是-32768~32767

long4字节表示,范围是-2147483648~2147483647

后来发展到32位操作系统,int 4字节表示,与long相同。

目前的操作系统已发展到64位操作系统,但因程序编译工艺的不同,两者表现出不同的差别:

32位编译系统:int占四字节,与long相同。

64位编译系统:int占四字节,long8字节,long数据范围变为:-2^63~2^63-1


signed与unsigned 的区别:

signed是有符号,unsigned是无符号,无符号会比有符号少一个符号位,多一个数据存储数

例:32位下,  signed int  范围  -2^31~2^31-1    unsigned int 范围 0~2^32-1


浮点型存储原理

存储浮点型数据时,会把数据分成值和阶两部分,你可以这样理解,例如12.3这个数,就表示成值为123,阶为-1,即123乘以10-1次方。所以,小数点吗,你自己想。

例如用32来表示浮点数(及4个字节),可以用其中的24表示值,8表示阶;也可以用16表示值,16表示阶。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值