あと、小さい値であっても、Int8とかInt16とかを使うよりもIntを使ったほうが時間効率が良くなるみたいな話。
CPUについて考えるとわかるのだけど、たとえば32ビットマシンで8ビット書きこもうとすると
1. 32ビット読み出す
2. 32ビットのうち指定された8ビットを変更する
3. 32ビット書き込む
みたいになる。
ただ、このあたりはコンパイラがアラインメントの計算で「いい感じ」にしてくれるのかもしれない。
あと、小さい値であっても、Int8とかInt16とかを使うよりもIntを使ったほうが時間効率が良くなるみたいな話。
CPUについて考えるとわかるのだけど、たとえば32ビットマシンで8ビット書きこもうとすると
1. 32ビット読み出す
2. 32ビットのうち指定された8ビットを変更する
3. 32ビット書き込む
みたいになる。
ただ、このあたりはコンパイラがアラインメントの計算で「いい感じ」にしてくれるのかもしれない。
No replies yet.