Podstawy Informatyki Organizacja prostego komputera dydaktycznego alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi
Plan wykładu 1 2 Wprowadzenie Architektura maszyny W Rozkazy maszyny W 3 Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków
Wilhelm Schickard (1592 1635) Niemiecki matematyk, orientalista i konstruktor, profesor Uniwersytetu w Tybindze, pastor luterański. Twórca pierwszego kalkulatora (1623), wykonującego dodawanie, odejmowanie, mnożenie i dzielenie liczb całkowitych. Konstrukcja drewniana powstała na zamówienie Jana Keplera, spłonęła w 1624 w czasie wojny trzydziestoletniej.
Blaise Pascal (1623 1662) Francuski matematyk, fizyk i filozof religii Twórca mechanicznego kalkulatora Pascaliny (1642) umożliwiającego dodawanie i odejmowanie liczb. 19-letni Pascal chciał ułatwić pracę ojcu (poborcy podatkowemu). Do 1652 roku wykonano około 50 pascalin, służących do liczenia w różnych systemach monetarnych lub wspomagania pracy geodetów.
Gottfried Leibniz (1646 1716) Niemiecki filozof, matematyk, prawnik, inżynier mechanik, fizyk, historyk i dyplomata. W 1671 zaprojektował i wykonał Stepped reckoner (niem. lebendige Rechenbank, dosł. żywa ława do obliczeń) - kalkulator mechaniczny zdolny do odejmowania, mnożenia, dzielenia i wyprowadzania pierwiastków kwadratowych.
Charles Babbage (1791 1871) Angielski matematyk, astronom i mechanik, autor tablic logarytmicznych, poświęcił 35 lat życia na konstruowanie maszyn liczących. W 1822 Babbage zaproponował zbudowanie maszyny różnicowej, która automatycznie wyliczałaby tablice logarytmów i funkcji trygonometrycznych. Konstrukcja została tylko częściowo ukończona (1832). Pierwszy kompletny egzemplarz (2002) składa się z 8 000 części i waży 5 ton.
Maszyna Analityczna Plan wykładu W 1837 Babbage przedstawił projekt maszyny analitycznej, który rozwijał aż do śmierci. Ze względu na brak środków finansowych maszyna nigdy nie została zbudowana. Założenia: konstrukcja mechaniczna, napędzaną silnikiem parowym program i dane mają być wprowadzane za pośrednictwem kart perforowanych dane wyjściowe mają być drukowane na drukarce, rysowane przy pomocy urządzenia kreślarskiego lub zapisywane na kartach perforowanych konstrukcja zakłada rozdzielenie pamięci i jednostki obliczeniowej maszyna pozwala na wykorzystanie konstrukcji takich jak pętle, instrukcje warunkowe czy przetwarzanie równoległe
Augusta Ada King, hrabina Lovelace (1815 1852) Angielska matematyczka, uważana za pierwszego programistę napisała pierwszy w historii algorytm, który miał być wykonany przez maszynę Babbage a. Ciekawostki: Urodzona jako Augusta Ada Byron, znana jako Ada Lovelace 10 grudnia 1980 r. Ministerstwo Obrony Stanów Zjednoczonych zatwierdziło opis nowego języka programowania nazwanego Ada. Jej podobizna widnieje na hologramach autentyczności produktów Microsoftu.
Augusta Ada King, hrabina Lovelace (1815 1852) Angielska matematyczka, uważana za pierwszego programistę napisała pierwszy w historii algorytm, który miał być wykonany przez maszynę Babbage a. Ciekawostki: Urodzona jako Augusta Ada Byron, znana jako Ada Lovelace 10 grudnia 1980 r. Ministerstwo Obrony Stanów Zjednoczonych zatwierdziło opis nowego języka programowania nazwanego Ada. Jej podobizna widnieje na hologramach autentyczności produktów Microsoftu.
Claude Elwood Shannon (1916 2001) Amerykański matematyk i inżynier, jeden z twórców teorii informacji. Już jako młody człowiek twierdził, że ciągami zer i jedynek da się opisać tekst, obraz i dźwięk. Pracował nad sztuczną inteligencją, rozwijając koncepcje maszyn Turinga, czego efektem był m.in. komputer szachowy MANIAC 1 (1956). Zafascynowany algebrą Boole a w 1938 roku opracował metodę szybkiego przetwarzania danych, wykorzystywaną do sterowania elektronicznymi przekaźnikami.
Alan Mathison Turing (1912 1954) Angielski matematyk, kryptolog, jeden z twórców informatyki. Dzięki pracy O liczbach obliczalnych (gdzie przedstawił koncepcję tzw.maszyny Turinga) w wieku 26 lat Turing został uznany za jednego z najwybitniejszych matematyków świata. Zaprojektował tzw. bombę Turinga (1939-40), urządzenie służące do łamania kodu Enigmy. Był pomysłodawcą tzw. testu Turinga (1950) eksperymentu będącego próbą formalnego zdefiniowania sztucznej inteligencji.
to umowny podział komputerów cyfrowych, zależnie od zastosowanej technologii. Zerowa generacja maszyny konstruowane przed pojawieniem się uniwersalnych, elektronicznych maszyn cyfrowych (brak lamp, tranzystorów itd.) budowane na elementach mechanicznych lub elektromagnetycznych, np. przekaźnikowy Z3 (komputer o zmiennym programie zbudowany przez niemieckiego inżyniera Konrada Zuse w 1941r.)
1 generacja Plan wykładu Maszyny budowane na lampach elektronowych. ABC - Atanasoff-Berry Computer (USA, 1939) ENIAC - Electronic Numerical Integrator and Computer (USA, 1945) XYZ - pierwszy elektroniczny komputer cyfrowy zbudowany i uruchomiony w Polsce (1957) 400 lamp elektronowych i 2000 diod pamięć operacyjna (rtęciowa): 1024 słowa długości 18 bitów urządzenia zewnętrzne: czytnik i perforator kart szybkość obliczeń: 650-4500 dodawań na sekundę 350-500 mnożeń na sekundę
2 generacja Plan wykładu Maszyny budowane na tranzystorach. Philco Transac (Transistor-Automatic-Computer) S-1000 oraz S-2000 (1957, USA) Olivetti Elea 9003 (1959, Włochy) ZAM 41 (1961, Polska) zbudowany na selekcjonowanych germanowych tranzystorach stopowych TG1
3 generacja Plan wykładu Maszyny budowane na układach scalonych małej i średniej skali integracji. IBM System/360 S360 - system trzeciej generacji na lata sześćdziesiąte rodzina komputerów produkowana od 1964 do 1980 cechy: podobna lub identyczna lista rozkazów/system operacyjny, rosnąca szybkość, liczba urządzeń wejścia - wyjścia, rozmiar pamięci Odra 1305 - produkowany seryjnie od 1973 r. w Zakładach Elektronicznych Elwro we Wrocławiu. Do 1 kwietnia 2010 roku przedostatnia Odra 1305 pracowała na stacji towarowej Wrocław Brochów. Służyła do zdalnej inwentaryzacji składów i zestawiania pociągów towarowych. 1 maja 2010 roku o godzinie 9:18 została wyłączona ostatnia działająca Odra 1305, która pracowała w PKP Lublin Tatary nieprzerwanie od 1974r.
Odra 1305 Plan wykładu Działający komputer Odra 1305 (styczeń 2010r.) Odra 1305 we Wrocławiu, 2:32 Kadra opiekująca się Odrą 1305 w Lublinie (kwiecień 2010r.) Odra 1305 w Lublinie, 1:13 Zapowiedź wystawy Made in Wrocław 1945-1989 (czerwiec 2010r.) Wystawa, 2:30
4 generacja Plan wykładu Maszyny budowane na układach scalonych wielkiej skali integracji, np. komputery osobiste PC. Ich podstawą była konstrukcja mikroprocesora przez firmę Intel (pierwszy model 4004, powstał w 1971r.) Piąta generacja to projekty o niekonwencjonalnych rozwiązaniach komputer optyczny (hipotetyczne urządzenie wykorzystujące fotony zamiast prądu elektrycznego do przeprowadzania obliczeń) komputer kwantowy (dane są reprezentowane przez aktualny stan kwantowy układu stanowiącego komputer a jego ewolucja odpowiada procesowi obliczeniowemu)
4 generacja Plan wykładu Maszyny budowane na układach scalonych wielkiej skali integracji, np. komputery osobiste PC. Ich podstawą była konstrukcja mikroprocesora przez firmę Intel (pierwszy model 4004, powstał w 1971r.) Piąta generacja to projekty o niekonwencjonalnych rozwiązaniach komputer optyczny (hipotetyczne urządzenie wykorzystujące fotony zamiast prądu elektrycznego do przeprowadzania obliczeń) komputer kwantowy (dane są reprezentowane przez aktualny stan kwantowy układu stanowiącego komputer a jego ewolucja odpowiada procesowi obliczeniowemu)
ALTAIR 8800 Plan wykładu Zestaw komputerowy do własnoręcznego montażu, opracowany pod koniec 1974 r. w firmie Micro Instrumentation and Telemetry Systems, zawierał 8-bitowy mikroprocesor Intel 8080. Brak klawiatury i monitora, obsługiwany poprzez przełączniki na przednim panelu Podstawowa pamięć operacyjna to 256 bajtów, z możliwością rozbudowy, np. kości pamięci RAM 1, 2, 4, 16 kb Możliwość podłączenia magnetofonu jako pamięci masowej Sprzedano około 10 tys. egzemplarzy
Apple I i II Plan wykładu Apple I (1976) Apple II (1977) Sprzedawane już w pełni złożone Posiadały 8-bitowy mikroprocesor firmy MOS Technology 6502 i pamięć operacyjną 4kB RAM (max. 48kB) Apple I jako pierwszy komputer korzystał z klawiatury i monitora Apple II jako pierwszy mógł wyświetlić kolorową grafikę
K-202 Plan wykładu Polski 16-bitowy modularny komputer opracowany i konstruowany przez inż. Jacka Karpińskiego z zespołem w latach 1970 1973. Umożliwiał wielozadaniowość, wielodostępność i wieloprocesorowość Jako pierwszy stosował adresowanie stronicowe Zastosowano w nim pamięć stałą i operacyjną 8 MB Wykonywał milion operacji zmiennoprzecinkowych na sekundę Wyprodukowano około 30 sztuk
Warto obejrzeć Plan wykładu Jacek Karpiński (1927 2010) Ale Historia, 2:05 Polski Bill Gates, 3:13 Jack Tramiel(1928-2012) wg innych źródeł: Jacek Trzmiel, Idek Tramielski lub Idek Trzmiel Komputery a sprawa polska, 1:57
Wprowadzenie Architektura maszyny W Rozkazy maszyny W Komputer - architektura von Neumanna
Komputer, pogram, rozkaz Wprowadzenie Architektura maszyny W Rozkazy maszyny W Komputer Urządzenie techniczne zdolne do realizacji programu, czytania programu i danych oraz wyprowadzania wyników Program - uporządkowany ciąg instrukcji elementarnych zwanych rozkazami Rozkaz - uporządkowany ciąg operacji na elementach komputera uaktywnianych przez odpowiednie sygnały sterujące - zbiór wszystkich rozkazów dostępnych w danym komputerze
Układ sterowania Plan wykładu Wprowadzenie Architektura maszyny W Rozkazy maszyny W Układ sterujący realizuje pewną funkcję wektorową X = Φ(Y ), czyli i x i = Φ i (Y ) X = (x 1, x 2,..., x n ) - mikrorozkaz, czyli wektor sygnałów sterujących doprowadzanych do punktów sterowania Y = (y 1, y 2,..., y m ) - stan urządzenia, czyli wektor sygnałów zgłoszenia (stanu) generowanych przez źródło zgłoszenia
Architektura maszyny W Wprowadzenie Architektura maszyny W Rozkazy maszyny W
Format i lista rozkazów maszyny W Wprowadzenie Architektura maszyny W Rozkazy maszyny W Rozkaz to 8-bitowe słowo maszynowe K 1 K 2 K 3 A 1 A 2 A 3 A 4 A 5 Kod operacji Adres argumentu Gdy słowo pojawia się w rejestrze I, jest interpretowane jako rozkaz. Tablica rozkazów Symbol Kod Treść DOD 001 (Ak) + ((Ad)) Ak ODE 010 (Ak) ((Ad)) Ak ŁAD 011 (Ak) (Ad) POB 100 ((Ad)) Ak SOB 101 (Ad) L SOM 110 (Ad) L gdy Z = 1 STP 111 zatrzymanie zegara
Cykl rozkazowy Plan wykładu Wprowadzenie Architektura maszyny W Rozkazy maszyny W Podzielony jest na fazy Rozpoczyna się pobraniem i zdekodowaniem rozkazu oraz zwiększeniem wartości licznika rozkazów czyt, wys, wei, il Kończy się przygotowaniem do realizacji kolejnego rozkazu wyl, wea
Rozkaz dodawania Plan wykładu Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków DOD: (Ak) + ((Ad)) Ak ((A)) S, (S) I, (L) + 1 L czyt, wys, wei, il (Ad) A wyad, wea ((A)) S, (Ak) + (S) Ak czyt, wys, weja, dod, weak (L) A wyl, wea
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Przebiegi czasowe i równania rozkazu DOD
Rozkaz odejmowania Plan wykładu Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków ODE: (Ak) ((Ad)) Ak ((A)) S, (S) I, (L) + 1 L czyt, wys, wei, il (Ad) A wyad, wea ((A)) S, (Ak) (S) Ak czyt, wys, weja, ode, weak (L) A wyl, wea
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Przebiegi czasowe i równania rozkazu ODE
Rozkaz pobierania z pamięci Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków POB: ((Ad)) Ak ((A)) S, (S) I, (L) + 1 L czyt, wys, wei, il (Ad) A wyad, wea ((A)) S, (S) Ak czyt, wys, weja, przep, weak (L) A wyl, wea
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Przebiegi czasowe i równania rozkazu POB
Rozkaz ładowania do pamięci Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków ŁAD: (Ak) (Ad) ((A)) S, (S) I, (L) + 1 L czyt, wys, wei, il (Ad) A wyad, wea (Ak) S wyak, wes (S) (A), pisz (L) A wyl, wea
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Przebiegi czasowe i równania rozkazu ŁAD
Rozkaz skoku bezwarunkowego Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków SOB: (Ad) L ((A)) S, (S) I, (L) + 1 L (Ad) L (L) A czyt, wys, wei, il wyad, wel wyl, wea
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Przebiegi czasowe i równania rozkazu SOB
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Rozkaz skoku warunkowego (przy minusie) SOM: (Ad) L, gdy (Ak) < 0, czyli Z = 1 ((A)) S, (S) I, (L) + 1 L czyt, wys, wei, il Jeżeli Z = 0 to (L) A wyl, wea Jeżeli Z = 1 to (Ad) L, A wyad, wel, wea
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Przebiegi czasowe i równania rozkazu SOM, gdy Z = 0
Rozkazy arytmetyczne Rozkazy przesyłów Rozkazy skoków Przebiegi czasowe i równania rozkazu SOM, gdy Z = 1