데이터(구조체포함) 을 짝수바이트로 패딩하는 이유는 CPU가 메모리로부터 데이터를 읽어올때 짝수byte 단위로 읽어오는 특성을 살리기 위해서 라고 알고있습니다.
그런데 이것은 원래 홀수 byte를 짝수 byte 로 늘려서 처리를 해야 그데이터의 처리를 위해 사용되는 시간이 줄어든다는 말이아니고..
그렇게 해야지만 다음 데이터가 위치하는 시작점이 짝수 번지가 되기 때문이겠지요?
이러한것을위해서는 두가지 전제 조건이 필요한데..
첫번째는, CPU는 항상 짝수 번지의 byte를 읽어온다.
두번째는, 짝수번지의 byte 를 읽어오는데 그시작점은 항상 짝수 번지부터 시작한다.
세번째는, 메모리에 저장되는 데이터는 앞서서 채워져있는 데이터번지 바로 다음부터 사용이된다.
(이것은 앞서서 채워져있는 데이터번지 다음 2n 지점부터 저장이되는것과 분명히 다른말이며 만약 메모리사용정책이 이렇게되어있다면 패딩을 하지않아도 될수있다고 생각함. 물론 이것은 어디까지나 차이점을 비교하기위한 말이며 이것이 효율적이될수있을거라는 의미는 아님.)