设置int的半字节 - java

时间:2013-01-20 18:26:39

标签: java bit-manipulation

我必须使用java设置一个整数的半字节。老实说,我很困惑如何将一个半字节转换/设置/更改为我想要的半字节。我的TA告诉我它应该是大约5行代码,但我不知道如何启动它。非常感谢任何帮助。

/* Examples:
 *     setNibble(0xAAA5, 0x1, 0); // => 0xAAA1
 *     setNibble(0x56B2, 0xF, 3); // => 0xF6B2
 * 
 * @param num The int that will be modified.
 * @param nibble The nibble to insert into the integer.
 * @param which Selects which nibble to modify - 0 for least-significant nibble.
 *            
 * @return The modified int.
 */
 public static int setNibble(int num, int nibble, int which) {
      // i know I will be using bit-wise operators but do not know how to use
      // them in this situation
      return 0;
 }

1 个答案:

答案 0 :(得分:2)

首先,你需要屏蔽你想要设置的半字节(使用按位 &来执行此操作)。

然后设置半字节(移动到所需位置)并使用按位 |来设置半字节。

由于这看起来像家庭作业,我不会发布代码。