-
Data: 2016-02-09 00:53:13
Temat: Re: Różnice między mikrokontrolerami
Od: "J.F." <j...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia Mon, 8 Feb 2016 21:28:14 +0100, janusz_k napisał(a):
> W dniu 2016-02-07 o 22:15, J.F. pisze:
>>>> Intel x86 też ma oddzielnie segmenty kodu i danych. I co? I jakoś z tym
>>>> żyjemy.
>>> To kompilator ma a nie procek, x86 od zawsze miały wspólną przestrzeń
>>> danych i programu.
>>
>> Przestrzen wspolna, adresacja jedna, ale i tu moze segmentacja
>> namieszac. Ktos jeszcze pamieta te modele pamieci w C - tiny, small,
>> huge .. 6 ich bylo :-(
> Pewnie, pisałem na nie. Co nie zmienia faktu że można było wpisać
> dowolny adres i pobrać dane czy zapisać z całej pamięci RAM,
W modelu small byl jednak segment kodu, segment danych, a
adres/wskaznik tylko 16 bitow liczyl.
>>>> Intel x86 też ma oddzielne instrukcje mov i in.
>>> Łaskawco rozrózniaj instrukcje dostępu do pamięci "mov" od instrukcji
>>> we/wy "in", bo jak na razie to mieszasz pojęcia.
>>
>> Poniekad ten sam problem, tylko w jeszcze innym miejscu.
>> taki 8080 nie mial np adresacji in/out posredniej czy przez rejestr,
>> tylko wpisany w rozkaz, - co uniemozliwialo zadanie adresu parametrem
>> - musial byc z gory okreslony.
>
> Jarku sprawdz zanim napiszesz, cytuję:
> "Other Instructions
>
> IN Port Data from Port placed in A register.
> OUT Port Data from A register placed in Port."
>
> http://fms.komkon.org/comp/CPUs/8080.txt
No - dane byly w rejestrze A, a adres portu ?
W drugim bajcie rozkazu.
Jesli miales w systemie np dwa porty szeregowe (UART), to nie mogles w
systemie napisac jednej procedury ich obslugi, do ktorej bys przekazal
adres bazowy sterownika portu. Adres byl staly.
Podobnie w C nie mogles napisac funcji, ktora by dostala adres portu
jako parametr. Musial byc staly i znany juz w czasie kompilacji.
Tzn mogles - jesli program byl w RAM a nie ROM, to program mogl sobie
zmienic bajt pamieci odpowiedniego rozkazu.
Cos mi chodzi po glowie, ze podobna zmiana kodu musiala byc stosowana
takze w x86, ale to jeszcze jakis inny rozkaz musial byc, bo IN/OUT
mialy mozliwosc adresowania DX.
A jak uwzglednic kolejki i cache, to sprawa przestaje byc prosta :-)
J.
Następne wpisy z tego wątku
- 09.02.16 10:30 slawek
- 09.02.16 11:05 J.F.
- 09.02.16 11:40 slawek
- 09.02.16 11:45 slawek
- 09.02.16 12:29 J.F.
- 10.02.16 19:14 mk
- 10.02.16 21:09 janusz_k
- 10.02.16 21:25 J.F.
- 13.02.16 16:46 janusz_k
Najnowsze wątki z tej grupy
- SEP 1 kV E
- Aku LiPo źródło dostaw - ktoś poleci ?
- starość nie radość
- Ataki hakerskie
- Akumulatorki Ni-MH AA i AAA Green Cell
- Dławik CM
- JDG i utylizacja sprzetu
- Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
Najnowsze wątki
- 2024-12-12 Warszawa => Administrator Bezpieczeństwa IT <=
- 2024-12-12 Ostrów Wielkopolski => Trener zespołu sprzedaży Call Center <=
- 2024-12-12 Kraków => Key Account Manager <=
- 2024-12-11 SEP 1 kV E
- 2024-12-11 DNS restrictions are on
- 2024-12-11 wielkie bu
- 2024-12-11 Białystok => Inżynier bezpieczeństwa aplikacji <=
- 2024-12-11 Aku LiPo źródło dostaw - ktoś poleci ?
- 2024-12-11 Warszawa => Specjalista Bezpieczeństwa Informacji <=
- 2024-12-11 Wrocław => Application Security Engineer <=
- 2024-12-11 Warszawa => Analyst in the Trade Development department (experience wi
- 2024-12-11 Lublin => Programista Delphi <=
- 2024-12-11 Motodziennik #305 Nowy ELEKTRYK za 350 złotych miesięcznie? Kreatywne kredytowanie problemów
- 2024-12-11 Warszawa => Spedytor Międzynarodowy <=
- 2024-12-11 Katowice => Key Account Manager (ERP) <=