eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaRóżnice między mikrokontrolerami › Re: Różnice między mikrokontrolerami
  • Data: 2016-02-07 11:28:05
    Temat: Re: Różnice między mikrokontrolerami
    Od: "J.F." <j...@p...onet.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Dnia Sat, 6 Feb 2016 00:08:06 +0100, Grzegorz Kurczyk napisał(a):
    > W dniu 05.02.2016 o 21:22, Atlantis pisze:
    >> W dniu 2016-02-05 o 18:47, Sebastian Biały pisze:
    >>> Przy czym zaznaczam że czasami harvardowatość jest ukryta przed kodem
    >>> usera. Mówimy o procesorach gdzie jest to widoczne, jak na przykład AVR.
    >>> Tam jezyk C z definicji bedzie musiał być wspierany w mało przenośny
    >>> sposób aby wydajnie programować.
    >>
    >> Hmm... O jakich aspektach kodu pod AVR tutaj mówimy?
    >>
    > AVR ma oddzielną pamięć programu i danych co powoduje, że np do
    > odczytania bajtu z pamięci programu (która ma szynę 16-bitową) służy
    > inny rozkaz procesora niż do czytania bajtu z pamięci danych z szyną
    > 8-bitową. Czyli jeśli z poziomu języka wyższego poziomu chcesz np.
    > wyświetlić jakiś napis, to masz dwie różne definicje łańcucha
    > określające w jakiej pamięci ma być umieszczony i dwie różne procedury
    > do wyświetlania tego łańcucha w zależności gdzie był umieszczony.

    Przy czym zauwaz, ze to jest luzno zwiazane z "harvardowoscia".

    Osobna pamiec programu ... program w C w zasadzie programu nie rusza,
    a tam gdzie rusza (adres funkcji), tam kontekst jest z gory ustalony.

    Problemem sa dane przechowywane w pamieci programu.
    Cos w zasadzie sprzeczne z harwardowoscia :-)

    C sie z tym boryka od dawna - byl chocby segment danych
    niezainicjowanych i zainicjowanych czy nawet stalych.

    Oczywiscie w uC przez dlugi czas bylo malo pamieci, co zachecalo do
    uzycia ROM, z drugiej strony ROM jest wolny, a RAM szybki, co zacheca
    do przepisania programu do RAM. Nawet jesli to specjalny RAM,
    wydzielony tylko na program :-)

    > Przy architekturze von Neumanna nie ma rozdzielenia pamięci danych od
    > pamięci programu. O tym czy procesor widzi pamięć w danej chwili kostkę
    > RAM, EPROM czy rejestr jakiegoś I/O decyduje dekoder adresów. Procek
    > może wykonywać rozkazy umieszczone w dowolnym obszarze przestrzeni
    > adresowej.

    Harvard Harvardem, ale w co bardziej uniwersalnych systemach jest
    potrzeba aby program tworzyl program do wykonania w RAM, czy nawet
    zaczytywal go z dysku. I dostep do pamieci programu musi byc, nawet
    jesli to pamiec specjalna.

    J.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: