티스토리 뷰
혹시 소켓통신이나 시리얼 통신을 할때
최적화된 메모리관리가 필요할때 유용할꺼 같습니다.
예를들어..
BYTE sendBuf[9];
sendBuf[0]=0x01;
sendBuf[1]=0x31;
sendBuf[2]=0x01;
sendBuf[3]=0x01;
sendBuf[4]=0x31;
sendBuf[5]=0x01;
sendBuf[6]=0x01;
sendBuf[7]=0x11;
sendBuf[8]=0x01;
위와 같이 바이트 배열에다 필요한 HEX값을 넣으면
사이즈는 9바이트겠지여...무조건..
그러나 위와 같은 데이터를 그대로 저장하면서 훨씬 적은 메모리를 차지하는 방법이
비트필드스트럭쳐를 이용하면 될꺼같은 생각에..
struct test{ // Bit Field Structure
BYTE a:2;
BYTE b:6;
BYTE c:3;
BYTE d:2;
BYTE e:6;
BYTE f:3;
BYTE g:2;
BYTE h:6;
BYTE i:2;
};
와 같이 비트별로 지정을 해준다음에
test t;
t.a =0x02;
t.b =0x33;
t.c =0x04;
t.d =0x02;
t.e =0x32;
t.f =0x05;
t.g =0x01;
t.h =0x32;
t.i =0x02
이렇게 넣어준다면
5바이트만 사용해서 최소량의 메모리를 써서 똑같은 작업을 할수 있을 듯합니다.
딱 필요한 비트크기만 알면 거기에 맞게 비트필드를 써서 남는 공간을 최대한 절약하는 거져.
서버-클라이언트에서 어떤 프로토콜을 이용해서 소켓통신을 할경우에 유용하지 않을까 해서 두서없는 글 올립니다.
혹시 잘못된점이나 저의 생각에 오점이 있다면 꼭 알려주시기 바랍니다.
그럼 즐거운 하루되시길.
2002-9-9일 작성
likehood
최적화된 메모리관리가 필요할때 유용할꺼 같습니다.
예를들어..
BYTE sendBuf[9];
sendBuf[0]=0x01;
sendBuf[1]=0x31;
sendBuf[2]=0x01;
sendBuf[3]=0x01;
sendBuf[4]=0x31;
sendBuf[5]=0x01;
sendBuf[6]=0x01;
sendBuf[7]=0x11;
sendBuf[8]=0x01;
위와 같이 바이트 배열에다 필요한 HEX값을 넣으면
사이즈는 9바이트겠지여...무조건..
그러나 위와 같은 데이터를 그대로 저장하면서 훨씬 적은 메모리를 차지하는 방법이
비트필드스트럭쳐를 이용하면 될꺼같은 생각에..
struct test{ // Bit Field Structure
BYTE a:2;
BYTE b:6;
BYTE c:3;
BYTE d:2;
BYTE e:6;
BYTE f:3;
BYTE g:2;
BYTE h:6;
BYTE i:2;
};
와 같이 비트별로 지정을 해준다음에
test t;
t.a =0x02;
t.b =0x33;
t.c =0x04;
t.d =0x02;
t.e =0x32;
t.f =0x05;
t.g =0x01;
t.h =0x32;
t.i =0x02
이렇게 넣어준다면
5바이트만 사용해서 최소량의 메모리를 써서 똑같은 작업을 할수 있을 듯합니다.
딱 필요한 비트크기만 알면 거기에 맞게 비트필드를 써서 남는 공간을 최대한 절약하는 거져.
서버-클라이언트에서 어떤 프로토콜을 이용해서 소켓통신을 할경우에 유용하지 않을까 해서 두서없는 글 올립니다.
혹시 잘못된점이나 저의 생각에 오점이 있다면 꼭 알려주시기 바랍니다.
그럼 즐거운 하루되시길.
2002-9-9일 작성
likehood
'개발' 카테고리의 다른 글
do not appear this message (0) | 2007.06.25 |
---|---|
gSOAP 사용법 (1) | 2007.06.21 |
도대체 가상함수는 어디에다 쓰는 것일까. (0) | 2007.05.22 |
simpleAdo 2.0 (0) | 2007.05.22 |
c/c++ 간단 토글링 (0) | 2007.05.22 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- C/C++
- 레인보우샤크
- 노랭이새우
- 쿠바펄
- 미에어2
- 소설
- 램즈혼
- 시내랑
- 금연
- 채리새우
- 챔픽스
- 편도수술
- 네온테트라
- ixus75
- NAS
- simpleAdo
- 마곡지구
- 장기전세
- ADO
- 133인치
- 산세베리아
- 미니헤어그라스
- 루드위지아 오발리스
- 수초어항
- 캠핑
- 아쿠아스카이
- 오토씽
- 루드위지아
- Mpow
- 하이그로필라
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함