Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私は C で連想キャッシュ シミュレータを作成しています: 4 ウェイ、合計サイズ 524288 バイト、ブロック サイズ 64 バイト、アドレス 32 ビット。
このアドレス:
00001000000000000000000100001100
タグ、セット、単語の 10 進値は何ですか?
タグ: 256、セット: 4、ワード: 12だと思いますが、ヒット数とミス数にエラーがあり、これが問題である可能性があります。御時間ありがとうございます。
私はこれを得る:
000010000000000 00000000100 001100 000010000000000 = tag = 1024 00000000100 = slot number in set = 4 001100 = offset in block = 12
注: これは、タグの値が 4 倍異なることを除いて、結果と同じです。これはたまたま結合性と同じです。これは偶然ではないと思いたくなるでしょう (そして、そうすべきではないときに「方法」のためにいくつかのビットを消費していると思います)。