ASCII三种进制对照表、二进制、字节

本文介绍了ASCII三种进制对照,详细讲解了JAVA中不同进制的表示方式,包括十进制、二进制和十六进制。此外,阐述了JAVA数据类型的长度,如byte、short、int、long、float和double。讨论了内存中的小端存储模式,并展示了如何使用ByteBuffer进行数据读写。最后,解释了位运算符`&0xff`在截取低8位中的作用。
摘要由CSDN通过智能技术生成

一、ASCII三种进制对照表
在这里插入图片描述
换行、空格等对照表
在这里插入图片描述
二、JAVA代码中,各种进制的表现形式:
十进制表示:104
二进制表示:0b01101000
十六进制表示:0x68
总结:二进制前加0b,十六进制前加0x
三、JAVA中类型长度:
byte:1个字节8位;
short:2个字节16位;
int:4个字节32位;
long:8个字节64位;
浮点型:
float:4个字节32位;
double:8个字节64位;
注:默认的是double类型,如3.14是double类型的,加F(3.14F)就是double类。
char:2个字节
Boolean:并未指明
四、buffer的大端还是小端
小端(Little Endian)是:低位在前,高位在后的存储方式,和普通记忆方式相反。
32位整型数据:
07 D4 E1 F2
其中F2为第0字节,E1为第1字节,D4为第2字节,07为第3字节
小端的存储顺序是:
F2 E1 D4 07
寄存器中就是:
11110010 11100001 11010100 00000111
五、简单buffer的定义:

ByteBuffer byteBuffer = ByteBuffer.allocate(10).order(ByteOrder.LITTLE_ENDIAN);
byteBuffer.put(allBytes);
byteBuffer.flip();

allocate参数就是多少个字节的buffer长度;
order的参数就是“小端”
put就是把字节数组放进buffer,注意长度不要越界
flip就是指针指向0。因为前面put的时候,指针会一位一位的后移,后面在用这个buffer时,指针在最后,显然不可以的。
从buffer中取数据:

short total = byteBuffer.getShort();

这就会取出2个字节,参看上面长度。而且取出的排序也是按照前面的“小端”排序,也就是小的反而在前面。
六、&0xff的作用
0xff表示二进制1111 1111
&操作:全1为1,否则为0
那么0xff和任意位数多于自己的二进制数进行&操作,就是保留低8位
比如0xff & 1111 0000 1111 0000,0xff需要线补8个0,也就是0000 0000 1111 1111,然后再和1111 0000 1111 0000进行&操作,此时结果为1111 0000
这样就能实现保留低8位的作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值