Analysieren Code für die räumliche und zeitliche Lokalität
-
28-09-2019 - |
Frage
Hallo habe eine Frage in Bezug auf räumliche und zeitliche Lokalität. Ich habe im Laufe der Theorie gelesen, dass
räumliche Lokalität
Wenn ein Element Bezug genommen wird, wird die Wahrscheinlichkeit einer anderen Adresse in der Nähe von bald referenziert wird
zeitliche Lokalität
Ein Element, das an einem bestimmten Zeitpunkt verwiesen wird es dazu neigen, wieder verwies bald werden.
Ok, aber wie sehe ich, dass im Code? Ich denke, dass ich das Konzept für zeitliche Lokalität verstanden, aber ich verstehe noch nicht räumliche Lokalität. Zum Beispiel in dieser Schleife
for(i = 0; i < 20; i++)
for(j = 0; j < 10; j++)
a[i] = a[i]*j;
Die innere Schleife rufen gleiche Speicheradresse, wenn ein [i] zehnmal Zugriff, so dass Sie ein Beispiel für die zeitliche Lokalität, denke ich. Aber gibt es räumliche Lokalität auch in der obigen Schleife?
Lösung
Natürlich. Zum Beispiel nach der Referenzierung eines [5] Sie sind über ein [6].
referenzieren