DZIAŁANIE

Jak wcześniej wspominaliśmy, procesor dzieli się na dwie podstawowe jednostki – wykonawczą oraz sterującą.

Zadaniem jednostki wykonawczej jest przetwarzanie informacji czyli wykonywanie operacji arytmetycznych i logicznych. Rodzaj wykonywanych operacji, zależy od sygnałów sterujących przesyłanych przez jednostkę sterującą.

W skład jednostki wykonawczej wchodzi:

Jednostka arytmetyczno – logiczna, oraz zestaw rejestrów, które z nią współpracują. Informacją wejściową do jednostki wykonawczej są dane, a informacją wyjściową wyniki w postaci liczb tekstu sygnałów sterujących pracą innych urządzeń.

W skład jednostki sterującej wchodzi:

Rejestr rozkazów, dekoder rozkazów oraz układ sterowania. W rejestrze rozkazów przechowywany jest kod aktualnie wykonywanego rozkazu (instrukcji). W czasie wykonywania programu, procesor odczytuje kolejne rozkazy, które następnie musi rozpoznać (dekodować).

Istnieje wiele rodzajów mikroprocesorów. Większość z nich różni się częstotliwością zegara, wyrażaną w megahercach (MHz). Im wyższa częstotliwość zegara, tym szybszy procesor. Wszystkie procesory posiadają podobne elementy:

1. Układ sterowania i synchronizacji, który kontroluje pracę procesora i wytwarza sygnały potrzebne do sterowania niektórymi elementami komputera.
2. Arytmometr, czyli układ, który wykonuje operacje arytmetyczne i logiczne (niektóre procesory mają kilka arytmometrów).
3. Rejestry:
a). rejestr rozkazów IR (ang. Instruction Register) – wewnętrzna komórka pamięci mikroprocesora przechowująca obecnie przetwarzaną instrukcję;
b ). licznik rozkazów PC (ang. Program Counter) – przechowuje kolejne adresy pamięci z rozkazami;
c). akumulator A – przechowuje wynik wykonywanej operacji;
d). wskaźnik stosu SP (ang. Stack Pointer) – służy do adresowania pamięci, przechowuje dane w trybie LIFO (ang. Last In First Out )
e). rejestr flagowy F – przechowuje informację dotyczące realizacji wykonywanej operacji.
4. Wbudowaną pamięć podręczną Cache, która działa podobnie do zewnętrznej pamięci RAM. Zapewnia ona, że procesor nie jest zmuszony czekać na dane potrzebne mu do pracy.
5. Koprocesor matematyczny, który jest zestawem instrukcji przeznaczonych do obsługi skomplikowanych operacji matematycznych.
6. Wewnętrzne szyny łączące elementy procesora.
Procesor bezpośrednio współpracuje z pamięcią operacyjną przechowującą dane oraz ciągi instrukcji nazywane programem. Każda komórka pamięci ma swój adres. Wymiana danych pomiędzy mikroprocesorem, a pamięcią operacyjną odbywa się za pomocą magistrali pamięci, a adresowanie za pomocą magistrali adresowej.

Oto ciąg wykonywanych operacji przez procesor:

1. Pobranie rozkazu z pamięci programu,
2. Dekodowanie rozkazu, odczyt rejestrów,
3. Wykonanie rozkazu,
4. Pobranie argumentów z pamięci danych,
5. Zapisanie wyniku operacji w pamięci,

Do typowych rozkazów wykonywanych przez procesor należą:
   kopiowanie danych
   ⦁ z pamięci do rejestru
   ⦁ z rejestru do pamięci
   ⦁ z pamięci do pamięci (niektóre procesory)
⦁  działania arytmetyczne
   ⦁ dodawanie
   ⦁ odejmowanie
   ⦁ porównywanie dwóch liczb
   ⦁ dodawanie i odejmowanie jedności
   ⦁ zmiana znaku liczby
⦁  działania na bitach
    iloczyn logiczny – ⦁ AND
   ⦁ suma logiczna – ⦁ OR
   ⦁ suma modulo 2 (różnica symetryczna) – ⦁ XOR
   ⦁ negacja – ⦁ NOT
   ⦁ przesunięcie lub rotacja bitów w lewo lub w prawo
⦁  skoki
    bezwarunkowe
   ⦁ warunkowe

Więc, jak to w końcu działa?



A no już tłumaczymy, w arytmometrze odbywają się wszystkie obliczenia realizowane przez komputer.  Jednostka sterująca odpowiada natomiast za dostarczanie arytmometrowi danych do obliczeń z pamięci operacyjnej, przekazanie wyników z powrotem do pamięci oraz za właściwą kolejność przetwarzania danych.  Rejestr składa się z niewielkich komórek pamięci, w których przechowuje się adresy wybranych miejsc pamięci operacyjnej oraz dane i wyniki obliczeń. W rejestrze nazywanym licznikiem rozkazów jest umieszczany adres miejsca w pamięci wewnętrznej zawierającego bieżące zakodowane polecenie dla procesora.


Brak komentarzy:

Prześlij komentarz