Podstawy informatyki 2013/2014

Slides:



Advertisements
Podobne prezentacje
Watchdog Paweł Trojanowski
Advertisements

Tryby adresowania Prawie każda operacja wykonywana przez mikroprocesor wykonywana jest na pewnych argumentach (lub argumencie). Sposoby wskazywania argumentów.
Zerowanie mikroprocesorów Cel: wprowadzenie mikroprocesora w określony stan początkowy Zwykle realizowany poprzez: inicjalizację licznika rozkazów (PC)
Architektura jednostki centralnej RD MBR MAR IRPC +1 WR jednostka sterująca ALU A F Adres Dane Rejestry: MAR – (Memory Address Register) rejestr adresowy.
Programowanie w PMC.
UKŁADY ARYTMETYCZNE.
Wykonał : Marcin Sparniuk
Technika mikroprocesorowa
Lista rozkazów Działanie mikroprocesora jest kontrolowane poprzez rozkazy (instrukcje). Dla każdego typu mikroprocesora istnieje specyficzny zbiór rozkazów,
Architektura szynowa systemu mikroprocesorowego szyna danych szyna sterująca szyna adresowa µP szyna danych szyna adresowa D7,..., D1, D0 A15,..., A1,
Wykład 5 Przerwania w systemie SAB80C537 dr inż. Andrzej Przybył
Podstawowe składniki funkcjonalne procesora i ich rola.
Alokacja pamięci struct Test {char c; int n; double x; } st1; st1 cnxcnx
ARCHITEKTURA KOMPUTERÓW definicja komputera PROCESOR PAMIĘĆ OPERACYJNA URZĄDZENIA ZEWNĘTRZNE.
Od algebry Boole’a do komputera
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Magistrala & mostki PN/PD
Komputer, procesor, rozkaz.
Temat nr 10: System przerwań
ARCHITEKTURA WEWNĘTRZNA KOMPUTERA
Mikroprocesory i mikrokontrolery
Układy wejścia-wyjścia
Podstawy informatyki 2013/2014
Programowalny układ we-wy szeregowego 8251
Architektura komputerów
Urządzenia zewnętrzne
przykładowy 8-bitowy mikroprocesor uniwersalny CISC
MCS51 - wykład 2.
Mikroprocesor Z80 lista rozkazów
Mikroprocesor Z80 przerwania.
Programowalny układ we/wy równoległego.. Wyprowadzenia układu.
MCS51 - wykład 6.
Architektura systemów komputerowych jesień 2013
Architektura komputerów
Opracowanie: Maria W ą sik. Pierwsze komputery budowano w celu rozwi ą zywania konkretnych problemów. Gdy pojawiało si ę nowe zadanie, nale ż ało przebudowa.
Mikrokontrolery PIC.
Podstawy informatyki 2013/2014 Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi.
Podstawy informatyki 2012/2013
Cyfrowe układy logiczne
Zasada działania komputera
Architektura systemów komputerowych (jesień 2013)
Mikroprocesory.
Mikroprocesory mgr inż. Sylwia Glińska.
Przerwanie ang. interrupt.
Podstawy informatyki 2013/2014
PODSTAWOWE BRAMKI LOGICZNE
Wykład nr 4: Mikrokontrolery - wprowadzenie Piotr Bilski
Złożone układy kombinacyjne
WYKŁAD 3 Temat: Arytmetyka binarna 1. Arytmetyka binarna 1.1. Nadmiar
Procesor, pamięć, przerwania, WE/WY, …
Struktura wewnętrzna mikrokontrolera zamkniętego
Architektury procesorów rdzeniowych mikrokontrolerów.
Pamięć SRAM.
Architektura systemów komputerowych (jesień 2015) Wykład 5 Budowa i działanie komputera dr inż. Wojciech Bieniecki Instytut Nauk Ekonomicznych i Informatyki.
Pakiety numeryczne Graphical User Interface Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
Pakiety numeryczne Tablice: tworzenie, indeksowanie, wymiary Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
Tryby adresowania i formaty rozkazów mikroprocesora
Pakiety numeryczne Wielomiany Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
Podstawy informatyki Preprocesor Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi.
Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi i Pawła Jerzego Matuszyka Podstawy.
Pakiety numeryczne Skrypty, funkcje Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
Podstawy informatyki Szablony funkcji Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty.
Podstawy informatyki Operatory rzutowania Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały.
Podstawy informatyki Mechanizm obsługi sytuacji wyjątkowych Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu.
Pakiety numeryczne Operatory, instrukcje sterujące, operacje bitowe Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
POLITECHNIKA POZNAŃSKA
POLITECHNIKA POZNAŃSKA
Obliczenia inżynierskie w Matlabie
Mikrokontrolery System przerwań
Język C++ Typy Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi i Pawła Jerzego.
Zapis prezentacji:

