java 32位精度,这是什么意思?

fafcakar  于 2023-03-28  发布在  Java
关注(0)|答案(2)|浏览(139)

我在阅读一本关于OPENGL ES开发的书,偶然看到这句话。
Java中的浮点数有32位精度,而字节有8位精度。这似乎是一个显而易见的观点,但每个浮点数中有4个字节。
这到底是什么意思?在android游戏开发中知道这一点很重要吗?
谢谢你的帮助。

g2ieeal7

g2ieeal71#

这到底是什么意思?
1字节= 8位
4字节= 32位

1Bit可以有2个条件0或1
2位可以有2²条件00、01、10和11

好了,现在到了困难的地方
如果你的精度应该是**+/-0.5****,那么你的数字的最大大小2^23。现在你可能会问自己,如果我得到一个比这个更大的数字会是什么? 任何比这个更大的数字都大于0.5。
(单精度/32位)
在android游戏开发中了解这一点很重要吗?
重要的是,你理解了几乎任何编程语言中的基本概念
看看这个简单的程序,如果你理解了输出,这就是你需要知道的,首先

public class DoubleError
{
       public static void main(String[] args)
       {
             double x = 1.1;
             double y = 0.1;
             System.out.println("X is: " + x);
             System.out.println("Y is: " + y);
             System.out.println("X+Y is: " + (x + y));

       }
}

编辑:
哦,为了彻底摧毁你的脑袋,
这里还有一些你应该知道的:
半精度= 16位
单精度= 32位
双精度= 64位
编辑2:
哦,如果你想了解什么,看看这个:IEEE_754-2008

pxy2qtax

pxy2qtax2#

这本书中的句子没有任何意义,似乎根本就是错误的。
32位浮点数的精度为23位,而不是32位。

相关问题