java中int的表示方法,位运算的解析

BSO 2020-09-14 10:26:05 java常见问答 7105

随着时代的不断发展,越来越多的人开始投入到java的学习当中来。今天就来为大家介绍java中int的表示方法以及位运算的内容有哪些一起来看看吧。

首先我们需要知道的是,在java中,int是使用32位表示,long使用64位表示。这两个基本类型都是整形,没有其他表示方法。它们的内部是用采码表示的。因为java的位运算只能用于int和long型。所以来看一下java内部是怎么用二进制表示的。以int为例子,long是一样的。

一、int的范围

int在java内部是用32位来表示的,而最高位是表示符号,所以真正可以表示数字的是31位。java的int类型取值范围是-2^31~2^31-1.

二、二进制的存储方法

在java中,是使用补码来存储int。对于一个正数,其补码,就是本身。对于0,可以是-0,也可以是+0,都是0。补码的法则规定,0认为是+0,因此0用0000表示。此时,需要表示负数。一个负数,它的补码表示是其绝对值取反(连同符号位一起取反)再加1。例如,对于-5,它的绝对值是5,表示为0101,取反,为1010,加一为1011,这就是-5的补码表示。

三、java的位运算

java的移位运算是整个数整体向左或者右移动。如果是向左移,则是低位补0。如果是向右移,分两种情况。如果是0和正数,则高位补0。如果是负数,则高位补1。还有一种按位运算,符号位也是要参与的。

四、右移与除法的关系

对于正数来说,右移一位等于除以2的结果,但是对于负数来说不是。

五、正负号与整数除法、取余运算的关系

1.正数/正数,向下取整

2.负数/负数,等于他们的绝对值相除

3.正数/负数和负数/正数,就是他们绝对值相除乘上负号。

4.还有%的结果,结果的绝对值与他们绝对值的取余一样,但是符号由第一个数决定。

六、使用补码的原因

1.为了合理地表示+0和-0;

2.可以在负数处多表示一个最负的数;

3.①使用补码,可以将符号位和其它位统一处理;②减法也可按加法来处理。③两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃;④为了计算加减法方便。在使用补码系统进行运算的时候,是可以把符号位加起来一起运算的。在位运算中,如果符号位有进位,是可以舍弃的,因为已经超出了比特范围了。

以上就是关于java中int的表示方法以及位运算的内容有哪些的主要内容。如果你对java知识感兴趣,想要了解更多java基础以及常见问题,敬请关注奇Q工具网。推荐阅读:

java字符串转int,java如何将string转int?

java移位运算符包括哪些?详细实例展示

java位运算是如何定义的?有什么作用?