Podstawy informatyki 2013/2014 Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi i Pawła Jerzego Matuszyka

Zilog 80 (Z80) – dane techniczne Na rynku od lipca 1976 8-bitowa magistrala danych 16-bitowa magistrala adresowa Częstotliwość zegara 2.5MHz Zasilanie i poziomy logiczne zgodne ze standardem TTL Prąd zasilania ok. 90mA Rozpraszana moc ok. 1.5W 158 rozkazów Obudowa typu DIL 40 Wbudowany układ odświeżania pamięci

Wyprowadzenia zewnętrzne

Address Bus, Data Bus Magistrala adresowa: Jednokierunkowa, trójstanowa 16-bitowa szyna adresów służąca do adresowania zarówno pamięci, jak i portów wejścia/wyjścia. Magistrala danych: Dwukierunkowa, trójstanowa 8-bitowa szyna danych służąca do przesyłania wszystkich danych z i do procesora.

Magistrala sterująca: Control Bus Magistrala sterująca: M1 Wyjście procesora. Sygnalizuje wykonanie tzw. pierwszego cyklu maszynowego (M1), w którym procesor pobiera rozkaz z pamięci i go dekoduje. MERQ (ang. memory request) Trójstanowe wyjście procesora. Niski poziom oznacza, że procesor żąda kontaktu z pamięcią i że szyna adresów zawiera już stabilny adres. IORQ (ang. input-output request) Trójstanowe wyjście procesora. Niski poziom oznacza, że procesor wykonuje rozkaz we/wy i żąda kontaktu z odpowiednim urządzeniem we/wy oraz że szyna adresów zawiera już stabilny adres. Sygnał jest również generowany jako potwierdzenie przyjścia przerwania.

Magistrala sterująca: Control Bus Magistrala sterująca: RD (ang. read) Trójstanowe wyjście procesora. Niski poziom oznacza, że procesor będzie czytał dane z pamięci lub urządzeń we/wy. WR (ang. write) Trójstanowe wyjście procesora. Niski poziom oznacza, że procesor zapisywał dane do pamięci lub portu wyjściowego oraz że, szyna danych zawiera stabilne dane. RFSH (ang. refresh) Wyjście procesora. Niski poziom oznacza, że dolna połowa szyny adresów zawiera tzw. adres odświeżania i aktywny sygnał MERQ może zostać wykorzystany przez pamięć dynamiczną do wykonania cyklu odświeżania.

Magistrala sterująca: Control Bus Magistrala sterująca: HALT Wyjście procesora. Niski poziom oznacza, że procesor wykonał rozkaz stopu HALT i przeszedł do stanu martwej pętli. WAIT Wejście procesora. Niski poziom informuje procesor, że pamięć bądź inny układ zewnętrzny nie nadąża za procesorem i żąda wstrzymania pracy procesora na okres jednego lub kilku taktów zegara. RESET Wejście procesora. Niski poziom „kasuje” procesor. Wszystkie wyprowadzenie trójstanowe są w stanie wysokiej impedancji. Po jego zaniku procesor rozpoczyna pracę od początku.

Magistrala sterująca: Control Bus Magistrala sterująca: INT (ang. interrupt request) Wejście procesora – przerwanie maskowalne. Niski poziom (o ile nie zostanie zignorowany) powoduje przerwanie pracy procesora i wykonanie podprogramu obsługi przerwania. NMI (ang. non-maskable interrupt) Wejście procesora – przerwanie niemaskowalne. Sygnał NMI ma pierwszeństwo przed INT i bezwarunkowo przerywa pracę procesora. Reakcja procesora jest wyzwalana opadającym zboczem napięcia.

Magistrala sterująca: Control Bus Magistrala sterująca: BUSRQ (ang. bus request) Wejście procesora – powoduje przejście szyny adresów, danych i innych wyprowadzeń trójstanowych a stan wysokiej impedancji i zawiesza pracę procesora. Sygnał BUSRQ ma wyższy priorytet niż NMI. BUSACK (ang. bus acknowledge) Wyjście procesora – potwierdza przyjęcie sygnału BUSRQ. Informuje urządzenia zewnętrzne, że magistrale danych i adresów są do dyspozycji a praca procesora jest zawieszona.

