自从我在大学上集会类已经有一段时间了(准确地说是 20 年)。
当有人给你一个数字,比如 19444,并说 X 是位 15 到 8,Y 是位 7 到 0...我该如何计算 X 和 Y 的值?
我保证这不是家庭作业,只是一个不明智地尝试进行一些固件编程的软件人员。
最佳答案
首先将输入的数字转换为十六进制:
19444 => 0x4BF4
十六进制很方便,因为每 4 个二进制位是一个十六进制数字。因此,每 2 个十六进制数字是 8 位或一个字节。现在假设传统的小端表示法(查找!),第 7 位到 0 位是低字节,第 15 位到 8 位是高字节:
[7:0] => 0xF4
[15:8] => 0x4B
关于math - 我的位逻辑太过时了。需要进修,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3252633/