gpt4 book ai didi

java - 从十六进制转换为二进制,反之亦然。艰难的道路

转载 作者:行者123 更新时间:2023-12-01 23:54:03 25 4
gpt4 key购买 nike

我正在编写一个应该在二进制、十进制和十六进制之间转换的代码。我已经弄清楚了二进制和十进制,但是当我得到十六进制时,我只是感到困惑。

如果不使用 Integer.toHexString,您将如何进行此转换。

我知道已经有一个代码可以在 java 中为我执行此操作,我的困惑是如何告诉 java 使用手动转换来完成此操作。

我的想法是创建多个 if 语句,每个语句解释 0 是 0000,或者 C 是 1100,等等。

它将遍历十六进制字符串中的每个字符并将二进制值加在一起。

我觉得对于我被要求做的事情来说,这是太多的代码。

除非这是唯一的方法,否则我会开始这样做。

但是如果有一个伪代码可以解释如何更有效地做到这一点,我们将不胜感激。

额外信息:

int hexDigit1A=(binaryDigit8%2)*8+(binaryDigit7%2)*4+(binaryDigit6%2)*2+(binaryDigit5%2)*1;
int hexDigit2A=(binaryDigit4%2)*8+(binaryDigit3%2)*4+(binaryDigit2%2)*2+(binaryDigit1%2)*1;

我知道这会将 4 位二进制数转换为其适当的十进制数,这是否有用,或者仅适用于十进制。

非常感谢您。

最佳答案

这是通过一个简单的映射函数来实现的。当您手动执行此操作时,您将二进制值分解为 4 位,对吗?然后为每个“4 位”分配它自己的特定十六进制值。您的算法应该遍历您的二进制值,查看每个“4 位”并确定要应用的正确的十六进制值。

这看起来像一个实验室,所以这里有一些 super 基本的伪代码。

Binary Value
Look at last 4 bits
Map to appropriate Hexadecimal Number
Look at next 4 bits, etc etc.

这应该能让您充分了解十六进制 -> 二进制转换的内容。同样的想法!

关于java - 从十六进制转换为二进制,反之亦然。艰难的道路,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15869235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com