Mam pytanie odnośnie "logicznego rozdzielenia pamięci na dane i rozkazy" w architekturze harwardzkiej. Co to znaczy?
Gdzie takie pytanie dostałeś?
http://www.cs.put.poznan.pl/jjozefowska/wyklady/wspia/Informatyka4.pdf
Instrukcje i dane trzymane są w osobnych zakresach pamięci (lub wręcz osobnych układach).
Czyli można powiedzieć że zarówno dane jak i rozkazy dla procesora były miały zarezerwa
opiszon napisał(a):
Instrukcje i dane trzymane są w osobnych zakresach pamięci (lub wręcz osobnych układach).
Czyli można powiedzieć że zarówno dane jak i rozkazy dla procesora miały zarezerwowaną osobną przestrzeń odpowiednio dla danych i rozkazów?
Tak
piotrek1998 napisał(a):
Mam pytanie odnośnie "logicznego rozdzielenia pamięci na dane i rozkazy" w architekturze harwardzkiej. Co to znaczy?
To, że nie możesz w żaden sposób trzymać danych tam gdzie program i vice versa. Ma to zastosowanie np. w mikrokontrolerach https://en.wikipedia.org/wiki/Harvard_architecture#Contrast_with_von_Neumann_architectures . W normalnych komputerach nie ma to sensu, bo uniemożliwia to generowanie kodu poprzez programy.
____ napisał(a):
slsy napisał(a):
W normalnych komputerach nie ma to sensu, bo uniemożliwia to generowanie kodu poprzez programy.
Ma sens, w postaci "modified harvard".
Napisałbym więcej, ale znowu dostałem bana na główne konto :(
Tl;DR pamięć jest wspólna, ale masz oddzielną szynę oraz cache na pobieranie danych i rozkazów. Czyli ARMy. Coś pominąłem?
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.