将uint / int转换为数字时,应使用哪种格式?小尾数法还是LSB和MSB?

问题描述

我正在尝试将整数和无符号整数的值转换为数字,并且想知道使用哪种格式。我有些困惑,想澄清一下。

将int转换为数字时,我使用小端格式还是LSB&MSB格式?

与uint相同。...我是否使用小尾数格式或LSB&MSB转换uint?

您能否同时说明选择的原因。任何帮助深表感谢。谢谢。下面是将字节转换为数字的两个不同函数。它们之间的主要区别是什么?在哪种情况下,您会使用另一种?

export function convertFromLittleEndianByteToNumber(byteArray) {
  if (!(byteArray && byteArray.length)) {
    return;
  }
  let value = 0;
  for (var i = byteArray.length - 1; i >= 0; i--) {
    value = value * 256 + byteArray[i];
  }
  return value;
}


export function convertFromLSBandMSBToNumber(byteArray) {
  if (!(byteArray && byteArray.length)) {
    return;
  }
  const [LSM,MSB] = byteArray;
  let converted = (LSM | (MSB << 8)) & 0xffff;
  if (converted > MAX_POSITIVE_VALUE) {
    converted = converted - MAX_16_BIT;
  }
  return converted;
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...