Organizacja wewnętrzna Schemat logiczny procesora można podzielić na trzy grupy: część sterująca, której zadaniem jest kontrola i sterowanie przepływem informacji w procesorze, w szczególności dekodowanie rozkazów. zespół rejestrów stanowiący wewnętrzną pamięć procesora, główny układ wykonawczy – jednostka arytmetyczno-logiczna (ang. arithmetic-logic unit ALU)

Organizacja wewnętrzna źródło: www.wikipedia.pl

Rejestry dostępne programowo Rejestry 8-bitowe: akumulator A (ang. acumulator) rejestr wskaźników stanu F (ang. flag register) podwójne rejestry ogólnego przeznaczenia B, C, D, E, H, L rejestr wektora przerwań I (ang. interrupt vector) licznik odświeżania pamięci R (ang. memory refresh) Rejestry 16-bitowe: rejestr wskaźnika stosu SP (ang. stack pointer) rejestry indeksowe IX, IY (ang. index register) licznik rozkazów PC (ang. program counter) Rejestry 1-bitowe: IFF1, IFF2 (ang. interrupt enable flip-flops)

Rejestr wskaźników stanu F C (ang. carry) – wskaźnik przeniesienia. Jest ustawiany, jeżeli podczas operacji arytmetycznej lub przesunięcia bit równy 1 „wyszedł poza rejestr”. N – wskaźnik odejmowania. Jest ustawiany, jeżeli ostatnio wykonywaną operacją było odejmowanie, zerowany jeśli dodawanie. P/V (ang. parity/overflow) – wskaźnik nadmiaru/parzystości. Jest ustawiany, jeżeli pojawił się nadmiar (operacja arytmetyczna) lub liczba „1”| jest parzysta (operacja logiczna). 7 6 5 4 3 2 1 S Z x H P/V N C

Rejestr wskaźników stanu F H (ang. half-carry) – wskaźnik przeniesienia z bitu nr 3 do bitu nr 4 Z (ang. zero) – wskaźnik zera. Jest ustawiany, jeżeli wynikiem ostatnio wykonywanej operacji jest zero. S (ang. sign) – wskaźnik znaku. Jest to kopia najbardziej znaczącego bitu wyniku operacji, wynosi 1 jeżeli wynikiem operacji jest liczba ujemna. 7 6 5 4 3 2 1 S Z x H P/V N C

Cykl rozkazowy Cykl rozkazowy składa się z: Pobrania z pamięci kodu rozkazu począwszy od adresu zawartego w liczniku rozkazów (PC). Dekodowaniu rozkazu i przygotowaniu do wykonania. Wykonania rozkazu, zmianie wartości pamięci lub/i rejestrów procesora. Modyfikacji (zwiększeniu) licznika rozkazów o liczbę zależną od długości rozkazu.

Cykl rozkazowy Cykl rozkazowy składa się z jednego lub więcej cykli maszynowych (cykli procesora). Każde odwołanie się do pamięci lub urządzeń we/wy to jeden cykl maszynowy. Cykl maszynowy składa się z kilku cykli (taktów) zegarowych.

Cykle rozkazowe Podstawowy cykl pobrania i dekodowania rozkazu, tzw. cykl M1. Cykl zapisu/odczytu pamięci. Cykl zapisu/odczytu urządzeń wejścia/wyjścia. Cykl przyjęcia sygnału BUSRQ. Cykl przyjęcia przerwania maskowalnego. Cykl przyjęcia przerwania niemaskowalnego. Cykl pracy jałowej po wykonaniu rozkazu HALT Cykl zerowania i inicjalizacji pracy procesora po sygnale RESET

Cykl M1

Cykl odczytu i zapisu pamięci

Przerwania Przerwanie nazywamy wymuszone odpowiednim sygnałem sterującym wstrzymanie automatycznego generowania kolejnych adresów rozkazów do wykonania i wywołanie specjalnego podprogramu obsługi. Przed przejściem do procedury obsługi przerwania na stosie zapamiętywana jest wartość rejestru PC.

Przerwania Wartości sygnałów NMI i INT są testowane podczas narastającego zbocza ostatniego taktu ostatniego cyklu maszynowego. Przerwanie INT jest zgłaszane niskim poziomem, przerwanie NMI opadającym zboczem. Po przyjęciu przerwania INT rejestry IFF1 oraz IFF2 są zerowane (zablokowanie przerwań). Po przyjęciu przerwania NMI wartość z IFF1 jest kopiowana do IFF2, a IFF1 jest zerowany.

