JVM笔记(一)数字在JVM中的表示

时间:2023-03-08 16:23:17
JVM笔记(一)数字在JVM中的表示

数字在JVM中的表示

一、整数在JVM中的表示

1.在Java虚拟机中,整数有四种表示:

byte:8位        short:16位     int:32位     long:64位

2.原码、补码、反码

1)原码:符号位(左边第一位,0表示正数,1表示负数)加上数字的二进制表示。

2)反码:在原码的基础上,符号位不变,其余位取反。

3)补码:负数的补码-----其反码加1,正数的补码就是其原码本身。

3.使用补码作为计算机内的实际存储方式的好处:

1)可以统一数字0的表示。

2)简化整数的加减法,将其全部视为加法。

二、浮点数在JVM中的表示

1.在java虚拟机中浮点数表示有两种:

float 32位          double  64位

2.IEEE754 表示浮点数:

浮点数由符号位(1位)、指数位(8位)、尾数位(23位,根据e的取值有24位精度)表示。

sflag表示符号位,s为0时,flag为1,s为1时,flag为0。e全为0时,尾数位附加0,否则附加1。

JVM笔记(一)数字在JVM中的表示