Daily Archives: 2012年7月6日

[パタヘネ:読書メモ]第5章 容量と速度の両立:記憶階層の利用 その2

2012年7月6日 (カテゴリ: 読書メモ:)

5.3 キャッシュの性能の測定と改善 キャッシュの性能の測定を行うためには、CPUの使用時間の式を再定義する必要がある。 メモリアクセスを考慮したCPU使用時間は、以下の式で表すことができる。 CPU時間 = (CPU実行クロック数 + メモリストールクロック数 ) * クロックサイクル数   メモリストールクロック数 = 読出メモリストールクロック数 + 書込メモリストールクロック数   読出メモリストールクロック数 = 読出件数 * 読出ミス率 * 読出ミスペナルティ   書込メモリストールクロック数 = 書込件数 * 書込ミス率 * 書込ミスペナルティ + …


続きを読む

[PIC]TMRモジュールを使用する(タイマー割り込み)

2012年7月6日 (カテゴリ: PIC:)

PICにはTimer0モジュールというものがあり、このモジュールはカウンタやタイマー処理として使用できます。 今回はPI15F84におけるタイマー処理について説明します。 Timer0モジュールの仕組み Timer0モジュールは、カウンタ又はタイマーのどちらか一方として使用することが出来ます。 どちらのモードとして使うかはオプションレジスタ(0x81:OPTION_REG)の5ビット目にあるT0CSビットで指定することが可能で、このビットは以下の意味を持ちます。 OPTION_REG.T0CS(bit5)   1:RA4/T0CKI -> カウンタモード 0:内部クロック -&…


続きを読む

[gcc]値を2進数で表記する

2012年7月6日 (カテゴリ: 未分類:)

C言語のプログラムでは”0x”の接頭語で16進数の値を指定可能ですが、gccでは”0b”の接頭語を付けることで2進表記を行うことができます。 プログラム printf( "%d\n", 0x6f ); printf( "%d\n", 0b01101111 );printf( "%d\n", 0x6f ); printf( "%d\n", 0b01101111 ); 実行結果 111 111111 111 ただしこの表記はgccで使用可能…


続きを読む

vimで複数ファイルを編集する

2012年7月6日 (カテゴリ: 未分類:)

vimでは、複数のファイルを同時に編集することが出来ます。 vimではないviでも複数ファイル編集は出来るけど、ウィンドウ分割させて複数のファイルを”同時に”表示させる事は出来ません。 まずは1つファイルを開く vi test1.cvi test1.c vi上で以下のコマンドを打つと、2つ目のファイルが開く。 viでは複数ファイルを開いている場合、オープンしている各ファイルのことをバッファと呼びます。 :e test2.c:e test2.c オープンしている全バッファを確認する :ls:ls :lsの出力結果は以下のような感じになる。:filesでも同じだけどlsのほ…


続きを読む