Reakcja procesora na przerwanie: Przerwania Potwierdzenie przyjęcia przerwania jest sygnalizowane sygnałami M1 oraz IORQ. Reakcja procesora na przerwanie: NMI – przeskok pod adres 66(16) INT: tryb 0 – procesor odczytuje stan szyny danych i traktuje go jako kod rozkazu do wykonania tryb 1 – przeskok pod adres 38(16) tryb 2 – przeskok pod adres odczytany z tablicy wektora przerwań

INT tryb 2 Procesor odczytuje stan szyny danych i traktuje go jako młodszą połowę adresu, pod którym znajduje się adres procedury obsługi przerwania. Starsza połowa adresu jest w rejestrze I. Tablica wektora przerwań I Data IN Podprogram obsługi przerwania

Odłączenie procesora od reszty układu Po otrzymaniu sygnału BUSRQ procesor przeprowadza w stan wysokiej impedancji szynę adresów i danych oraz wszystkie trójstanowe wyprowadzenia (MERQ, IORQ, RD, WR). Potwierdzeniem odłączenia procesora jest aktywny sygnał BUSACK. Taki stan trwa dopóki sygnał BUSRQ jest aktywny.

Tryby adresowania pamięci Adresowanie rejestru wewnętrznego: LD A,C – przesłanie zawartości rejestru C do A Adresowanie argumentu wbudowanego w rozkaz: LD A,1 – przesłanie wartości 1 do rejestru A Adresowanie bezpośredniego argumentu dwubajtowego: LD BC,1000 – przesłanie wartości 1000 do rejestru BC Adresowanie proste (bezpośrednie): LD (1000),A – przesłanie zawartości rejestru A do pamięci pod adres 1000

Tryby adresowania pamięci Adresowanie pośrednie zawartością rejestru: ADD A,(HL) – dodaj do akumulatora zawartość komórki, której adres znajduje się w rejestrze HL Adresowanie indeksowe: ADD A,(IX+10) – dodaj do akumulatora zawartość 10-tej komórki za adresem zawartym w IX Adresowanie względne: JR 10 – skocz pod adres PC+10 Adresowanie stronnicy zerowej: RST 8 – skocz pod adres 8(16)

Tryby adresowania pamięci Adresowanie pojedynczych bitów: RES 0,A – wyzeruj zerowy bit akumulatora Adresowanie niejawne: SUB 10 – odejmij od akumulatora wartość 10

Lista rozkazów Rozkazy Z80 można podzielić na 12 grup: Rozkazy przesłań jednego bajtu. Rozkazy przesłań dwóch bajtów. Rozkazy wymiany. Jednobajtowe rozkazy arytmetyczne i logiczne. Rozkazy obrotów i przesunięć. Dwubajtowe rozkazy arytmetyczne. Rozkazy przesłań i przeszukiwania bloków bajtów. Rozkazy sterujące stanem procesora. Rozkazy adresujące pojedynczy bity. Rozkazy skoków. Rozkazy wywołań podprogramów i rozkazy powrotów. Rozkazy wejścia/wyjścia.

Rozkazy przesłań jednego bajtu LD d,s Nie ma rozkazu LD (HL),(HL) Kod 01110110 to rozkaz HALT d,s argument 000 B 001 C 010 D 011 E 100 H 101 L 110 (HL) 111 A 1 d s

Rozkazy przesłań jednego bajtu LD d,n d argument 000 B 001 C 010 D 011 E 100 H 101 L 110 (HL) 111 A d 1 n

Rozkazy przesłań dwóch bajtów LD dd,nn dd argument 00 BC 01 DE 10 HL 11 SP dd 1 nl nh

Rozkazy wymiany EX DE,HL – wymienia zawartość pomiędzy rejestrami DE oraz HL EX (SP),HL – wymienia zawartość rejestru HL i wierzchołkiem stosu EX AF,AF’ – wymienia zawartość rejestrów A i F z rejestrami primowanymi EXX – wymienia zawartość rejestrów B, C, D, E, H, L z odpowiednimi rejestrami primowanymi

