제가 low level 에 좀 약합니다만, 이런 생각을 한적이 있는데요.
Byte addressible architecture 가 아니라면 이런 속도와 사이즈의 trade off 관계가 되지않나 생각합니다만..
일반 intel x86 계열은 4 byte 씩 액세스 하므로 char 를 액세스 할때는,
(미천할지라도) overhead -- word size 로 읽어서는 byte 로 쪼개기 위한 bit-masking/shift -- 가 일어나야 할듯 한데요..
물론, bool 은 1비트로 표현할수 있는데, 4byte(32bit) 을 사용한다는것은 엄청난 메모리의
낭비일수는 있지만, 다른측면에서 보면 int 도 경우에 따라서는 맞을수 도(?) 있지않나 싶어서, 한번 말씀드려봅니다.
속도로는 그냥 byte 단위가 좋더군요.
memory 가 무한하다면 말이지만....
C++ 의 bitset 과 bool 배열을 비교해 본 적이 있습니다.
속도로는 그냥 byte 단위가 좋더군요.
memory 가 무한하다면 말이지만....
C++ 의 bitset 과 bool 배열을 비교해 본 적이 있습니다.
속도로는 그냥 byte 단위가 좋더군요.
memory 가 무한하다면 말이지만....
C++ 의 bitset 과 bool 배열을 비교해 본 적이 있습니다.
실수했는데 지울 수는 없나...
댓글쓰기 버튼을 눌렀는데 안 넘어가길래 연타했더니만...
예. ^^; 답변 감사합니다.
근데 byte단위로 저장하면
공간이 낭비되는거 같아서..
여쭤본 것입니다.
그냥 byte array 로 해서
그냥 byte array 로 해서 비트 단위로 저장하는게 제일 효율적인 것 아닌가요? | , & 연산자를 써서요. 흔히 비트필드라고 부르는 것... 그것 보다 더 효율적인 방법은 없을듯~
vector
vector<bool>
_____________________________
언제나 맑고픈 샘이가...
http://yubink.com - 강아지 필요하세요?
http://purewell.biz - 헙!!
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
vector에 관해서는
vector에 관해서는 다음 글타래의 답글을 참고하세요~
http://kldp.org/node/22280
제가 low level 에 좀
제가 low level 에 좀 약합니다만, 이런 생각을 한적이 있는데요.
Byte addressible architecture 가 아니라면 이런 속도와 사이즈의 trade off 관계가 되지않나 생각합니다만..
일반 intel x86 계열은 4 byte 씩 액세스 하므로 char 를 액세스 할때는,
(미천할지라도) overhead -- word size 로 읽어서는 byte 로 쪼개기 위한 bit-masking/shift -- 가 일어나야 할듯 한데요..
물론, bool 은 1비트로 표현할수 있는데, 4byte(32bit) 을 사용한다는것은 엄청난 메모리의
낭비일수는 있지만, 다른측면에서 보면 int 도 경우에 따라서는 맞을수 도(?) 있지않나 싶어서, 한번 말씀드려봅니다.
삽질의 대마왕...
삽질의 대마왕...
댓글 달기