Intel 8085Intel 8085 – 8-bitowy mikroprocesor wprowadzony przez firmę Intel w 1976 roku. Następca układu 8080, całkowicie z nim zgodny programowo, w porównaniu z 8080 wymagał jednak mniejszej liczby układów scalonych tworzących niezbędne otoczenie procesora, umożliwiając w ten sposób zmniejszenie kosztów budowy mikrokomputera. Cyfra „5” w nazwie modelu oznaczała, że 8085 potrzebował tylko +5 V napięcia zasilania, w odróżnieniu od +5 V, -5 V i +12 V wymaganych przez 8080. Mikroprocesory 8080 i 8085 były używane w komputerach działających z systemem operacyjnym CP/M-80; 8085 był także powszechnie stosowany jako sterownik w wielu urządzeniach (dzięki uproszczeniu konstrukcji systemu w stosunku do 8080). Oba te procesory zostały w późniejszym czasie zdystansowane przez mikroprocesor Z80 firmy Zilog, który stał się najpopularniejszym mikroprocesorem 8-bitowym używanym w Europie w komputerach domowych na początku lat 1980. Architektura mikroprocesora 8085Elementy mikroprocesora 8085Jednostka sterującaJednostka sterująca (CU) wytwarza sygnały sterujące dla pobierania i wykonywania instrukcji. Wytwarza ona dwa rodzaje sygnałów sterujących:
Sygnały -WR i -RD są aktywne poziomem niskim.
Szyna danych i adresowaIstotną modyfikację w stosunku do 8080 stanowiło wprowadzenie w 8085 multipleksowanej szyny adresowej i danych - linie AD7..0 służyły na początku każdego cyklu transmisji do przesłania adresu, a następnie do przesłania danych. Udostępnienie adresu na zewnątrz procesora przez cały czas trwania cyklu transmisji wymagało użycia zewnętrznego zatrzasku adresu (np. w postaci układu 74573), sterowanego sygnałem ALE. Pomimo konieczności użycia zatrzasku adresu, konstrukcja jednostki centralnej z 8085 była znacznie prostsza niż z 8080, dzięki eliminacji dodatkowych zasilań i układów generatora zegara 8224 i sterownika szyny 8228. Licznik instrukcjiLicznik instrukcji (PC) procesora jest 16-bitowy, wskazuje adres kolejnej instrukcji programu, która ma być pobrania z pamięci. Jednostka arytmetyczno logicznaJednostka arytmetyczno logiczna (ALU) wykonuje podstawowe operacje arytmetyczne i logiczne na danych ośmiobitowych oraz kilka operacji na danych 16-bitowych, pożytecznych przy wyliczaniu adresów. Zestaw dostępnych operacji zawiera:
Akumulator8-bitowy rejestr akumulatora (A) zawiera argument źródłowy i wynik operacji dwuargumentowych na danych 8-bitowych wykonywanych w ALU. Służy do wykonywania obliczeń oraz do interakcji z układami wejścia/wyjścia. Rejestry danych i adresoweRejestry robocze (pomocnicze) służą do przechowywania danych pomocniczych, które są zazwyczaj drugimi argumentami dla ALU lub do przechowywania wyników operacji cząstkowych. Procesor ma 6 8-bitowych rejestrów roboczych ogólnego przeznaczenia: B, C, D, E, H, L, połączonych w trzy pary 16-bitowe, BC, DE i HL, służące jako rejestry adresowe lub danych. Ponadto procesor jest wyposażony w rejestr wskaźnika stosu SP, zawierający adres danej ostatnio umieszczonej na stosie. Wskaźnik stosuWskaźnik stosu (SP) jest rejestrem 16-bitowym, który wykorzystuje się do ustalenia adresu do zapisu i odczytu danych z operacji na stosie. Rejestr instrukcji8-bitowy rejestr instrukcji (IR) przechowuje kod operacyjny aktualnie wykonywanej instrukcji; jest on używany wewnętrznie przez jednostkę sterującą. Jego zawartość steruje dekoderem instrukcji. Rejestr znacznikówRejestr znaczników mikroprocesora 8085 zawiera 7 znaczników, o 2 więcej niż w 8080. Znaczniki przechowują atrybuty wyniku ostatnio wykonanej operacji arytmetycznej lub logicznej. Instrukcje przesłań danych nie wpływają na stan znaczników. Rejestr znaczników 8085 zawiera następujące znaczniki:
Wejście SID i wyjście SODMikroprocesor jest wyposażony w jedno wyjście bitowe i jedno wejście bitowe. Mogą one służyć do programowej realizacji szeregowej transmisji asynchronicznej w standardzie UART lub w dowolnym innym charakterze, np. do testowania stanu przycisku i sterowania diodą LED. Do sterowania wyjściem SOD służy instrukcja SIM, a do odczytu stanu wejścia SID - instrukcja RIM. PrzerwaniaOprócz przerwania INT, obsługiwanego analogicznie jak w układzie 8080, mikroprocesor 8085 jest wyposażony w cztery wejścia zgłaszania przerwań, których uaktywnienie powoduje wywołanie procedury spod określonego adresu:
Przerwania maskowalne mogą być indywidualnie włączane i wyłączane przy użyciu instrukcji SIM Lista instrukcji8085 wykonuje wszystkie instrukcje 8080 oraz 12 własnych, których kody operacyjne w 8080 stanowiły aliasy kodów innych, udokumentowanych instrukcji. Spośród rozszerzeń listy instrukcji, dokumentacja większości producentów zawierała opis tylko dwóch instrukcji: RIM i SIM, używanych do sterowania przerwaniami i jednobitowym wejściem SOD i wyjściem SID. Publikacja opisu pozostałych instrukcji, znacznie ułatwiających operacje i adresowanie danych w programach pisanych w językach wysokiego poziomu, została wstrzymana, prawdopodobnie z powodu planów wprowadzenia procesora 8086, który nie miał odpowiedników dla tych instrukcji. Oficjalny opis tych instrukcji jest dostępny w dokumencie[1]. Przypisy
|