8-bitowe operacje arytmetyczno-logiczne y={s,n} 1 op s 1 op n s argument 000 B 001 C 010 D 011 E 100 H 101 L 110 (HL) 111 A op operacja 000 ADD A,y 001 ADC A,y 010 SUB A,y 011 SBC A,y 100 AND A,y 101 OR A,y 110 XOR A,y 111 CP A,y

Rozkazy przesunięć RL x RR x RLC x RRC x SLA x SRL x SRA x x={A,B,C,D,E,H,L,(HL),(IX+d),(IY+d)}

16-bitowe operacje arytmetyczne ADD HL, p ADC HL, p SBC HL, p gdzie p ∈ {BC, DE, HL, SP} INC p DEC p

Rozkazy przesłań HL – adres pierwszego bajtu przesyłanego bloku DE – adres pierwszego bajtu miejsca przeznaczenia BC – liczba bajtów do przesłania LDI (LDD) – ang. load and increment Bajt pamięci adresowany przez HL jest przesyłany pod adres zawarty w DE. Zawartość HL oraz DE są zwiększane. Zawartość BC jest zmniejszana o 1. Zawartość BC jest sprawdzana – jeśli wynosi 0 procesor przechodzi do następnego rozkazu, jeśli nie całość jest powtarzana.

Rozkazy przeszukiwania bloku CPI (CPD) – ang. compare and increment Zawartość bajtu pamięci adresowanego przez HL jest porównywana z A. Jeśli są takie same ustawiana jest flaga Z. Wartość HL jest zwiększana o 1. Wartość BC jest zmniejszana o 1. Jeśli wartość jest równa zero kasowana jest flaga P/V. Sprawdzane są flagi Z oraz P/V.

Rozkazy sterujące NOP – ang. no operation HALT – zatrzymanie pracy procesora. Procesor wykonuje rozkaz NOP bez pobierania jego kodu z pamięci ale generuje sygnał RFSH. Wyjście z tego stanu poprzez zerowanie procesora (sygnał RESET) lub przerwanie. DI/EI – ang. disable interrupt/enable interrupt IM 0, IM 1, IM2 – ang. interrput modes

Rozkazy skoków JP aa – skok pod adres CALL aa – skok do procedury pod adres (zapamiętywany jest licznik rozkazów PC) RET – powrót z podprogramu

Rozkazy skoków warunkowych JP w,aa – skok pod adres CALL w,aa – skok do procedury pod adres (zapamiętywany jest licznik rozkazów PC) RET w – powrót z podprogramu skrót warunek NZ Z=0 Z Z=1 NC C=0 C C=1 PO P/V=0 PE P/V=1 P S=0 M S=1

Rozkazy skoków względnych JR d – skok o d bajtów JR w,d – skok o d bajtów gdy spełniony jest warunek w DJNZ d – zmniejsz wartość rejestru B i wykonuje skok jeśli B jest różne od zera skrót warunek NZ Z=0 Z Z=1 NC C=0 C C=1

Rozkazy bitowe BIT b,r – wartość bitu jest zapisywana we fladze Z SET b,r – ustawienie bitu RES b,r – skasowanie bitu r={A,B,C,D,E,H,L,(HL)}

Rozkazy wejścia/wyjścia IN A,(n) – dana spod adresu n jest ładowana do akumulatora OUT (n),A – wartość akumulatora jest wysyłana pod adres n IN r,(C) – dana spod adresu zawartego w C jest ładowana do rejestru r OUT (C),r – wartość rejestru r jest wysyłana pod adres zapisany w C r={A,B,C,D,E,H,L}

Powroty z procedur obsługi przerwań i obsługa stosu RETI – powrót z procedury obsługi przerwania maskowalnego RETN – powrót z procedury obsługi przerwania niemaskowalnego PUSH qq – odkłada na stos parę rejestrów POP qq – zdejmuje ze stosu parę rejestrów qq={BC, DE, HL, AF}

Mnożenie liczb A 03 B 08 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 03 B 08 DE 0005 HL 0000 C Z

Mnożenie liczb A 03 B 08 DE 0005 HL 0000 C Z 1 Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 03 B 08 DE 0005 HL 0000 C Z 1

Mnożenie liczb A 06 B 08 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 06 B 08 DE 0005 HL 0000 C Z

Mnożenie liczb A 03 B 08 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 03 B 08 DE 0005 HL 0000 C Z

Mnożenie liczb A 06 B 07 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 06 B 07 DE 0005 HL 0000 C Z

Mnożenie liczb A 06 B 07 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 06 B 07 DE 0005 HL 0000 C Z

