将LSB和MSB加在一起以获得值

时间:2015-03-03 11:47:03

标签: c# byte bit

我正在从成像相机系统读取数据,这台相机会检测年龄,性别等,其中一个值是置信度值,这是2个字节,并显示为LSB和MSB,我有只是尝试将这些转换为整数并将它们加在一起,但我没有得到预期的值。

这是使用LSB和MSB获取值的正确方法,我之前没有使用过。

由于

2 个答案:

答案 0 :(得分:5)

你的价值将是:

Value = LSB + (MSB << 8);

<强>解释

一个字节只能存储0 - 255个不同的值,而int(本例中)是16位。

MSB是16位的左侧^侧,因此需要移位到左侧以改变使用的位。然后,您可以添加这两个值。

我建议查找转移运营商。

^ 基于endienness(英特尔/摩托罗拉)

答案 1 :(得分:1)

假设MSB和LSB是最高/最低有效字节(而不是该字节的位或任何其他扩展),则可以通过MSB * 256 + LSB获得该值。