gpt4 book ai didi

java - 将 32 位整数的半字节设置为特定值

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:30:40 27 4
gpt4 key购买 nike

<分区>

我卡在如何将 4 位值替换为原始 32 位整数的某个位置。非常感谢所有帮助!

/**
* Set a 4-bit nibble in an int.
*
* Ints are made of eight bytes, numbered like so:
* 7777 6666 5555 4444 3333 2222 1111 0000
*
* For a graphical representation of this:
* 1 1 1 1 1 1
* 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* |Nibble3|Nibble2|Nibble1|Nibble0|
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*
* 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)
{
int shifted = (nibble << (which<<2));
int temp = (num & shifted);
//this is the part I am stuck on, how can I replace the original
// which location with the nibble that I want? Thank you!
return temp;
}

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