【问题标题】:How to concatenate 2 binary numbers? [duplicate]如何连接2个二进制数? [复制]
【发布时间】:2019-11-11 12:29:06
【问题描述】:

我有 2 个整数值,x 和 y。 x 是 2 位,而 y 是 10 位。我需要找到 z ,它是 x 和 y 的串联。 z 是 12 位。我如何在java中做到这一点?如果您能解释其背后的逻辑,我也将不胜感激。 谢谢。

【问题讨论】:

  • 不清楚,但现在我明白了 :) 。谢谢
  • 其他问题的“已接受”答案过于复杂。不需要循环。

标签: java binary concatenation bit


【解决方案1】:

假设x 是结果的高阶部分:

int z = (x << 10) | y;

换句话说,y 直接用作结果的第 0 位到第 9 位,我们将 x 移位使其值在第 10 位和第 11 位中。然后我们将这两者结合起来。

(最低有效位从 0 开始编号)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-19
    • 2010-10-10
    相关资源
    最近更新 更多