目录
- 进制
- 位,字节,字
- Byte,Short
- ByteBuf
- 有符号数和无符号数
进制
HEX,Hexadecimal ,十六进制。
DEC,Decimal ,十进制。
OCT,Octal ,八进制。
BIN,Binary ,二进制
位,字节,字
单位 | 描述 | 补充 |
---|---|---|
位,bit | 最小存储单位,每一位存储1个1位的二进制编码,就是0或者1 | |
字节,Byte | 一个字节由 8 位组成,0000 0001 | 表示ASCII字符 |
字,Word | 64位计算机:1字=64位=8字节(64位计算机,32位计算机) | 计算机进行数据存储和数据处理的运算的单位 |
Byte,Short
Byte,8位,1字节
Short,16位,2字节
ByteBuf
ByteBuf其实是一个字节容器,该容器中包含三个部分
- 已经丢弃的字节,这部分数据是无效的
- 可读字节,这部分数据是ByteBuf的主体数据,从ByteBuf里面读取的数据都来自这部分; 可写字节,所有写到ByteBuf的数据都会存储到这一段
- 可扩容字节,表示ByteBuf最多还能扩容多少容量。
ByteBuf读操作我们常用的有一下几种:
方法 | 作用 | |
---|---|---|
ByteBuf.readByte() | 读一个字节,有符号 | |
ByteBuf.readUnsignedByte() | 读一个字节,无符号 | |
ByteBuf.readShort() | 读连续的两个字节,有符号 | |
ByteBuf.readUnsignedShort() | 读连续的两个字节,无符号 | |
ByteBuf.readInt() | 读连续的四个字节,有符号 | |
ByteBuf.readUnsignedInt() | 读连续的四个字节,无符号 |
有符号数和无符号数
U16为16位无符号数,S16为16为有符号数
U16和S16都是占2个字节的整型类型,区别只是是否有符号
U16可以表示的范围为0-65535, S16可以表示的范围为 -32768~32767。
参考:
https://blog.csdn.net/qq_17486399/article/details/121532031