Serwis Edukacyjny
w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

Autor artykułu: mgr Jerzy Wałaszek

©2020 mgr Jerzy Wałaszek
I LO w Tarnowie

Sterowanie za pomocą bitów

Architektura Johna Von Neumana

SPIS TREŚCI

Architektura Johna Von Neumana

Każdy użyteczny komputer musi posiadać następujące elementy składowe:

obrazek
John Von Neumann

obrazek

Procesor jest elementem, który przetwarza dane - wykonuje obliczenia matematyczne i logiczne. Steruje on również przesyłem danych pomiędzy pozostałymi składnikami komputera.

Operacje wykonywane przez procesor są określone programem. Program jest zbiorem instrukcji, które są kolejno przekazywane do procesora. Każda instrukcja oznacza pojedynczą operację, którą procesor wykonuje. Wymieniając program, możemy rozwiązywać zupełnie inny problem. Dzięki tej cesze komputer jest maszyną uniwersalną.

Pamięć przechowuje dane oraz wyniki obliczeń. Procesor może pobierać dane z pamięci i po przetworzeniu ich zapisywać je z powrotem do pamięci.

Wejście umożliwia wprowadzanie danych do komputera.

Wyjście pozwala komputerowi wyprowadzać na zewnątrz informację przetworzoną.

Dostarczanie programu do procesora w pierwszych komputerach było zupełnie oddzielnym procesem. Najczęściej wykorzystywana była taśma perforowana, która przesuwała się w specjalnym czytniku (ang. punched tape reader). Układ dziurek na taśmie określał operacje, które miał wykonywać procesor. Np. Konrad Zuse stosował do tego celu stare taśmy filmowe. Dziurki wybijał na specjalnym urządzeniu. Taśmę można było skleić końcami w pętlę i uzyskać obliczenia seryjne.

obrazek
Czytnik taśmy dziurkowanej

Rozwiązanie takie posiadało kilka istotnych wad. Procesor mógł wykonywać tylko instrukcje dostarczane mu przez czytnik. W obliczeniach nie można było w prosty sposób stosować rozgałęzień  tzn. stosowano różne sztuczki, np. pomijanie określonej liczby instrukcji, itp.). Zatem w zasadzie pierwsze komputery były jedynie programowalnymi kalkulatorami i ich zestaw instrukcji ograniczał się zwykle do operacji arytmetycznych i logicznych nad danymi, odczytu danych z wejścia i zapisu danych na wyjście.

W czasie II Wojny Światowej w USA realizowany był projekt komputera elektronicznego ENIAC (ang. Electronic Numerical Integrator And Computer – Elektroniczny, Numeryczny Integrator i Komputer). Komputer ten stosował wciąż starą architekturę - program realizowano za pomocą odpowiednich połączeń kablowych pomiędzy blokami składowymi. Na Uniwersytecie Pensylwanii w USA, gdzie był konstruowany ENIAC, pracował bardzo zdolny Węgier o nazwisku John Von Neumann. Stał się on autorem nowej na owe czasy architektury komputerów, zwanej architekturą Von Neumanna. Polegała ona na tym, iż program komputera był traktowany na równi z danymi i umieszczono go w pamięci, a nie w osobnym urządzeniu, jak dotychczas.

obrazek

Dzięki tej zmianie program jest traktowany przez procesor jak zwykłe dane. Może on odczytywać go w dowolnym porządku, co umożliwia realizację odgałęzień w algorytmie obliczeniowym oraz wykonywanie pętli (grupy instrukcji cyklicznie wykonywanych w programie). Dzięki temu komputer jest w stanie reagować na różne przypadki, które mogą się pojawić w trakcie wykonywania obliczeń. Sposób działania komputera może się dostosowywać do rodzaju przetwarzanych danych.

Przykład pseudoprogramu z rozgałęzieniem:

jeżeli A > 0, to
    W = 1
    skocz do K1
inaczej jeżeli  A = 0, to
    W = 0
    skocz do K1
inaczej
    W = -1
koniec jeżeli

K1: Pisz W
...

Program ten oblicza wartość funkcji SIGNUM, czyli znak A.

Co więcej, w pamięci można umieścić wiele programów i wykonywać je w różnej kolejności lub nawet jednocześnie (tzw. wielozadaniowość - ang. multitasking). Tak działają współczesne systemy operacyjne komputerów.

Zainteresowanych tym tematem zapraszamy do artykułów:

Opisują one tzw. PMC - Przykładową Maszynę Cyfrową, czyli bardzo prosty komputer, którego procesor potrafi wykonać tylko 16 typów instrukcji. Pomimo tego uproszczenia, PMC doskonale odwzorowuje działanie rzeczywistych komputerów i może być wykorzystywana do wstępnej nauki programowania w języku asemblera. Również polecam artykuł o maszynie Turinga, którą omawia się na pierwszym roku studiów informatycznych przy okazji problemu obliczalności. W artykule zamieściliśmy prosty symulator, na którym można przetestować wiele ciekawych problemów związanych z maszyną Turinga.

Podsumowanie

W architekturze Johna Von Neumana mamy cztery elementy składowe komputera:

  1. Procesor - pełni centralną funkcję w systemie, przetwarza dane. Jest sterowany programem zawartym w pamięci. Procesor sam pobiera instrukcje, które ma wykonać. Dzięki temu może on wpływać na sposób wykonywania programu.
  2. Pamięć - zawiera dane, wyniki obliczeń oraz program dla procesora. Dostęp do danych i programu odbywa się w podobny sposób. Program może być wczytywany do komputera poprzez wejście i umieszczany w wybranym miejscu w pamięci.
  3. Wejście - umożliwia odczyt danych do przetworzenia (również programu dla procesora).
  4. Wyjście - umożliwia przesłanie danych przetworzonych przez komputer.
Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2020 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.