Gaweł. Architektura mikroprocesorów Z80 zagadnienia oprogramowania
|
|
- Jarosław Krzemiński
- 7 lat temu
- Przeglądów:
Transkrypt
1 Gaweł Architektura mikroprocesorów Z80 zagadnienia oprogramowania Białystok, luty 2006
2 Wręcz kultowy mikroprocesor Z80 jest mikroprocesorem 8-bitowym zbudowanym w oparciu o architekturę Von Neumanna. Główną cechą charakterystyczną procesorów w architekturze Von Neumanna jest wspólna pamięć danych i kodu programu. Łatwo z tego wysnuć wniosek, że wczytanie kodu programu z dowolnego źródła, umieszczenie go w pamięci (oczywiście jedynie w przypadku, gdy technicznie możliwy jest zapis do pamięci) i uruchomienie jest czynnością jak najbardziej naturalną. Do innych procesorów o tym samym typie architektury można zaliczyć procesory MC6800 (firmy Motorola), I8080 z późniejszą mutacją w postaci procesora I8085 (firmy Intel) i obecnie najbardziej rozpowszechniony I8086 wraz z wszystkimi mutacjami aż do Pentium włącznie. Fot. 1: Mikroprocesory Z80 różnych producentów Mikroprocesor Z80 jest mocno ulepszoną wersją procesora I8080 (kompatybilność z procesorem Intela na poziomie kodów instrukcji). Patrząc na historię rozwoju niektórych mikroprocesorów, nie da się ukryć, że współczesne komputery zbudowane w oparciu o procesory pentium zawierają w sobie pewne cechy odziedziczone po procesorze I8080. Niejako metodą indukcji można wnioskować, że w żyłach procesorów pentium (a może należałoby powiedzieć w szynach systemowych) znajdziemy geny zawarte w Z80. Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-2/27-
3 Program binarny stworzony dla procesora I8080 miał być bez problemów akceptowalny przez procesor Z80. Jednak wybrane instrukcje arytmetyczne dawały inny rezultat w rejestrze wskaźników, toteż istnieje metoda programowego wykrycia, czy program jest uruchomiony w systemie zbudowanym w oparciu o mikroprocesor Zilog'a czy Inte'a. Oprócz wprowadzenia wielu użytecznych instrukcji, procesor Z80 odróżniał się od procesora Intel'a wprowadzeniem rejestrów indeksowych pozwalających na rozbudowane sposoby adresowania. Nie bez znaczenia pozostaje fakt, że Z80 jako pierwszy procesor miał zrealizowane sprzętowe odświeżanie pamięci dynamicznych. Po wykonaniu każdej instrukcji następowała realizacja sprzętowego cyklu odświeżenia kolejnego wiersza w pamięciach dynamicznych (numery odświeżanych wierszy są zliczane w specjalnym rejestrze R). Rozwiązywało to wiele problemów konstrukcyjnych w przypadku stosowania pamięci dynamicznych. Obecnie to z pewnością traci na znaczeniu, ponieważ pojemności pamięci statycznych są znacznie większe niż przed wielu laty. W czasach, gdy ten procesor zdobywał rynek dostępne były pamięci statyczne o pojemności do kilku kilobitów (przykładowo rozpowszechnioną pamięcią była 2114, pamięć statyczna 1 kilo x 4 bity), natomiast pamięci dynamiczne 16 kilo x 1 bit nie były niczym niezwykłym. Zasoby mikroprocesora Z80 (czyli, co ten procek miał do dyspozycji) są następujące: akumulator do 8-bitowych operacji arytmetycznych i logicznych [A], rejestr wskaźników [F], 8-bitowy rejestr B ogólnego przeznaczenia, 8-bitowy rejestr C ogólnego przeznaczenia, 8-bitowy rejestr D ogólnego przeznaczenia, 8-bitowy rejestr E ogólnego przeznaczenia, 8-bitowy rejestr H ogólnego przeznaczenia, 8-bitowy rejestr L ogólnego przeznaczenia, 8-bitowy rejestr I związany z obsługą przerwań maskowalnych, 8-bitowy rejestr R związany z odświeżaniem pamięci dynamicznych, 16-bitowy rejestr indeksowy IX, 16-bitowy rejestr indeksowy IY, 16-bitowy rejestr wskaźnika stosu SP, 16-bitowy rejestr licznika rozkazów PC (ten rejestr jest rejestrem ukrytym i niedostępnym do używania w programie). Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-3/27-
4 Pewną innowacją, która pojawiła się w procesorze Z80 jest zdublowany zespół podstawowych rejestrów (to jest rejestrów A, F, B, C, D, E, H oraz L), mający duże znaczenie w obsłudze przerwań. Procesor posiadał dwa zestawy tych rejestrów, z czego tylko jeden z nich był aktywny. Obsługa przerwania (szczególnie w przypadku gdy nie jest możliwa obsługa przerwań w przerwaniach) używając dwóch instrukcji (EX AF,AF' oraz EXX) mogła przełączyć się na alternatywny zespół rejestrów, dowolnie je używać i przed zakończeniem obsługi przerwania powrócić do poprzedniego, nienaruszonego zestawu rejestrów (bez odkładania rejestrów na stosie). Wybrane rejestry 8-bitowe mogą być łączone w pary tworząc rejestry 16- bitowe. Możliwe do uzyskania pary rejestrów są następujące: rejestr BC jako połączenie rejestru B i C, rejestr DE jako połączenie rejestru D i E, rejestr HL jako połączenie rejestru H i L. Tak utworzone pary rejestrów generalnie służą do adresowania pamięci, a w szczególności rejestr HL. Warto tu zauważyć, że mikroprocesor Z80 posiadał instrukcje 16-bitowego dodawania, co jest bardzo pomocne przy obliczaniu adresów w pamięci. Rolę 16-bitowego akumulatora spełniał rejestr HL. Inną ciekawą cechą procesora Z80 są instrukcje blokowe. Wpisując do odpowiednich rejestrów wymagane dane, można było operować na całym bloku. Jako przykład niech posłuży instrukcja LDIR służąca do przepisania bloku danych z jednego miejsca w drugie. Wymagała ona wpisania do rejestru HL adresu miejsca źródłowego, do rejestru DE adresu miejsca docelowego, do rejestru BC wielkości bloku. LD HL,<adres z> LD DE,<adres do> LD BC,1000 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-4/27-
5 LDIR 4 instrukcje zilogowe i mamy przepisane 1000 bajtów z jednego miejsca do drugiego. Na bazie tej instrukcji możne było uzyskać inne wartościowe cechy. Przykładowo poniższy ciąg instrukcji LD HL,<adres> LD DE,<adres>+1 LD BC,1000 LDIR powodował replikację zawartości bajtu pamięci o adresie określonym w rejestrze HL w całym obszarze. Taki chwyt powszechnie był używany do zerowania obszarów w pamięci RAM. Ciekawą cechą mikroprocesora Z80 jest sposób rozwiązania obsługi przerwań. Za pomocą instrukcji IM można było wybrać programowo jeden z trzech możliwych trybów obsługi przerwań. Są to: tryb 0 (po wykonaniu instrukcji IM 0), tryb 1 (po wykonaniu instrukcji IM 1), tryb 2 (po wykonaniu instrukcji IM 2). Tryb 0 W tym trybie sposób obsługi jest zgodny ze sposobem oferowanym przez procesory I8080. Urządzenie przerywające umieszcza na magistrali danych rozkaz RST <numer>. Przy realizacji tej instrukcji na stosie jest zachowany aktualny stan rejestru licznika instrukcji i następuje skok do odpowiedniego stałego miejsca w pamięci. Tryb 1 Podobnie jak w dla przerwań niemaskowalnych, procesor odkłada na stosie zawartość licznika rozkazów i realizuje skok do komórki o adresie 38 hex. Tryb 2 Jest to wektoryzowany i najbardziej efektywny sposób obsługi przerwań. W tym trybie adres procedury obsługi przerwania (jako 16-bitowy adres w pamięci) składa się w części starszej z zawartości rejestru I (związanego z przerwaniami i wcześniej odpowiednio zainicjowanego) oraz w części młodszej z danych dostarczonych poprzez magistralę danych z urządzenia przerywającego (również odpowiednio wcześniej zainicjowanego). Tak ustalony adres jest wskazaniem w pamięci na procedurę obsługi przerwania. Należy tu jednocześnie zauważyć, że w tym trybie obsługi przerwań mikroprocesor mógł współpracować jedynie ze swoimi układami (zaprojektowanymi dla Z80). W pewnym sensie obsługa przerwań w tym trybie jest sprzętowo rozproszona i sam mikroprocesor musiał umieć dogadać się z urządzeniami generującymi przerwanie. Po sygnale zerowania, mikroprocesor z zablokowanymi przerwaniami maskowalnymi (w trybie IM 0) rozpoczyna pracę od wykonania instrukcji spod Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-5/27-
6 adresu 0 w pamięci (co nie jest regułą, bo przykładowo 8086 rusza praktycznie od końca pamięci /dokładniej 16 bajtów przed fizycznym końcem przestrzeni adresowej/). W pierwszej kolejności należy zadbać o właściwie ustawienie wskaźnika stosu SP. Stos ma typową organizację, to znaczy rośnie w dół. Każde odłożenie na stos zawartości rejestrów zmniejsza zawartość rejestru SP o 2 (każda instrukcja push i pop dotyczy pary rejestrów [BC, DE, HL, AF jako złożenie do 16- bitowego rejestru akumulatora A i rejestru wskaźników F]). Język assemblera Z80 nie odbiega od jakiegokolwiek assemblera innych procesorów. Tak jak wszędzie występują typowe dyrektywy tego języka, jak przykładowo: ORG EQU DEFS DEFB DEFW Postać wiesza programu źródłowego również ma identyczną postać. Każdy wiersza zawiera zapis instrukcji języka, która może być poprzedzona etykietą, identycznie znak średnika jest używany jako początek komentarza w programie. Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-6/27-
7 Postać instrukcji I. grupa rozkazów przesłań informacji 8-bitowych Zapis instrukcji LD reg1,reg2 LD reg,data8 LD reg,(hl) LD reg,(ix+disp) LD reg,(ix-disp) LD reg,(iy+disp) LD reg,(iy-disp) LD (HL),reg LD (IX+disp),reg LD (IX-disp),reg LD (IY+disp),reg LD (IY-disp),reg LD (HL),data8 LD (IX+disp),data8 LD (IX-disp),data8 LD (IY+disp),data8 LD (IY-disp),data8 prześlij zawartość rejestru reg2 do reg1 [reg1] <--- [reg2] wpisz do rejestru reg wartość data8 [reg] <--- data8 prześlij zawartość bajtu adresowanego przez zawartość pary rejestrów HL do rejestru reg [reg] <--- [[HL]] prześlij zawartość bajtu adresowanego przez wartość wyrażenia IX+disp lub IX-disp do rejestru reg [reg] <--- [[IX]+disp] lub [reg] <--- [[IX]-disp] prześlij zawartość bajtu adresowanego przez wartość wyrażenia IY+disp lub IY-disp do rejestru reg [reg] <--- [[IY]+disp] lub [reg] <--- [[IY]-disp] prześlij zawartość rejestru reg do pamięci pod adres określony zawartością pary rejestrów HL [[HL]] <--- [reg] prześlij zawartość rejestru reg do pamięci pod adres określony przez wartość wyrażenia IX+disp lub IX-disp [[IX]+disp] <--- [reg] lub [[IX]-disp] <--- [reg] prześlij zawartość rejestru reg do pamięci pod adres określony przez wartość wyrażenia IY+disp lub IY-disp [[IY]+disp] <--- [reg] lub [[IY]-disp] <--- [reg] wpisz wartość data8 do pamięci operacyjnej pod adres określony przez zawartość pary rejestrów HL [[HL]] <--- data8 wpisz wartość data8 do pamięci operacyjnej pod adres określony wartością wyrażenia IX+disp lub IX-disp [[IX]+disp] <--- data8 lub [[IX]-disp] <--- data8 wpisz wartość data8 do pamięci operacyjnej pod adres określony wartością wyrażenia IY+disp lub IY-disp [[IY]+disp] <-- data8 lub [[IY]-disp] <-- data8 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-7/27-
8 LD A,(BC) LD A,(DE) LD A,(adr16) LD (BC),A LD (DE),A LD (adr16),a LD A,I LD A,R LD I,A LD R,A prześlij zawartość bajtu z pamięci operacyjnej adresowanej zawartością pary rejestrów BC do akumulatora A [A] <--- [BC] prześlij zawartość bajtu z pamięci operacyjnej adresowanej zawartością pary rejestrów DE do akumulatora A [A] <--- [DE] prześlij zawartość bajtu z pamięci operacyjnej o adresie adr16 do akumulatora A [A] <--- [adr16] prześlij zawartość akumulatora A do pamięci operacyjnej pod adres określony przez zawartość pary rejestrów BC [BC] <--- [A] prześlij zawartość akumulatora A do pamięci operacyjnej pod adres określony przez zawartość pary rejestrów DE [DE] <-- [A] prześlij zawartość akumulatora A do pamięci operacyjnej o adresie adr16 [adr16] <-- [A] prześlij zawartość rejestru I do akumulatora A [A] <--- [I] prześlij zawartość rejestru R do akumulatora A [A] <--- [R] prześlij zawartość akumulatora A do rejestru I [I] <--- [A] prześlij zawartość akumulatora A do rejestru R [R] <--- [A] II. grupa rozkazów przesłań informacji 16-bitowych Zapis instrukcji LD BC,data16 LD DE,data16 LD HL,data16 LD SP,data16 wpisz do pary rejestrów BC wartość data16 [BC] <--- data16 wpisz do pary rejestrów DE wartość data16 [DE] <--- data16 wpisz do pary rejestrów HL wartość data16 [HL] <--- data16 wpisz do rejestru SP wartość data16 [SP] <--- data16 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-8/27-
9 LD IX,data16 LD IY,data16 LD HL,(adr16) LD BC,(adr16) LD DE,(adr16) LD SP,(adr16) LD IX,(adr16) LD IY,(adr16) LD (adr16),hl LD (adr16),bc LD (adr16),de LD (adr16),sp LD (adr16),ix LD (adr16),iy LD SP,HL LD SP,IX wpisz do rejestru IX wartość data16 [IX] <--- data16 wpisz do rejestru IY wartość data16 [IY] <--- data16 wpisz do pary rejestrów HL zawartość dwóch bajtów pamięci operacyjnej o adresie adr16 [HL] <--- [adr16] wpisz do pary rejestrów BC zawartość dwóch bajtów pamięci operacyjnej o adresie adr16 [BC] <--- [adr16] wpisz do pary rejestrów DE zawartość dwóch bajtów pamięci operacyjnej o adresie adr16 [DE] <--- [adr16] wpisz do rejestru SP zawartość dwóch bajtów pamięci operacyjnej o adresie adr16 [SP] <--- [adr16] wpisz do rejestru IX zawartość dwóch bajtów pamięci operacyjnej o adresie adr16 [IX] <--- [adr16] wpisz do rejestru IY zawartość dwóch bajtów pamięci operacyjnej o adresie adr16 [IY] <--- [adr16] składuj zawartość pary rejestrów HL w pamięci operacyjnej o adresie adr16 [adr16] <--- [HL] składuj zawartość pary rejestrów BC w pamięci operacyjnej o adresie adr16 [adr16] <--- [BC] składuj zawartość pary rejestrów DE w pamięci operacyjnej o adresie adr16 [adr16] <--- [DE] składuj zawartość rejestru SP w pamięci operacyjnej o adresie adr16 [adr16] <--- [SP] składuj zawartość rejestru IX w pamięci operacyjnej o adresie adr16 [adr16] <--- [IX] składuj zawartość rejestru IY w pamięci operacyjnej o adresie adr16 [adr16] <--- [IY] prześlij zawartość pary rejestrów HL do rejestru SP [SP] <--- [HL] prześlij zawartość rejestru IX do rejestru SP [SP] <--- [IX] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-9/27-
10 LD SP,IY PUSH BC PUSH DE PUSH HL PUSH AF PUSH IX PUSH IY POP BC POP DE POP HL POP AF prześlij zawartość rejestru IY do rejestru SP [SP] <--- [IY] składuj zawartość pary rejestrów BC na szczycie stosu [[SP]-1] <--- [B] [[SP]-2] <--- [C] [SP] <--- [SP]-2 składuj zawartość pary rejestrów DE na szczycie stosu [[SP]-1] <--- [D] [[SP]-2] <--- [E] [SP] <--- [SP]-2 składuj zawartość pary rejestrów HL na szczycie stosu [[SP]-1] <--- [H] [[SP]-2] <--- [L] [SP] <--- [SP]-2 składuj zawartość akumulatora A i wskaźników F na szczycie stosu [[SP]-1] <--- [A] [[SP]-2] <--- [F] [SP] <--- [SP]-2 składuj zawartość rejestru IX na szczycie stosu [[SP]-1] <--- [hi(ix)] [[SP]-2] <--- [lo(ix)] [SP] <--- [SP]-2 składuj zawartość rejestru IY na szczycie stosu [[SP]-1] <--- [hi(iy)] [[SP]-2] <--- [lo(iy)] [SP] <--- [SP]-2 odtwórz ze szczytu stosu zawartość pary rejestrów BC [C] <--- [[SP]] [B] <--- [[SP]+1] [SP] <--- [SP]+2 odtwórz ze szczytu stosu zawartość pary rejestrów DE [E] <--- [[SP]] [D] <--- [[SP]+1] [SP] <--- [SP]+2 odtwórz ze szczytu stosu zawartość pary rejestrów HL [L] <--- [[SP]] [H] <--- [[SP]+1] [SP] <--- [SP]+2 odtwórz ze szczytu stosu zawartość rejestru A i wskaźników F [F] <--- [[SP]] [A] <--- [[SP]+1] [SP] <--- [SP]+2 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-10/27-
11 POP IX POP IY odtwórz ze szczytu stosu zawartość rejestru IX [lo(ix)] <--- [[SP]] [hi(ix)] <--- [[SP]+1] [SP] <--- [SP]+2 odtwórz ze szczytu stosu zawartość rejestru IY [lo(iy)] <--- [[SP]] [hi(iy)] <--- [[SP]+1] [SP] <--- [SP]+2 III. grupa rozkazów wymiany danych, transmisji grupowych oraz wyszukiwania Zapis instrukcji EX DE,HL EX AF,AF' EX (SP),HL EX (SP),IX EX (SP),IY EXX LDI wymień zawartości par rejestrów DE i HL miedzy sobą [DE] <----> [HL] wymień zawartość akumulatora A i wskaźników F z alternatywnym akumulatorem A' i wskaźnikami F' [AF] <---> [AF'] wymień zawartość szczytu stosu z para rejestrów HL [H] <---> [[SP]+1] [L] <---> [[SP]] wymień zawartość szczytu stosu z rejestrem IX [hi(ix)] <---> [[SP]+1] [lo(ix)] <---> [[SP]] wymień zawartość szczytu stosu z rejestrem IY [hi(iy)] <---> [[SP]+1] [lo(iy)] <---> [[SP]] wymień zawartości rejestrów B,C,D,E,H,L z zestawem alternatywnym [BC] <---> [BC'] [DE] <---> [DE'] [HL] <---> [HL'] przepisz jeden bajt z pamięci o adresie zawartym w parze rejestrów HL do pamięci o adresie zawartym w parze rejestrów DE, zwiększ zawartości rejestrów HL i DE oraz zmniejsz zawartość rejestru BC o jeden [[DE]] <--- [[HL]] [DE] <--- [DE]+1 [HL] <--- [HL]+1 [BE] <--- [BC]-1 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-11/27-
12 LDIR LDD LDDR CPI CPIR CPD przepisz blok pamięci o wielkości określonej zawartością pary rejestrów BC spod adresu określonego zawartością pary rejestrów HL do pamięci określonej zawartością pary rejestrów DE, powtarzaj aż do [BC]=0 [[DE]] <--- [[HL]] [DE] <--- [DE]+1 [HL] <--- [HL]+1 [BC] <--- [BC]-1 przepisz jeden bajt z pamięci o adresie zawartym w parze rejestrów HL do pamięci o adresie zawartym w parze rejestrów DE, zmniejsz zawartości rejestrów HL i DE oraz zmniejsz zawartość rejestru BC o jeden [[DE]] <--- [[HL]] [DE] <--- [DE]-1 [HL] <--- [HL]-1 [BE] <--- [BC]-1 przepisz blok pamięci o wielkości określonej zawartością pary rejestrów BC spod adresu określonego zawartością pary rejestrów HL do pamięci określonej zawartością pary rejestrów DE, powtarzaj aż do [BC]=0 [[DE]] <--- [[HL]] [DE] <--- [DE]-1 [HL] <--- [HL]-1 [BC] <--- [BC]-1 porównaj (ustawiając tylko wskaźniki) zawartość akumulatora A z zawartością pamięci o adresie określonym zawartością pary rejestrów HL, zwiększ zawartość pary rejestrów HL i zmniejsz zawartość pary rejestrów BC o jeden [A] - [[HL]] [HL] <--- [HL]+1 [BC] <--- [BC]-1 poszukaj w bloku pamięci o adresie określonym zawartością pary rejestrów HL i wielkości określonej zawartością pary rejestrów BC bajtu o wartości określonej zawartością akumulatora A powtarzaj aż do [A] = [[HL]] lub [BC]=0 [A] - [[HL]] [HL] <--- [HL]+1 [BC] <--- [BC]-1 porównaj (ustawiając tylko wskaźniki) zawartość akumulatora A z zawartością pamięci o adresie określonym zawartością pary rejestrów HL, zmniejsz zawartość pary rejestrów HL i BC o jeden [A] - [[HL]] [HL] <--- [HL]-1 [BC] <--- [BC]-1 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-12/27-
13 CPDR Zapis instrukcji poszukaj w bloku pamięci o adresie określonym zawartością pary rejestrów HL i wielkości określonej zawartością pary rejestrów BC bajtu o wartości określonej zawartością akumulatora A powtarzaj aż do [A] = [[HL]] lub [BC]=0 [A] - [[HL]] [HL] <--- [HL]-1 [BC] <--- [BC]-1 IV. grupa rozkazów arytmetycznych i logicznych na danych 8-bitowych Zapis instrukcji ADD reg ADD data8 ADD (HL) ADD (IX+disp) ADD (IX-disp) ADD (IY+disp) ADD (IY-disp) ADC reg ADC data8 ADC (HL) ADC (IX+disp) ADC (IX-disp) dodaj do zawartości akumulatora A zawartość rejestru reg [A] <--- [A]+[reg] dodaj do zawartości akumulatora A wartość data8 [A] <--- [A]+data8 dodaj do zawartości akumulatora A zawartość pamięci operacyjnej adresowanej zawartością pary rejestrów HL [A] <--- [A]+[[HL]] dodaj do zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp [A] <--- [A]+[[IX]+disp] LUB [A] <--- [A]+[[IX]-disp] dodaj do zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp [A] <--- [A]+[[IY]+disp] LUB [A] <--- [A]+[[IY]-disp] dodaj do zawartości akumulatora A zawartość rejestru reg z uwzględnieniem zawartości wskaźnika C [A] <--- [A]+[reg]+C dodaj do zawartości akumulatora A wartość data8 z uwzględnieniem zawartości wskaźnika C [A] <--- [A]+data8+C dodaj do zawartości akumulatora A zawartość pamięci operacyjnej adresowanej przez zawartość pary rejestrów HL z uwzględnieniem zawartości wskaźnika C [A] <--- [A]+[[HL]]+C dodaj do zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażeniem IX+disp lub IX-disp z uwzględnieniem zawartości wskaźnika C [A] <--- [A]+[[IX]+disp] lub [A] <--- [A]+[[IX]-disp] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-13/27-
14 ADC (IY+disp) ADC (IY-disp) SUB reg SUB data8 SUB (HL) SUB (IX+disp) SUB (IX-disp) SUB (IY+disp) SUB (IY-disp) SBC reg SBC data8 SBC (HL) SBC (IX+disp) SBC (IX-disp) SBC (IY+disp) SBC (IY-disp) AND reg dodaj do zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp z uwzględnieniem zawartości wskaźnika C [A] <--- [A]+[[IY]+disp] lub [A] <--- [A]+[[IY]-disp] odejmij od zawartości akumulatora A zawartość rejestru reg [A] <--- [A]-[reg] odejmij od zawartości akumulatora A wartość data8 [A] <--- [A]-data8 odejmij od zawartości akumulatora A zawartość pamięci operacyjnej adresowanej zawartością pary rejestrów HL [A] <--- [A]-[[HL]] odejmij od zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp [A] <--- [A]-[[IX]+disp] lub [A] <--- [A]-[[IX]-disp] odejmij od zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp [A] <--- [A]-[[IY]+disp] lub [A] <--- [A]-[[IY]-disp] odejmij od zawartości akumulatora A zawartość rejestru reg z uwzględnieniem zawartości wskaźnika C [A] <--- [A]-[reg]-C odejmij od zawartości akumulatora A wartość data8 z uwzględnieniem zawartości wskaźnika C [A] <--- [A]-data8-C odejmij od zawartości akumulatora A zawartość pamięci operacyjnej adresowanej przez zawartość pary rejestrów HL z uwzględnieniem zawartości wskaźnika C [A] <--- [A]-[[HL]]-C odejmij od zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp z uwzględnieniem zawartości wskaźnika C [A] <--- [A]-[[IX]+disp]-C lub [A] <--- [A]-[[IX]-disp]-C odejmij od zawartości akumulatora A zawartość pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp z uwzględnieniem zawartości wskaźnika C [A] <--- [A]-[[IY]+disp]-C lub [A] <--- [A]-[[IY]-disp]-C wykonaj iloczyn logiczny zawartości akumulatora A z zawartością rejestru reg [A] <--- [A] AND [reg] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-14/27-
15 AND data8 AND (HL) AND (IX+disp) AND (IX-disp) AND (IY+disp) AND (IY-disp) OR reg OR data8 OR (HL) OR (IX+disp) OR (IX-disp) OR (IY+disp) OR (IY-disp) XOR reg XOR data8 wykonaj iloczyn logiczny zawartości akumulatora A z wartością data8 [A] <--- [A] AND data8 wykonaj iloczyn logiczny zawartości akumulatora A z zawartością pamięci operacyjnej adresowanej zawartością pary rejestrów HL [A] <--- [A] AND [[HL]] wykonaj iloczyn logiczny zawartości akumulatora A z zawartością pamięci operacyjnej adresowanej wartością wyrażeniem IX+disp lub IX-disp [A] <--- [A] AND [[IX]+disp] lub [A] <--- [A] AND [[IX]-disp] wykonaj iloczyn logiczny zawartości akumulatora A z zawartością pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp [A] <--- [A] AND [[IY]+disp] lub [A] <--- [A] AND [[IY]-disp] wykonaj sumę logiczna zawartości akumulatora z zawartością rejestru reg [A] <--- [A] OR [reg] wykonaj sumę logiczna zawartości akumulatora z wartością data8 [A] <--- [A] OR data8 wykonaj sumę logiczna zawartości akumulatora z zawartością pamięci operacyjnej adresowanej zawartością pary rejestrów HL [A] <--- [A] OR [[HL]] wykonaj sumę logiczna zawartości akumulatora z zawartością pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp [A] <--- [A] OR [[IX]+disp] lub [A] <--- [A] OR [[IX]+disp] wykonaj sumę logiczna zawartości akumulatora z zawartością pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp [A] <--- [A] OR [[IX]+disp] lub [A] <--- [A] OR [[IX]+disp] wykonaj operacje EX-OR na zawartości akumulatora A i rejestru reg [A] <--- [A] XOR [reg] wykonaj operacje EX-OR na zawartości akumulatora A i wartości data8 [A] <--- [A] XOR data8 XOR (HL) wykonaj operacje EX-OR na zawartości akumulatora A i bajtu pamięci operacyjnej o adresie zawartym w HL [A] <--- [A] XOR [[HL]] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-15/27-
16 XOR (IX+disp) XOR (IX-disp) XOR (IY+disp) XOR (IY-disp) CP reg CP data8 CP (HL) CP (IX+disp) CP (IX-disp) CP (IY+disp) CP (IY-disp) INC reg INC (HL) INC (IX+disp) INC (IX-disp) INC (IY+disp) INC (IY-disp) wykonaj operacje EX-OR na zawartości akumulatora A i bajtu pamięci operacyjnej o adresie określonym wartością wyrażenia IX+disp lub IX-disp [A] <--- [A] XOR [[IX]+disp] lub [A] <--- [A] XOR [[IX]+disp] wykonaj operacje EX-OR na zawartości akumulatora A i bajtu pamięci operacyjnej o adresie określonym wartością wyrażenia IY+disp lub IY-disp [A] <--- [A] XOR [[IY]+disp] lub [A] <--- [A] XOR [[IY]+disp] wykonaj porównanie (tylko ustawienie wskaźników) zawartości akumulatora A i rejestru reg [A] - [reg] wykonaj porównanie (tylko ustawienie wskaźników) zawartości akumulatora A i wartości data8 [A] - data8 wykonaj porównanie (tylko ustawienie wskaźników) zawartości akumulatora A i bajtu pamięci o adresie zawartym w rejestrze HL [A] - [[HL]] wykonaj porównanie (tylko ustawienie wskaźników) zawartości akumulatora A i bajtu pamięci o adresie określonym wartością wyrażenia IX+disp lub IX-disp [A] - [[IX]+disp] lub [A] - [[IX]-disp] wykonaj porównanie (tylko ustawienie wskaźników) zawartości akumulatora A i bajtu pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp [A] - [[IY]+disp] lub [A] - [[IY]-disp] zwiększ zawartość rejestru reg o jeden [reg] <--- [reg]+1 zwiększ zawartość bajtu pamięci operacyjnej adresowanej zawartością pary rejestrów HL o jeden [[HL]] <--- [[HL]]+1 zwiększ zawartość bajtu pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp o jeden [[IX]+disp] <--- [[IX]+disp]+1 lub [[IX]-disp] <--- [[IX]-disp]+1 zwiększ zawartość bajtu pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp o jeden [[IX]+disp] <--- [[IX]+disp]+1 lub [[IX]-disp] <--- [[IX]-disp]+1 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-16/27-
17 DEC reg DEC (HL) DEC (IX+disp) DEC (IX-disp) DEC (IY+disp) DEC (IY-disp) zmniejsz zawartość rejestru reg o jeden [reg] <--- [reg]-1 zmniejsz zawartość bajtu pamięci operacyjnej adresowanej zawartością pary rejestrów HL o jeden [[HL]] <--- [[HL]]-1 zmniejsz zawartość bajtu pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp o jeden [[IX]+disp] <--- [[IX]+disp]-1 lub [[IX]-disp] <--- [[IX]-disp]-1 zmniejsz zawartość bajtu pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp o jeden [[IX]+disp] <--- [[IX]+disp]-1 lub [[IX]-disp] <--- [[IX]-disp]-1 V. grupa rozkazów kontrolnych jednostki arytmetyczno-logicznej oraz arytmetycznych ogólnego stosowania DAA CPL NEG CCF SCF NOP HALT DI EI Zapis instrukcji wykonaj korekcje dziesiętna zawartości akumulatora A zaneguj (logicznie odwróć bity) zawartość akumulatora A zaneguj (arytmetycznie) zawartość akumulatora A zaneguj zawartość wskaźnika C ustaw wskaźnik C instrukcja pusta zatrzymaj wykonywanie programu zabroń przyjmowanie niemaskowalnych przerwań zewnętrznych zezwol na przyjmowanie niemaskowalnych przerwań zewnętrznych IM 0 ustaw tryb przerwań zewnętrznych na 0 IM 1 ustaw tryb przerwań zewnętrznych na 1 IM 2 ustaw tryb przerwań zewnętrznych na 2 VI. grupa rozkazów arytmetycznych 16-bitowych Zapis instrukcji ADD HL,BC ADD HL,DE dodaj do zawartości pary rejestrów HL zawartość pary rejestrów BC [HL] <--- [HL]+[BC] dodaj do zawartości pary rejestrów HL zawartość pary rejestrów DE [HL] <--- [HL]+[DE] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-17/27-
18 ADD HL,HL ADD HL,SP ADC HL,BC ADC HL,DE ADC HL,HL ADC HL,SP SBC HL,BC SBC HL,DE SBC HL,HL SBC HL,SP ADD IX,BC ADD IX,DE ADD IX,IX ADD IX,SP ADD IY,BC ADD IY,DE dodaj do zawartości pary rejestrów HL zawartość pary rejestrów HL [HL] <--- [HL]+[HL] dodaj do zawartości pary rejestrów HL zawartość wskaźnika stosu SP [HL] <--- [HL]+[SP] dodaj do zawartości pary rejestrów HL zawartość pary rejestrów BC z uwzględnieniem przeniesienia C [HL] <--- [HL]+[BC]+C dodaj do zawartości pary rejestrów HL zawartość pary rejestrów DE z uwzględnieniem przeniesienia C [HL] <--- [HL]+[DE]+C dodaj do zawartości pary rejestrów HL zawartość pary rejestrów HL z uwzględnieniem przeniesienia C [HL] <--- [HL]+[HL]+C dodaj do zawartości pary rejestrów HL zawartość wskaźnika stosu SP z uwzględnieniem przeniesienia C [HL] <--- [HL]+[SP]+C odejmij od zawartości pary rejestrów HL zawartość pary rejestrów BC z uwzględnieniem zawartości wskaźnika C [HL] <--- [HL]-[BC]-C odejmij od zawartości pary rejestrów HL zawartość pary rejestrów DE z uwzględnieniem zawartości wskaźnika C [HL] <--- [HL]-[DE]-C odejmij od zawartości pary rejestrów HL zawartość pary rejestrów HL z uwzględnieniem zawartości wskaźnika C [HL] <--- [HL]-[HL]-C odejmij od zawartości pary rejestrów HL zawartość wskaźnika stosu SP z uwzględnieniem zawartości wskaźnika C [HL] <--- [HL]-[SP]-C dodaj do zawartości rejestru IX zawartość pary rejestrów BC [IX] <--- [IX]-[BC] dodaj do zawartości rejestru IX zawartość pary rejestrów DE [IX] <--- [IX]-[DE] dodaj do zawartości rejestru IX zawartość rejestru IX [IX] <--- [IX]-[IX] dodaj do zawartości rejestru IX zawartość wskaźnika stosu SP [IX] <--- [IX]-[SP] dodaj do zawartości rejestru IY zawartość pary rejestrów BC [IY] <--- [IY]-[BC] dodaj do zawartości rejestru IY zawartość pary rejestrów DE [IY] <--- [IY]-[DE] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-18/27-
19 ADD IY,IY ADD IY,SP INC BC INC DE INC HL INC SP INC IX INC IY DEC BC DEC DE DEC HL DEC SP DEC IX DEC IY dodaj do zawartości rejestru IY zawartość rejestru IY [IY] <--- [IY]-[IY] dodaj do zawartości rejestru IY zawartość wskaźnika stosu SP [IY] <--- [IY]-[SP] zwiększ zawartość pary rejestrów BC o jeden [BC] <--- [BC]+1 zwiększ zawartość pary rejestrów DE o jeden [DE] <--- [DE]+1 zwiększ zawartość pary rejestrów HL o jeden [HL] <--- [HL]+1 zwiększ zawartość wskaźnika stosu SP o jeden [SP] <--- [SP]+1 zwiększ zawartość rejestru IX o jeden [IX] <--- [IX]+1 zwiększ zawartość rejestru IY o jeden [IY] <--- [IY]+1 zmniejsz zawartość pary rejestrów BC o jeden [BC] <--- [BC]-1 zmniejsz zawartość pary rejestrów DE o jeden [DE] <--- [DE]-1 zmniejsz zawartość pary rejestrów HL o jeden [HL] <--- [HL]-1 zmniejsz zawartość wskaźnika stosu SP o jeden [SP] <--- [SP]-1 zmniejsz zawartość rejestru IX o jeden [IX] <--- [IX]-1 zmniejsz zawartość rejestru IY o jeden [IY] <--- [IY]-1 VII. grupa rozkazów przesunięć RLCA Zapis instrukcji przesuń zawartość akumulatora A w lewo C < < [A] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-19/27-
20 RLA Zapis instrukcji przesuń zawartość akumulatora A w lewo C < < [A] RRCA przesuń zawartość akumulatora A w prawo > > C [A] RRA RLC reg RLC (HL) RLC (IX+disp) RLC (IX-disp) RLC (IY+disp) RLC (IY-disp) przesuń zawartość akumulatora A w prawo > > C [A] przesuń zawartość rejestru reg w lewo C < < [reg] przesuń zawartość komórki pamięci o adresie określonym zawartością pary rejestrów HL w lewo C < [[HL]] < przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IX+disp lub IX-disp w lewo C < < [[IX]+disp] lub [[IX]-disp] przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp w lewo C < < [[IY]+disp] lub [[IY]-disp] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-20/27-
21 RL reg RL (HL) RL (IX+disp) RL (IX-disp) RL (IY+disp) RL (IY-disp) RRC reg przesuń zawartość rejestru reg w lewo C < < [reg] przesuń zawartość komórki pamięci o adresie określonym zawartością pary rejestrów HL w lewo C < [[HL]] < przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IX+disp lub IX-disp w lewo C < < [[IX]+disp] lub [[IX]-disp] przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp w lewo C < < [[IY]+disp] lub [[IY]-disp] przesuń zawartość rejestru reg w prawo > > C [reg] RRC (HL) przesuń zawartość komórki pamięci o adresie określonym zawartością pary rejestrów HL w prawo > > C [[HL]] RRC (IX+disp) RRC (IX-disp) przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IX+disp ub IX-disp w prawo > > C [[IX]+disp] lub [[IX]-disp] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-21/27-
22 RRC (IY+disp) RRC (IY-disp) RR reg RR (HL) RR (IX+disp) RR (IX-disp) RR (IY+disp) RR (IY-disp) SLA reg SLA (HL) przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp w prawo > > C [[IY]+disp] lub [[IY]-disp] przesuń zawartość rejestru reg w prawo > > C [reg] przesuń zawartość komórki pamięci o adresie określonym zawartością pary rejestrów HL w prawo > > C [[HL]] przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IX+disp lub IX-disp w prawo > > C [[IX]+disp] lub [[IX]-disp] przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp w prawo > > C [[IY]+disp] lub [[IY]-disp] przesuń zawartość rejestru reg w lewo C < < 0 [reg] przesuń zawartość komórki pamięci o adresie określonym zawartością pary rejestrów HL w lewo C < < 0 [[HL]] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-22/27-
23 SLA (IX+disp) SLA (IX-disp) SLA (IY+disp) SLA (IY-disp) SRA reg SRA (HL) SRA (IX+disp) SRA (IX-disp) SRA (IY+disp) SRA (IY-disp) SRL reg SRL (HL) przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IX+disp lub IX-disp w lewo C < < 0 [[IX]+disp] lub [[IX]-disp] przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp w lewo C < < 0 [[IY]+disp] lub [[IY]-disp] przesuń arytmetycznie zawartość rejestru reg w prawo > C [reg] przesuń arytmetycznie zawartość komórki pamięci o adresie określonym zawartością pary rejestrów HL w prawo > C [[HL]] przesuń arytmetycznie zawartość komórki pamięci o adresie określonym wartością wyrażenia IX+disp lub IX-disp w prawo > C [[IX]+disp] lub [[IX]-disp] przesuń arytmetycznie zawartość komórki pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp w prawo > C [[IY]+disp] lub [[IY]-disp] przesuń zawartość rejestru reg w prawo 0 > > C [reg] przesuń zawartość komórki pamięci o adresie określonym zawartością pary rejestrów HL w prawo 0 > > C [[HL]] Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-23/27-
24 SRL (IX+disp) SRL (IX-disp) SRL (IY+disp) SRL (IY-disp) RLD RRD przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IX+disp lub IX-disp w prawo 0 > > C [[IX]+disp] lub [[IX]-disp] przesuń zawartość komórki pamięci o adresie określonym wartością wyrażenia IY+disp lub IY-disp w prawo 0 > > C [[IY]+disp] [[IY]-disp] przesuń cyfrę BCD w lewo przesuń cyfrę BCD w prawo VIII. grupa rozkazów ustawiających, zerujących i testujących bity Zapis instrukcji BIT b,reg BIT b,(hl) BIT b,(ix+disp) BIT b,(ix-disp) BIT b,(iy+disp) BIT b,(iy-disp) SET b,reg SET b,(hl) SET b,(ix+disp) SET b,(ix-disp) SET b,(iy+disp) SET b,(iy-disp) RES b,reg RES b,(hl) RES b,(ix+disp) RES b,(ix-disp) RES b,(iy+disp) RES b,(iy-disp) testuj stan bitu b w rejestrze reg testuj stan bitu b bajtu w pamięci operacyjnej adresowanej zawartością pary rejestrów HL testuj stan bitu b bajtu w pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp testuj stan bitu b bajtu w pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp ustaw bit b w rejestrze reg ustaw bit b w bajcie pamięci operacyjnej adresowanej zawartością pary rejestrów HL ustaw bit b w bajcie pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp ustaw bit b w bajcie pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp zeruj bit b w rejestrze reg zeruj bit b w bajcie pamięci operacyjnej adresowanej zawartością pary rejestrów HL zeruj bit b w bajcie pamięci operacyjnej adresowanej wartością wyrażenia IX+disp lub IX-disp zeruj bit b w bajcie pamięci operacyjnej adresowanej wartością wyrażenia IY+disp lub IY-disp IX. grupa rozkazów skoków Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-24/27-
25 JP adr16 JP NZ,adr16 JP Z,adr16 JP NC,adr16 JP C,adr16 JP PO,adr16 JP PE,adr16 JP P,adr16 JP M,adr16 JR ee JR C,ee JR NC,ee JR Z,ee JR NZ,ee DJNZ ee JP (HL) JP (IX) JP (IY) wykonaj bezwarunkowy skok bezwzględny do adresu adr16 wykonaj warunkowy skok do adresu adr16 wykonaj warunkowy skok do adresu adr16 wykonaj warunkowy skok do adresu adr16 wykonaj warunkowy skok do adresu adr16 wykonaj warunkowy skok do adresu adr16 wykonaj warunkowy skok do adresu adr16 wykonaj warunkowy skok do adresu adr16 Wykonaj warunkowy skok do adresu adr16 wykonaj bezwarunkowy skok względny o ee wykonaj warunkowy skok względny o ee wykonaj warunkowy skok względny o ee wykonaj warunkowy skok względny o ee wykonaj warunkowy skok względny o ee zmniejsz zawartość rejestru B o jeden i wykonaj warunkowy skok względny o ee wykonaj skok bezwarunkowy do adresu określonego zawartością pary rejestrów HL wykonaj skok bezwarunkowy do adresu określonego zawartością rejestru IX wykonaj skok bezwarunkowy do adresu określonego zawartością rejestru IY X. grupa rozkazów wywołania i powrotu z podprogramu Zapis instrukcji CALL adr16 CALL NZ,adr16 CALL Z,adr16 CALL NC,adr16 CALL C,adr16 CALL PO,adr16 CALL PE,adr16 CALL P,adr16 wywołaj bezwarunkowo podprogram o adresie adr16 wywołaj warunkowo podprogram o adresie adr16 wywołaj warunkowo podprogram o adresie adr16 wywołaj warunkowo podprogram o adresie adr16 wywołaj warunkowo podprogram o adresie adr16 wywołaj warunkowo podprogram o adresie adr16 wywołaj warunkowo podprogram o adresie adr16 wywołaj warunkowo podprogram o adresie adr16 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-25/27-
26 CALL M,adr16 RET RET NZ RET Z RET NC RET C RET PO RET PE RET P RET M RETI RETN RST Q wywołaj warunkowo podprogram o adresie adr16 wróć bezwarunkowo z podprogramu wróć warunkowo z podprogramu wróć warunkowo z podprogramu wróć warunkowo z podprogramu wróć warunkowo z podprogramu wróć warunkowo z podprogramu wróć warunkowo z podprogramu wróć warunkowo z podprogramu wróć warunkowo z podprogramu wróć z procedury obsługi przerwania maskowalnego wróć z procedury obsługi przerwania niemaskowalnego wykonaj restart z punktem wejścia Q XI. grupa rozkazów wejścia-wyjścia Zapis instrukcji IN A,(port) IN reg,(c) INI INIR IND wczytaj bajt z portu o adresie port do akumulatora [A] <--- [port] wczytaj bajt z portu o adresie zawartym w rejestrze C do rejestru reg [reg] <--- [[C]] wczytaj bajt z portu o adresie zawartym w rejestrze C do bufora określonego zawartością pary rejestrów HL [[HL]] <--- [[C]] [B] <--- [B]-1 [HL] <--- [HL]+1 wczytaj blok danych z portu o adresie zawartym w rejestrze C do bufora określonego zawartością pary rejestrów HL powtarzaj aż do [B] = 0 [[HL]] <--- [[C]] [B] <--- [B]-1 [HL] <--- [HL]+1 wczytaj bajt z portu o adresie zawartym w rejestrze C do bufora określonego zawartością pary rejestrów HL [[HL]] <--- [[C]] [B] <--- [B]-1 [HL] <--- [HL]-1 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-26/27-
27 INDR OUT (port),a OUT (C),reg OUTI OTIR OUTD OTDR wczytaj blok danych z portu o adresie zawartym w rejestrze C do bufora określonego zawartością pary rejestrów HL powtarzaj aż do [B] = 0 [[HL]] <--- [[C]] [B] <--- [B]-1 [HL] <--- [HL]-1 wyślij zawartość akumulatora A do portu o adresie port [port] <--- [A] wyślij zawartość rejestru reg do portu o adresie zawartym w rejestrze C wyślij bajt z pamięci o adresie zawartym parze rejestrów HL do portu o adresie zawartym w rejestrze C [[C]] <--- [[HL]] [B] <--- [B]-1 [HL] <--- [HL]+1 wyślij blok z pamięci o adresie zawartym parze rejestrów HL do portu o adresie zawartym w rejestrze C powtarzaj aż do [B] = 0 [[C]] <--- [[HL]] [B] <--- [B]-1 [HL] <--- [HL]+1 wyślij bajt z pamięci o adresie zawartym parze rejestrów HL do portu o adresie zawartym w rejestrze C [[C]] <--- [[HL]] [B] <--- [B]-1 [HL] <--- [HL]-1 wyślij blok z pamięci o adresie zawartym parze rejestrów HL do portu o adresie zawartym w rejestrze C powtarzaj aż do [B] = 0 [[C]] <--- [[HL]] [B] <--- [B]-1 [HL] <--- [HL]-1 Po bliższe i bardziej szczegółowe informacje dotyczące listy instrukcji należy sięgnąć do Z80 Family: CPU User Manual. Znana mi literatura w języku polskim dotycząca procesora to: 1. Praca zbiorowa, Modułowe systemy mikroprocesorowe, Wydawnictwa Naukowo-Techniczne, Warszawa Jerzy Karczmarczuk, Mikroprocesor Z80, Wydawnictwa Naukowo- Techniczne, Warszawa 1987 Elportal Elektroniki dla wszystkich - Gaweł: Architektura mikroprocesorów Z80-27/27-
Technika mikroprocesorowa I Wykład 2
Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,
Bardziej szczegółowoTechnika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2
Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,
Bardziej szczegółowoArchitektura komputerów. Asembler procesorów rodziny x86
Architektura komputerów Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Rozkazy mikroprocesora Rozkazy mikroprocesora 8086 można podzielić na siedem funkcjonalnych
Bardziej szczegółowoMOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje
Bardziej szczegółowoUkład wykonawczy, instrukcje i adresowanie. Dariusz Chaberski
Układ wykonawczy, instrukcje i adresowanie Dariusz Chaberski System mikroprocesorowy mikroprocesor C A D A D pamięć programu C BIOS dekoder adresów A C 1 C 2 C 3 A D pamięć danych C pamięć operacyjna karta
Bardziej szczegółowoStruktura i działanie jednostki centralnej
Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
Bardziej szczegółowoOrganizacja typowego mikroprocesora
Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają
Bardziej szczegółowoProgramowanie mikrokontrolerów (CISC)
Repertuar instrukcji Operacje arytmetyczne Operacje logiczne Operacje logiczne na bitach Przesyłanie danych Operacje sterujące (skoki) NOTACJA: Rr rejestry R0... R7 direct - wewnętrzny RAM oraz SFR @Ri
Bardziej szczegółowoLista rozkazów mikrokontrolera 8051
Lista rozkazów mikrokontrolera 8051 Spis treści: Architektura mikrokontrolera Rozkazy Architektura mikrokontrolera Mikrokontroler 8051 posiada trzy typy pamięci: układ zawiera pamięć wewnętrzną (On-Chip
Bardziej szczegółowoArchitektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów
Marcin Stępniak Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów 1. Informacje Poniższe laboratoria zawierają podsumowanie najważniejszych informacji na temat
Bardziej szczegółowoProcesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]
Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową
Bardziej szczegółowoTechnika mikroprocesorowa I Wykład 1
Technika mikroprocesorowa I Wykład 1 Układy mikroprocesorowe. Przykłady rozwiązań Autor: Bartłomiej Zieliński Układy mikroprocesorowe Ryszard Krzyżanowski Mikroprocesor Z80 Jerzy Karczmarczuk "Układy mikroprocesorowe
Bardziej szczegółowoSpis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne
Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...
Bardziej szczegółowoUkład sterowania, magistrale i organizacja pamięci. Dariusz Chaberski
Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy
Bardziej szczegółowoARCHITEKTURA PROCESORA,
ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy
Bardziej szczegółowoPodstawy techniki mikroprocesorowej. Dr inż. Grzegorz Kosobudzki p.311a A-5. Tel
Podstawy techniki mikroprocesorowej Dr inż. Grzegorz Kosobudzki p.311a A-5. Tel. 071 3203746 grzegorz.kosobudzki@pwr.wroc.pl 2 Terminy zajęć Wykłady: niedziela 7.30 12.00 s.312 Kolokwium przedostatnie
Bardziej szczegółowoLogiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Bardziej szczegółowoUTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.
Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz
Bardziej szczegółowoLEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Bardziej szczegółowoarchitektura komputerów w 1 1
8051 Port P2 Port P3 Transm. szeregowa Timery T0, T1 Układ przerwań Rejestr DPTR Licznik rozkazów Pamięć programu Port P0 Port P1 PSW ALU Rejestr B SFR akumulator 8051 STRUKTURA architektura komputerów
Bardziej szczegółowoMikroprocesor Operacje wejścia / wyjścia
Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych
Bardziej szczegółowo4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24
Wymagania proceduralnych języków wysokiego poziomu ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH modele programowe procesorów ASK MP.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad.
Bardziej szczegółowoLista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne
Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego
Bardziej szczegółowoSpis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11
Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.
Bardziej szczegółowoMIKROKONTROLERY I MIKROPROCESORY
PLAN... work in progress 1. Mikrokontrolery i mikroprocesory - architektura systemów mikroprocesorów ( 8051, AVR, ARM) - pamięci - rejestry - tryby adresowania - repertuar instrukcji - urządzenia we/wy
Bardziej szczegółowoProgramowanie mikrokontrolera 8051
Programowanie mikrokontrolera 8051 Podane poniżej informacje mogą pomóc w nauce programowania mikrokontrolerów z rodziny 8051. Opisane są tu pewne specyficzne cechy tych procesorów a także podane przykłady
Bardziej szczegółowoArchitektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna
Architektura komputerów. Literatura: 1. Piotr Metzger, Anatomia PC, wyd. IX, Helion 2004 2. Scott Mueller, Rozbudowa i naprawa PC, wyd. XVIII, Helion 2009 3. Tomasz Kowalski, Urządzenia techniki komputerowej,
Bardziej szczegółowoSprzęt i architektura komputerów
Radosław Maciaszczyk Mirosław Łazoryszczak Sprzęt i architektura komputerów Laboratorium Temat: Mikroprocesory i elementy asemblera Katedra Architektury Komputerów i Telekomunikacji 1. MIKROPROCESORY I
Bardziej szczegółowoArchitektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania
Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia
Bardziej szczegółowoLista instrukcji procesora 8051 część 2 Skoki i wywołania podprogramów, operacje na stosie, operacje bitowe
Lista instrukcji procesora 8051 część 2 Skoki i wywołania podprogramów, operacje na stosie, operacje bitowe Ryszard J. Barczyński, 2009 2013 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego
Bardziej szczegółowoProgramowalne układy logiczne
Programowalne układy logiczne Mikroprocesor Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 6 grudnia 2014 Zbudujmy własny mikroprocesor Bardzo prosty: 16-bitowy, 16 rejestrów
Bardziej szczegółowoPrzykładowe pytania DSP 1
Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..
Bardziej szczegółowoArchitektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt
Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu
Bardziej szczegółowoLista instrukcji mikroprocesora 8086. Programowanie w assemblerze
Lista instrukcji mikroprocesora 8086 Programowanie w assemblerze Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora
Bardziej szczegółowoPrzerwania, polling, timery - wykład 9
SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz
Bardziej szczegółowoTechnika mikroprocesorowa I Wykład 1
Technika mikroprocesorowa I Wykład 1 Układy mikroprocesorowe. Przykłady rozwiązań Autor: Bartłomiej Zieliński Układy mikroprocesorowe Ryszard Krzyżanowski Mikroprocesor Z80 Jerzy Karczmarczuk "Układy mikroprocesorowe
Bardziej szczegółowoBudowa i zasada działania komputera. dr Artur Bartoszewski
Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu
Bardziej szczegółowodr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL
Architektura komputerów wprowadzenie materiał do wykładu 3/3 dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii informatycznych
Bardziej szczegółowoDodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych
Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów
Bardziej szczegółowoMetody obsługi zdarzeń
SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału
Bardziej szczegółowoAsembler - język maszynowy procesora
UWAGA! Treść niniejszego dokumentu powstała na podstawie cyklu artykułów pt. Mikrokontrolery? To takie proste zamieszczonych w czasopiśmie Elektronika dla Wszystkich. Asembler - język maszynowy procesora
Bardziej szczegółowoMikrokontroler ATmega32. Język symboliczny
Mikrokontroler ATmega32 Język symboliczny 1 Język symboliczny (asembler) jest językiem niskiego poziomu - pozwala pisać programy złożone z instrukcji procesora. Kody instrukcji są reprezentowane nazwami
Bardziej szczegółowoSprzęt i architektura komputerów
Radosław Maciaszczyk Mirosław Łazoryszczak Sprzęt i architektura komputerów Laboratorium Temat: Mikroprocesory i elementy asemblera Katedra Architektury Komputerów i Telekomunikacji 1. MIKROPROCESORY I
Bardziej szczegółowoTechniki mikroprocesorowe i systemy wbudowane
Techniki mikroprocesorowe i systemy wbudowane Wykład 1 Procesory rodziny AVR ATmega. Wstęp Wojciech Kordecki wojciech.kordecki@pwsz-legnica.eu Państwowa Wyższa Szkoła Zawodowa im. Witelona w Legnicy Wydział
Bardziej szczegółowoArchitektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Bardziej szczegółowoArchitektura systemów komputerowych
Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych Architektura systemów komputerowych dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat
Bardziej szczegółowoArchitektura typu Single-Cycle
Architektura typu Single-Cycle...czyli budujemy pierwszą maszynę parową Przepływ danych W układach sekwencyjnych przepływ danych synchronizowany jest sygnałem zegara Elementy procesora - założenia Pamięć
Bardziej szczegółowoCPU ROM, RAM. Rejestry procesora. We/Wy. Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki
Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki Komputer jest urządzeniem, którego działanie opiera się na wykonywaniu przez procesor instrukcji pobieranych z pamięci operacyjnej
Bardziej szczegółowoWstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Bardziej szczegółowoWstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)
Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?
Bardziej szczegółowoMikrokontrolery czyli o czym to będzie...
Mikrokontrolery czyli o czym to będzie... Ryszard J. Barczyński, 2017 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego PNPiM Poznamy: Cechy
Bardziej szczegółowoBudowa systemów komputerowych
Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa
Bardziej szczegółowoPodstawy Techniki Mikroprocesorowej - Laboratorium Ćwiczenie A
Podstawy Techniki Mikroprocesorowej - Laboratorium Ćwiczenie A Temat: Mikroprocesor Z80 Cel i przebieg ćwiczenia: Ćwiczenie wprowadzające do cyklu zajęć z Dydaktycznym Systemem Mikroprocesorowym (DSM).
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
Bardziej szczegółowoPodstawy Techniki Mikroprocesorowej
Podstawy Techniki Mikroprocesorowej Architektury mikroprocesorów Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.
Bardziej szczegółowoProgramowanie niskopoziomowe
Programowanie niskopoziomowe ASSEMBLER Teodora Dimitrova-Grekow http://aragorn.pb.bialystok.pl/~teodora/ Program ogólny Rok akademicki 2011/12 Systemy liczbowe, budowa komputera, procesory X86, organizacja
Bardziej szczegółowoLiczniki, rejestry lab. 08 Mikrokontrolery WSTĘP
Liczniki, rejestry lab. 08 PODSTAWY TECHNIKI CYFROWEJ I MIKROPROCESOROWEJ EIP KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII WWW.KEIASPE.AGH.EDU.PL AKADEMIA GÓRNICZO-HUTNICZA WWW.AGH.EDU.PL
Bardziej szczegółowoProgramowanie w językach asemblera i C
Programowanie w językach asemblera i C Mariusz NOWAK Programowanie w językach asemblera i C (1) 1 Dodawanie dwóch liczb - program Napisać program, który zsumuje dwie liczby. Wynik dodawania należy wysłać
Bardziej szczegółowoZagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe
Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe System mikroprocesorowy 1. Przedstaw schemat blokowy systemu mikroprocesorowego.
Bardziej szczegółowo, " _/'--- " ~ n\l f.4e ' v. ,,v P-J.. ~ v v lu J. ... j -:;.",II. ,""", ",,> I->~" re. dr. f It41I r> ~ '<Q., M-c 'le...,,e. b,n '" u /.
I, ", - hk P-J.. ~,""", ",,> I->~" re. dr... j -:;.",II _/'--- " ~ n\l f.4e ' v f It41I r> ~ '
Bardziej szczegółowoWstęp...9. 1. Architektura... 13
Spis treści 3 Wstęp...9 1. Architektura... 13 1.1. Schemat blokowy...14 1.2. Pamięć programu...15 1.3. Cykl maszynowy...16 1.4. Licznik rozkazów...17 1.5. Stos...18 1.6. Modyfikowanie i odtwarzanie zawartości
Bardziej szczegółowopetla:... ; etykieta określa adres w pamięci kodu (docelowe miejsce skoku) DJNZ R7, petla
Asembler A51 1. Symbole Nazwy symboliczne Symbol jest nazwą, która może być użyta do reprezentowania wartości stałej numerycznej, wyrażenia, ciągu znaków (tekstu), adresu lub nazwy rejestru. Nazwy symboliczne
Bardziej szczegółowoTMiK Podstawy Techniki Mikroprocesorowej. Lidia Łukasiak
TMiK Podstawy Techniki Mikroprocesorowej Materiały pomocnicze do wykładu Lidia Łukasiak 1 Treść przedmiotu Wprowadzenie System mikroprocesorowy Mikroprocesor - jednostka centralna Rodzaje pamięci Mikrokontrolery
Bardziej szczegółowoSchemat blokowy procesora rdzeniowego ATmega16. Głównym zadaniem JC jest zapewnienie poprawnego i szybkiego wykonywania programu.
Jednostka centralna procesor (CPU, rdzeń) Schemat blokowy procesora rdzeniowego ATmega16 Głównym zadaniem JC jest zapewnienie poprawnego i szybkiego wykonywania programu. Zadania JC: dostęp do pamięci,
Bardziej szczegółowoSystemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego
Bardziej szczegółowoJednostka centralna. dr hab. inż. Krzysztof Patan, prof. PWSZ
Jednostka centralna dr hab. inż. Krzysztof Patan, prof. PWSZ Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa w Głogowie k.patan@issi.uz.zgora.pl Architektura i organizacja komputerów Architektura
Bardziej szczegółowoRejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika
Rejestry procesora Procesor podczas wykonywania instrukcji posługuje się w dużej części pamięcią RAM. Pobiera z niej kolejne instrukcje do wykonania i dane, jeżeli instrukcja operuje na jakiś zmiennych.
Bardziej szczegółowoZarządzanie pamięcią w systemie operacyjnym
Zarządzanie pamięcią w systemie operacyjnym Cele: przydział zasobów pamięciowych wykonywanym programom, zapewnienie bezpieczeństwa wykonywanych procesów (ochrona pamięci), efektywne wykorzystanie dostępnej
Bardziej szczegółowoPodstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin
Podstawy techniki cyfrowej Mikroprocesory Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Mikroprocesor to układ cyfrowy wykonany jako pojedynczy układ scalony o wielkim stopniu integracji zdolny do wykonywania
Bardziej szczegółowoLEKCJA TEMAT: Współczesne procesory.
LEKCJA TEMAT: Współczesne procesory. 1. Wymagania dla ucznia: zna pojęcia: procesor, CPU, ALU, potrafi podać typowe rozkazy; potrafi omówić uproszczony i rozszerzony schemat mikroprocesora; potraf omówić
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 12 Jan Kazimirski 1 Magistrale systemowe 2 Magistrale Magistrala medium łączące dwa lub więcej urządzeń Sygnał przesyłany magistralą może być odbierany przez wiele urządzeń
Bardziej szczegółowoJerzy Nawrocki, Wprowadzenie do informatyki
Magistrala systemowa Jerzy Nawrocki, Jerzy Nawrocki Wydział Informatyki Politechnika Poznańska jerzy.nawrocki@put.poznan.pl Cel wykładu Asembler i koncepcja von Neumanna Wprowadzenie do programowania na
Bardziej szczegółowoorganizacja procesora 8086
Systemy komputerowe Procesor 8086 - tendencji w organizacji procesora organizacja procesora 8086 " # $ " % strali " & ' ' ' ( )" % *"towego + ", -" danych. Magistrala adresowa jest 20.bitowa, co pozwala
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,
Bardziej szczegółowoPodstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia
Podstawy techniki cyfrowej i mikroprocesorowej II Urządzenia wejścia-wyjścia Tomasz Piasecki magistrala procesor pamięć wejście wyjście W systemie mikroprocesorowym CPU może współpracować za pośrednictwem
Bardziej szczegółowoMagistrala systemowa (System Bus)
Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki systemowa (System Bus) Pamięć operacyjna ROM, RAM Jednostka centralna Układy we/wy In/Out Wstęp do Informatyki
Bardziej szczegółowoWprowadzenie do Architektury komputerów. Asembler procesorów rodziny x86
Wprowadzenie do Architektury komputerów Asembler procesorów rodziny x86 Budowa procesora rodziny x86 Rejestry procesora 8086 ogólnego przeznaczenia Dla procesorów 32-bitowych: EAX, EBX, ECX, EDX Dla procesorów
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 8 Jan Kazimirski 1 Assembler x86 2 Podstawowe instrukcje x86 Instrukcje transferu danych Arytmetyka binarna i dziesiętna Instrukcje logiczne Instrukcje sterujące wykonaniem
Bardziej szczegółowoProgramowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 8: Procedury Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Linkowanie z bibliotekami zewnętrznymi Operacje na stosie
Bardziej szczegółowoAdresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów
Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście
Bardziej szczegółowoMikroprocesory rodziny INTEL 80x86
Mikroprocesory rodziny INTEL 80x86 Podstawowe wła ciwo ci procesora PENTIUM Rodzina procesorów INTEL 80x86 obejmuje mikroprocesory Intel 8086, 8088, 80286, 80386, 80486 oraz mikroprocesory PENTIUM. Wprowadzając
Bardziej szczegółowo1. Operacje logiczne A B A OR B
1. Operacje logiczne OR Operacje logiczne są operacjami działającymi na poszczególnych bitach, dzięki czemu można je całkowicie opisać przedstawiając jak oddziałują ze sobą dwa bity. Takie operacje logiczne
Bardziej szczegółowoLiczniki, rejestry lab. 09 Mikrokontrolery 8051 cz. 1
Liczniki, rejestry lab. 09 Mikrokontrolery 8051 cz. 1 PODSTAWY TECHNIKI CYFROWEJ I MIKROPROCESOROWEJ EIP KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII WWW.KEIASPE.AGH.EDU.PL AKADEMIA
Bardziej szczegółowoHardware mikrokontrolera X51
Hardware mikrokontrolera X51 Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Hardware mikrokontrolera X51 (zegar)
Bardziej szczegółowoTechnika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury
Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury Cel ćwiczenia: Głównym celem ćwiczenia jest nauczenie się obsługi klawiatury. Klawiatura jest jednym z urządzeń wejściowych i prawie zawsze występuje
Bardziej szczegółowoAkademia Górniczo- Hutmicza w Krakowie Katedra Elektroniki WIET
Akademia Górniczo- Hutmicza w Krakowie Katedra Elektroniki WIET Technika mikroprocesorowa Instrukcja 3 Stos i podprogramy Autor: Paweł Russek Tłumaczenie: Marcin Pietroń http://www.fpga.agh.edu.pl/tm ver.
Bardziej szczegółowoArchitektura komputerów wer. 7
Architektura komputerów wer. 7 Wojciech Myszka 2013-10-29 19:47:07 +0100 Karty perforowane Kalkulator IBM 601, 1931 IBM 601 kalkulator Maszyna czytała dwie liczby z karty, mnożyła je przez siebie i wynik
Bardziej szczegółowoTechnika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach
mikrokontrolery mikroprocesory Technika mikroprocesorowa Linia rozwojowa procesorów firmy Intel w latach 1970-2000 W krótkim pionierskim okresie firma Intel produkowała tylko mikroprocesory. W okresie
Bardziej szczegółowoPracownia elektryczno-elektroniczna klasa IV
Ćwiczenie nr 2 Cel ćwiczenia: zapoznanie się z nowymi metodami adresowania portów, urządzeń do nich podpiętych (adresowanie pośrednie, bezpośrednie, rejestrowe) oraz poznanie struktury wewnętrznej pamięci
Bardziej szczegółowoArchitektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC
Architektura Systemów Komputerowych Rozwój architektury komputerów klasy PC 1 1978: Intel 8086 29tys. tranzystorów, 16-bitowy, współpracował z koprocesorem 8087, posiadał 16-bitową szynę danych (lub ośmiobitową
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki
Bardziej szczegółowoProgramowanie mikrokontrolerów. 8 listopada 2007
Programowanie mikrokontrolerów Marcin Engel Marcin Peczarski 8 listopada 2007 Alfanumeryczny wyświetlacz LCD umożliwia wyświetlanie znaków ze zbioru będącego rozszerzeniem ASCII posiada zintegrowany sterownik
Bardziej szczegółowoTechnika Mikroprocesorowa II Wykład 1
Technika Mikroprocesorowa II Wykład Literatura: Mikroprocesor Motorola (Freescale) M68008 Mikroprocesor 68008 jest 8-mio bitowym (zewnętrzna magistrala danych) przedstawicielem mikroprocesorów o architekturze
Bardziej szczegółowoMikrokontrolery AVR ATmega
Mikrokontrolery AVR ATmega Literatura: 8-bit Microcontroller AVR with 32KBytes In-System Programmable Flash ATmega32 [www.atmel.com] 8-bit AVR Instruction Set [www.atmel.com] Baranowski Rafał, Mikrokontrolery
Bardziej szczegółowoPrzerwania w architekturze mikrokontrolera X51
Przerwania w architekturze mikrokontrolera X51 (przykład przerwanie zegarowe) Ryszard J. Barczyński, 2009 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku
Bardziej szczegółowoZadanie Zaobserwuj zachowanie procesora i stosu podczas wykonywania następujących programów
Operacje na stosie Stos jest obszarem pamięci o dostępie LIFO (Last Input First Output). Adresowany jest niejawnie przez rejestr segmentowy SS oraz wskaźnik wierzchołka stosu SP. Używany jest do przechowywania
Bardziej szczegółowo