アライメントの問題を忘れているだろう。
32bit境界に配置されていない変数は、
メモリアクセス時にペナルティーがかかったりするから、
intの方が効率がよい。メモリ効率を問題にするならintでbit演算、実行効率だけの問題ならint型の配列だろ。