바이트 쌍을 가져 와서 단락을 출력하고 단락을 가져 와서 바이트 쌍을 출력해야합니다. 이러한 목적을 위해 내가 고안 한 기능은 다음과 같습니다.짧은 문자와 바이트 사이를 변환하는 좋은 방법은 무엇입니까?
static short ToShort(short byte1, short byte2)
{
short number = (short)byte2;
number <<= 4;
number += (short)byte1;
return number;
}
static void FromShort(short number, out byte byte1, out byte byte2)
{
byte byte2 = (byte)(number >> 4);
short tempByte = (short)byte2 << 4;
byte byte1 = (byte)(number - tempByte);
}
나는 정확하다고 생각하지만 확실하지 않습니다. 이것이 올바른 방법이 아니라면 무엇입니까? 프레임 워크에서 이미이 작업을 수행 할 수있는 방법이 있습니까?
현재 8 비트,하지 4. –
흥미로운 물건을 이동해야합니다 ToShort에서 byte1은 MSB (즉 왼쪽에있는 것)이고, FromShort에서 byte1은 LSB (즉 오른쪽에있는 것)입니다. 나는 내 대답에 이것을 바꿨다 ;-p –