C# 将2个整数合并为1字节

C# 将2个整数合并为1字节,c#,byte,bit-shift,nibble,C#,Byte,Bit Shift,Nibble,我从昨天开始就在这家公司工作,我似乎不能完全理解这种转变。我要做的是,我需要把2个数字合并成1个字节。前四位中的第一个数字,最后四位中的第二个数字 0001=1 0110=6 然后从二进制文件“00010110”中提取1个字节 之后,我还想分别提取1和6。我该怎么做 我所能做的就是从另一个问题中提取: int b = Convert.ToByte(value); byte[] b1 = new byte[2]; b1[0] = b >> 4; b1[1] = b & 0x0

我从昨天开始就在这家公司工作,我似乎不能完全理解这种转变。我要做的是,我需要把2个数字合并成1个字节。前四位中的第一个数字,最后四位中的第二个数字

0001=1

0110=6

然后从二进制文件“00010110”中提取1个字节

之后,我还想分别提取1和6。我该怎么做

我所能做的就是从另一个问题中提取:

int b = Convert.ToByte(value); 
byte[] b1 = new byte[2];
b1[0] = b >> 4;
b1[1] = b & 0x0F;

假设
value1
0001=1
value2
0110=6
,则可以使用
操作
合并这两个值

byte result = 0;
try {
  byte b1 = Convert.ToByte(value1); 
  byte b2 = Convert.ToByte(value2); 
  result = (b1 << 4) | (b2 & 0x0F);
} catch (OverflowException) {
  ... // Handle 'Int too big' situation.
}
字节结果=0;
试一试{
字节b1=转换为字节(值1);
字节b2=转换为字节(值2);

结果=(b1不完全正确。你的结果由两个字节组成。是的,我计划分别提取它们。不,我一点也不生气。哈哈哈。我觉得你想得太多了。冷静