Similar Posts

Subscribe
Notify of
13 Answers
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Destranix
1 year ago

Du hast die Hexadezimaladresse

FACD3A6A

Aus dieser extrahierst di den Index (bzw. du teils die Adresse auf in Tag, Index und Byte-Offset):

1111 1010 1100 1101 0011 1010 0110 1010
1111 1010 1100 1101 | 0011 1010 0110 | 1010
Tag                   Index            Byte-Offset

Der Index ist also

0011 1010 0110

entsprechend in Hexadezimal

3A6

entsprechend in Dezimal:

3 * 16 * 16 + 10 * 16 + 6 = 3 * 256 + 160 + 6 = 768 + 160 + 6 = 928 + 6 = 936;
Destranix
1 year ago
Reply to  RedDevil1982

3A6 ist 3*16^2 + 10 * 16 + 6 =934

entspricht 3A6

Möglich, evtl. habe ich mich verrechnet.

Cacheadresse = Speicheradresse modulo Anzahl Cacheeinträge

Damit mappst du aber das Byte-Offset mit. Das willst du beim Mapping aber ignorieren.

Destranix
1 year ago

Ja. Du müsstest quasi die Speicheradresse erst um das Byte-Offset verschieben (sodass der Index am niederwertigsten Bit beginnt), dann könntest du ein Modulo darauf anwenden um den index zu erhalten.

Destranix
1 year ago

Als gerenelle Formel für eine Cacheadresse gilt:

Cacheadresse = Speicheradresse modulo Anzahl Cacheinträge

Nein.

Warum muss hier das Byte-Offset ignoriert werden, um den Eintrag zu finden, der gemäß der Aufgabe d) geändert wird?

Da dein Cache-Eintrag eine gewisse Länge hat. Mittels des Byte-Offsets addressierst du die Bytes innerhalb des Cache-Eintrags.

Destranix
1 year ago

Warum wäre es hier falsch, wenn ich den Eintrag per

Cacheadresse = Speicheradresse modulo Anzahl Cacheinträge ermittle?

Weil du dann das Byte-Offset am Ende mit in die Berechnung einbeziehen würdest. Das muss aber ignoriert werden.

Über Cacheadresse = Speicheradresse modulo Anzahl Cacheinträge ermittle ich doch jetzt den genauen Bereich wo der Block in dieser Cacheline liegt.

Nein. Ein Cache-Eintrag hat eine gewisse Länge. Das ignorierst du hier.

Ist hier jetzt nur die Cachline gesucht oder der genaue Eintrag wo der Block liegt?

Wie meinen? Gesucht ist die Adresse im Cache soweit ich das verstehe.

Destranix
1 year ago

Abbildung von Apeicheradresse zu Cacheadresse