Mnożenie liczb A 0C B 07 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 0C B 07 DE 0005 HL 0000 C Z

Mnożenie liczb A 0C B 07 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 0C B 07 DE 0005 HL 0000 C Z

Mnożenie liczb A 0C B 06 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 0C B 06 DE 0005 HL 0000 C Z

Mnożenie liczb A 0C B 06 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 0C B 06 DE 0005 HL 0000 C Z

Mnożenie liczb A 18 B 06 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 18 B 06 DE 0005 HL 0000 C Z

Mnożenie liczb A 18 B 06 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 18 B 06 DE 0005 HL 0000 C Z

Mnożenie liczb A 18 B 05 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 18 B 05 DE 0005 HL 0000 C Z

Mnożenie liczb A 18 B 05 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 18 B 05 DE 0005 HL 0000 C Z

Mnożenie liczb A 30 B 05 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 30 B 05 DE 0005 HL 0000 C Z

Mnożenie liczb A 30 B 05 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 30 B 05 DE 0005 HL 0000 C Z

Mnożenie liczb A 30 B 04 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 30 B 04 DE 0005 HL 0000 C Z

Mnożenie liczb A 30 B 04 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 30 B 04 DE 0005 HL 0000 C Z

Mnożenie liczb A 60 B 04 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 60 B 04 DE 0005 HL 0000 C Z

Mnożenie liczb A 60 B 04 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 60 B 04 DE 0005 HL 0000 C Z

Mnożenie liczb A 60 B 03 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 60 B 03 DE 0005 HL 0000 C Z

Mnożenie liczb A 60 B 03 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 60 B 03 DE 0005 HL 0000 C Z

Mnożenie liczb A C0 B 03 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A C0 B 03 DE 0005 HL 0000 C Z

Mnożenie liczb A C0 B 03 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A C0 B 03 DE 0005 HL 0000 C Z

Mnożenie liczb A C0 B 02 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A C0 B 02 DE 0005 HL 0000 C Z

Mnożenie liczb A C0 B 02 DE 0005 HL 0000 C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A C0 B 02 DE 0005 HL 0000 C Z

Mnożenie liczb A 80 B 02 DE 0005 HL 0000 C 1 Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 80 B 02 DE 0005 HL 0000 C 1 Z

Mnożenie liczb A 80 B 02 DE 0005 HL 0000 C 1 Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 80 B 02 DE 0005 HL 0000 C 1 Z

Mnożenie liczb A 80 B 02 DE 0005 HL C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 80 B 02 DE 0005 HL C Z

Mnożenie liczb A 80 B 02 DE 0005 HL C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 80 B 02 DE 0005 HL C Z

Mnożenie liczb A 80 B 01 DE 0005 HL C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 80 B 01 DE 0005 HL C Z

Mnożenie liczb A 80 B 08 DE 0005 HL 000A C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 80 B 08 DE 0005 HL 000A C Z

Mnożenie liczb A 00 B 01 DE 0005 HL 000A C 1 Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 00 B 01 DE 0005 HL 000A C 1 Z

Mnożenie liczb A 00 B 01 DE 0005 HL 000A C 1 Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 00 B 01 DE 0005 HL 000A C 1 Z

Mnożenie liczb A 00 B 01 DE 0005 HL 000F C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 00 B 01 DE 0005 HL 000F C Z

Mnożenie liczb A 00 B 01 DE 0005 HL 000F C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 00 B 01 DE 0005 HL 000F C Z

Mnożenie liczb A B 00 DE 0005 HL 000F C Z 1 Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A B 00 DE 0005 HL 000F C Z 1

Mnożenie liczb A 00 B DE 0005 HL 000F C Z Mnożna – DE Mnożnik – A Wynik – A i HL LD HL,0000 LD B,08 E1 ADD HL,HL RLA JR NC,E2 ADD HL,DE ADC A,00 E2 DJNZ E1 RET A 00 B DE 0005 HL 000F C Z

Prezentacja udostępniona na licencji Creative Commons: Uznanie autorstwa, Na tych samych warunkach 3.0. Pewne prawa zastrzeżone na rzecz autorów. Zezwala się na dowolne wykorzystywanie treści pod warunkiem wskazania autorów jako właścicieli praw do prezentacji oraz zachowania niniejszej informacji licencyjnej tak długo, jak tylko na utwory zależne będzie udzielana taka sama licencja. Tekst licencji dostępny jest na stronie: http://creativecommons.org/licenses/by-sa/3.0/deed.pl