비트 연산을 사용하면 각 비트로 나눌수 있습니다.
unsigned char cBYTE = xx; // 어떤 1바이트 값.
unsigned char cTemp[8];
unsigned int nMASK = 0x01;
ZeroMemory(cTemp, sizeof(cTemp));
for(int i=0; i<8; i++) {
cTemp[i] = (cBYTE & nMASK) ? 1 : 0;
nMASK = nMASK << 1;
}
이렇게 하면 cTemp[] 배열에 각각 비트의 값이 들어갑니다. (당근 1 아니면 0 이겠죠)
아니면 구조체와 공용체를 사용하여 멤버를 비트 단위로 선언할 수 있습니다.
그럼 보다 간단하게 처리 할 수도 있겠지만...
축구 님이 쓰신 글 :
: 1바이트를 받아와서 값을 비트로 나눠서 변수에 넣고 싶은데 어떤방법을 써야할까요?
|