long、int、short类型数据占用内存大小是由什么决定
long、int、short类型数据占用内存大小是由计算机字长和编译程序决定的。
常用的字长为8位、16位、32位和64位。字长为8位的编码称为字节,是计算机中的基本编码单位。如一个 32 位的字长,可以表示从0至2的32次方减1的无符号整数值,或者表示从负的2的32次方至2的32次方减1的有符号整数值。特殊的算术指令,对字长中的位使用不同的解释,以此作为浮点数。
编译程序属于采用生成性实现途径实现的翻译程序。它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。
因此,计算机字长提供了硬件计算精度的支持,编译程序则提供了源程序到机器码的转换。
扩展资料:
字长单位可能被应用到:
1、整数:计算机处理的整数值通常可以有若干种不同的长度,但是其中总有一种正好是该构架的字长。如果有的话,其他的整数长度很可能是字长的倍数或分数。小尺寸的整数尺寸通常是为了提高存储效率;当它被加载处理器时,它经常被转换成字长尺寸的形式。
2、浮点数:计算机处理的浮点数通常是一个字长或字长的倍数。
3、地址:计算机处理的存储器地址必须有足够的尺寸,以便可以表示需要的数值范围,但是又不能过大。经常使用的尺寸是字,不过也可以是字的倍数或分数。
4、寄存器:处理器寄存器根据它要处理的数据类型被设计成适当的尺寸,例如:整数、浮点数、地址。许多计算机构架使用通用”寄存器,它们可以存储任何类型的数据,可以允许存储哪怕是最大的数据类型。它们的尺寸通常是其构架的字长。
参考资料来源:百度百科-数据类型
参考资料来源:百度百科-字长
参考资料来源:百度百科-编译程序