2个8位数据和一个16位数据相互转换

Posted 他叫小黑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2个8位数据和一个16位数据相互转换相关的知识,希望对你有一定的参考价值。

这种位的转换其实理解了本质就很容易了,也很基础。


首先先了解一下bit和Byte,俗称大B和小b的区别。
一个小b只能代表一个内容(0或者1,其中的一个)
两个小b可代表4个内容 “2的2次方“ (00,11,01,10)

bit意为“位”或“比特”,是计算机运算的基础;
Byte意为“字节”,是计算机文件大小的基本计算单位;
换算关系:

1Byte = 8bits


2个8位数据high、low合成一个16位数据s:

s = (short) (high << 8) | low; //java short是两个字节

一个16位数据s拆分成2个8位数据high、low:

high = (s >> 8) & 0xff; //高8位
low = s & 0xff; //低8位

以上是关于2个8位数据和一个16位数据相互转换的主要内容,如果未能解决你的问题,请参考以下文章

进制转换-不同位数的数据相互转换(C/C++实现)

进制转换

java数据类型

java基础数据

java基本数据类型

二进制十进制十六进制相互转换