位屏蔽java,仅显示十六进制的最后6位

位屏蔽java,仅显示十六进制的最后6位,java,bit-manipulation,Java,Bit Manipulation,我正在研究如何从输入的十六进制数操作字节。数据为十六进制: 0x022DA822==100010101000001010。运行以下代码后: byte mask= (byte) data; 掩码将=100010,只有最后的位。为什么它只显示十六进制中的最后6位或22位 默认情况下它会屏蔽前20位吗?您的强制转换会导致数据丢失。一个字节可以容纳你猜到的,一个字节的数据。因此,一个字节的范围是[-128127]。请注意,最高有效位保留为符号位。基本上,当你说:bytedata时,你是在把十六

我正在研究如何从输入的十六进制数操作字节。数据为十六进制: 0x022DA822==100010101000001010。运行以下代码后:

    byte mask= (byte) data;
掩码将=100010,只有最后的位。为什么它只显示十六进制中的最后6位或22位


默认情况下它会屏蔽前20位吗?

您的强制转换会导致数据丢失。一个字节可以容纳你猜到的,一个字节的数据。因此,一个字节的范围是[-128127]。请注意,最高有效位保留为符号位。基本上,当你说:bytedata时,你是在把十六进制数据转换成byte类型的变量,它的范围比十六进制字符串小。因此,只有数据的最后一个字节才能存储在字节中

0x022DA822的十进制表示法是什么?36546594=十进制表示法字节的数据范围是什么?数据范围是什么意思?字节可以表示的最小值是什么?一个字节能代表的最大值是多少?