===== プログラム書いてたときに分かったこと ===== ==== CPU処理にかかる時間とメモリの関係 ==== * CPUで値を更新しようとするとき、メモリの大きい領域にアクセスすると時間がかかる。 * よって、アクセスするメモリ領域を小さくする。 * もしくはalignasを使って構造体のアライメントを小さくする。 * mR frameworkの実装では、16*2=32byteずつ配列を確保した。(これでうまくいったかは謎だが、少なくとも色数を落として処理速度はあがった) ---- ==== TrueColor-32768色の相互運用 ==== * TrueColor->32768色にマッピング変更するときは、各色のbitを取得して3bit右にシフトし、更に2byteの変数にデータを詰め直すとできる。 * 32768色からTrueColorにマッピングを変更するとき、各色の数値を取得して3bit左にシフトし、4byteの変数にデータを詰め直す。 ---- *