Metodyka nauczania Informatyki WYKŁAD 3 Modele komputerów
Komputer vs. model Komputer: magiczne urządzenie, które (podłączone do prądu) wykonuje, w tajemniczy sposób, działania zarezerwowane dla istot myślących. Model: urządzenie, które można zbudować samemu (z kartonu, patyków, śrubek, gwoździ, …) i wykonać z jego pomocą dziwne czynności „zarezerwowane” dla istot myślących.
Przykład - elipsa Komputer Korzystamy z oprogramowania, np. arkusz kalkulacyjny Wprowadzamy odpowiednio dane – wzór krzywej do narysowania Rysunek pojawia się automatycznie
Przykład - elipsa Model Przygotowujemy nitkę, dwie szpilki, ołówek i kartkę papieru Wbijamy szpilki w odległości 8 cm, wiążemy pętlę z kawałka nitki o długości 10+8=18 cm. Zakładamy pętlę na szpilki i rysujemy elipsę ołówkiem umieszczonym wewnątrz pętli.
Przykład – elipsa model
Rodzaje modeli Ideowy – teoretyczny Fizyczny – realny Obrazuje ideę działania, reguły pracy Dowodzi poprawności rozważań, możliwości teoretycznych zbudowania danego urządzenia Fizyczny – realny Pozwala na bezpośrednią obserwację (czynnościową) Obrazuje zasadę mechaniczną (elektryczną), która może być wykorzystana w urządzeniu rzeczywistym
Modele ideowe komputera Abstrakcyjne Rachunek binarny, kodowanie liczb (moduł-znak prosty, moduł-znak odwrotny) Funkcje rekurencyjne Bliskie realizacji Funkcje boolowskie Realizacje funkcji boolowskich za pomocą bramek logicznych
Modele ideowe programowania Abstrakcyjne Maszyny Turinga Służyły do rozważań teoretycznych, można wykorzystać jako ideowy model programowania Bliskie realizacji PMC – Przykładowa Maszyna Cyfrowa Służy jako przykład koncepcji programowania niskopoziomowego, można wykorzystać jako model programowania w języku wewnętrznym komputera
Maszyna Turinga Budowa: Nieskończona taśma z kratkami, w których można napisać zero lub jedynkę Głowica znajdująca się nad jedną kratką taśmy, która może: Przesunąć taśmę w lewo (L) lub prawo (P) Napisać jeden (1) lub zero (0) Zmienić swój stan wewnętrzny zgodnie z instrukcją i znakiem zapisanym na taśmie w kratce pod głowicą
Maszyna Turinga Instrukcje Cztery znaki: Przykłady Stan głowicy Znak na taśmie w kratce pod głowicą Czynność wykonana przez głowicę (L,P,1,0 i S – stop) Nowy stan, który ma mieć głowica po wykonaniu czynności Przykłady 5,0,1,9 – jeżeli głowica jest w stanie 5 i z taśmy odczytuje 0 to ma napisać jedynkę (zacierając poprzedni znak) i zmienić stan na 9 3,1,P,3 – jeżeli głowica jest w stanie 3 i z taśmy odczytuje 1 to ma przesunąć taśmę w prawo o jedną kratkę i zmienić stan na 3
Maszyna Turinga Zadanie Dane: Wynik: Taśma ze skończoną liczbą kratek z jedynkami i pozostałymi kratkami wypełnionymi zerami Początkowe położenie głowicy na taśmie Wynik: Zatrzymanie maszyny Taśma z określoną konfigurację jedynek zależną od danych początkowych Położenie głowicy w określonym miejscu
Maszyna Turinga Programowanie Spisanie instrukcji takich, aby po uruchomieniu maszyny z początkowym stanem (np. 1) w określonym miejscu taśmy zawierającej określoną (w warunkach zadania) konfigurację skończonej liczby jedynek, maszyna zatrzymała się zostawiając na taśmie odpowiednią konfigurację skończonej liczby jedynek i głowicę w odpowiednim miejscu
Maszyna Turinga Przykład zadania Dane Wynik Taśma z dwoma nieprzerwanymi, skończonymi ciągami jedynek oddzielonymi jedną kratką z zerem Głowica jest ustawiona na pierwszej jedynce pierwszego ciągu (pozostałe jedynki są na prawo od głowicy): Wynik Taśma z jednym nieprzerwanym ciągiem jedynek mający tyle samo jedynek ile było ich na początku (położenie głowicy nieistotne)
Maszyna Turinga Rozwiązanie zadania Program 1,1,L,1 1,0,1,2 2,1,L,2 3,1,0,3 3,0,S,0
Maszyna Turinga Inne zadania Wyszukiwanie Arytmetyka Na taśmie jedna jedynka, głowica na jakimś zerze Wynik: głowica na jedynce Arytmetyka Ciąg n+1 jedynek oznacza liczbę n Dwa ciągi reprezentujące liczby m i n, zostawić jeden ciąg reprezentujący m+n, mn, m/n, itp
Bramki logiczne Urządzenia (teoretyczne lub realne) przetwarzające sygnały (np. elektryczne) AND NAND NOT OR NOR XOR
Bramki logiczne - przykład
Bramki logiczne - przykład
Bramki logiczne - software http://www.softronix.com/logic.html
Przykładowa Maszyna Cyfrowa
Przykładowa Maszyna Cyfrowa PMC ma słowo długości 12 bitów, używa kodowania znak-moduł, czyli zakres liczb od –2047 do 2047. Budowa: Pamięć operacyjna: 356 komórek 12 bitowych adresowanych liczbami od 0 do 255 (8 bitów) Procesor: dwuukładowy: Arytmometr przeznaczony do wykonywania 4 działań arytmetycznych i operacji porównania liczby z zerem, w arytmometrze jest akumulator Sterowanie ma dwa rejestry: Rejestr rozkazów licznik 12 bitowy Licznik rozkazów rejestr 8 bitowy do przechowywania adresu rozkazu Procesor wykonuje jeden z 16 rozkazów w jednym cyklu rozkazowym. Interfejsy wejścia i wyjścia – każdy ma rejestr na przechowanie jednego słowa maszynowego.
Przykładowa Maszyna Cyfrowa Dekodowanie rozkazu: Podział 12 bitów słowa na 4 bity – część operacyjna, 8 bitów – część adresowa Rozkazy A – akumulator L(A) – liczba w akumulatorze X – adres komórki pamięci L(X) – liczba z komórki o adresie X
Przykładowa Maszyna Cyfrowa Kod Argument Opis 0000 ZA Zeruj A 0001 DO X Dodaj L(X) do L(A) wynik w A 0010 OD Odejmij L(X) od L(A) wynik w A 0011 MN Pomnóż L(X) przez L(A) wynik w A 0100 DZ Podziel L(X) przez L(A) wynik w A 0101 UA Umieść L(X) w A 0110 PA Pamiętaj L(A) w X 0111 O1 Zmniejsz L(X) o 1 1000 D1 Zwiększ L(X) o 1 1001 SK Skok bezwarunkowy 1010 SM Skocz do X jeżeli L(A)<0 1011 SP Skocz do X jeżeli L(A)>0 1100 SZ Skocz do X jeżeli L(A)=0 1101 PW Prześlij L(X) na wyjście 1110 WP Wprowadź wejście do L(X) 1111 ST Stop
Przykładowa Maszyna Cyfrowa // dodawanie dwóch liczb 0: WP 17 // pierwsza liczba w komórce o adresie 17 1: WP 16 // druga liczba w komórce o adresie 16 2: UA 17 // pierwsza liczba do akumulatora 3: DO 16 // do akumulatora dodaj liczbę z komórki // 16 – wynik w akumulatorze 4: PA 15 // wynik dodawania do komórki 15 5: PW 15 // wynik na wyjście 6: ST
Modele fizyczne - mechaniczne Mechanizm tangensowy
Modele fizyczne - mechaniczne Sumator analogowy
Modele fizyczne - mechaniczne Studencki transformer: liczba na liczbę binarną
Modele fizyczne - mechaniczne Studencki transformer: liczba na liczbę binarną
Pałeczki Napiera
Rachunki binarne na szachownicy
Suwak logarytmiczny Instrukcja do zrobienia własnego z papieru: http://www.chem.univ.gda.pl/~tomek/suwak_log.pdf
Rysowanie stycznej
Rysowanie stycznej
Rysowanie stycznej
Rysowanie stycznej
Rysowanie stycznej