32- 8- 32- , . , , .. , 4 ( 32 8- ) .
Assuming we're talking about C or C ++, the optimizing compiler tends to make the right decisions for you, but you can explicitly control this behavior if you need to do your own packing into structures, etc.
However, there are other BEST reasons to use a type that matches the domain of your data: clarity, maintainability, etc. I think that this optimization trump cards in 99% of cases.
source
share