kpeng163 2022-03-01 22:41 采纳率: 90.9%
浏览 724
已结题

16进制高位在前,低位在后

不懂进制,但项目需要,希望帮忙解答下。
int id = 300;
转换成16进制(8个字节)就是00 00 00 00 00 00 01 2c
然后存入bytes[8]中发送出去,要求高位在前。
网上找的写了点,但感觉不对

bytes[0] = (byte)((value >> 8) & 0xFF);
bytes[1] = (byte)(value & 0xFF);

bytes[1] = (byte)((value >> 8) & 0xFF);
bytes[0] = (byte)(value & 0xFF);

存入byte后用 BitConverter.ToInt32(bytes, 0).ToString("X16") 转成16进制分别是
0000000000002C01 和 000000000000012C
那种是对的,还是说都不对,不懂高位低位。

  • 写回答

2条回答 默认 最新

  • EM-FF 2022-03-01 23:03
    关注

    在内存里300就是用2C 01,前一种,就是高位在右,低位在左(以一个字节为单位,即两位16进制)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月17日
  • 已采纳回答 3月9日
  • 创建了问题 3月1日

悬赏问题

  • ¥15 yolov9的训练时间
  • ¥15 二叉树遍历没有报错但无法正常运行
  • ¥15 在linux系统下vscode运行robocup3d上场球员报错
  • ¥15 maven环境配置后无法运行mvn -v
  • ¥15 Python语言实验
  • ¥15 SAP HANA SQL 增加合计行
  • ¥20 用C#语言解决一个英文打字练习器,有偿
  • ¥15 srs-sip外部服务 webrtc支持H265格式
  • ¥15 在使用abaqus软件中,继承到assembly里的surfaces怎么使用python批量调动
  • ¥15 大一C语言期末考试,求帮助🙏🙏