Architektura Komputerow wiedza


Materiały  Architektura Komputerów
wykłady by prof. Z. Ulman
kompresja & edycja by Mrk 2005
[---autor nie bierze żadnej odpowiedzialności---korzystasz na własne ryzyko---na zielono oznaczono materiały
pobrane z sieci---created with OpenOffice.org 1.1.4 & Xara X 1.1 & pl.wikipedia.org ---znalazłeś bug??
raportuj: mroko666@o2.pl---exclusively for www.iis.elblag.pl---]
1. Architektura komputera  to te atrybuty systemu , które są widzialne dla programisty 
mają bezpośredni wpływ na wykonywanie programu; np. Lista rozkazów, rozmiar
reprezentacji tyów danych, mechanizmy wejścia/wyjścia, metody odwzorowywania pamięci.
Ze względu na sposób organizacji pamięci i wykonywania programu można wyróżnić:
1. Architekturę von Neumanna
2. Architekturę Harvardzką
2. Organizacja komputera  dotyczy jednostek operacyjnych systemu i ich połączeń, które
dotyczą specyfikacji typu komputera; przykładowe atrybuty: sygnały sterujące, interfejsy
komputer/urządzenia peryferyjne, wykorzystywana technologia pamięci
3. Struktura komputera  sposób wzajemnego powiązania składników; funkcje określające
współdziałanie poszczególnych składników
4. Cztery podstawowe funkcje komputera:
1. przetwarzanie danych
2. przechowywanie danych (krótkotrwałe  do czasu wyłączenia napięcia oraz długotrwałe)
3. sterowanie
4. obsługa transferu (zródło odbiornik)
5. Schemat komputera:
12. kwi. 2005 1 z 9 23:51:59
7. Jednostka centralna (CPU, Central Processing Unit)  steruje komputerem; przetwarza
dane; inaczej: główny procesor w danym systemie komputerowym; schemat:
8. Pamięć główna  tam przechowywane są dane; //więcej na ten temat było dopiero w
wykładzie, który nie wchodzi w zakres kolokwium
6. + 10. Jednostka sterująca:
" tam rozkazy i dane dekodowane na sygnał elektryczny
" sygnały wytwarzane w sekwencji
" schemat:
9. ALU  jednostka arytmetyczno  logiczna; arithmetic logic unit; część CPU
odpowiedzialna za wykonywanie operacji arytmetycznych jak dodawanie i mnożenie oraz
wszystkich operacji porównania
12. kwi. 2005 2 z 9 23:51:59
10. Schemat architektury von Neumanna:
Schemat architektury harwardzkiej:
v.N.:
" przedstawiona po raz pierwszy w 1945
" skończona i funkcjonalnie pełna lista rozkazów w systemie
" dane i instrukcje jednakowo dostępne dla procesora
" jedynym zródłem danych dla procesora jest pamięć główna
" wykonanie rozkazu jest inicjowane przez pobranie z pamięci słowa interpretowanego jako
instrukcja
" nie pozwala na jednoczesne pobieranie danych i sygnałów
" podane warunki pozwalają przełączać system komputerowy z wykonania jednego zadania
(programu) na inne bez fizycznej ingerencji w strukturę systemu, a tym samym
gwarantują jego uniwersalność
12. kwi. 2005 3 z 9 23:51:59
H.:
" zwiększona wydajność przetwarzania
" podział pamięci na pamięć rozkazów i pamięć danych
12.Organizacja pamięci:
" jednakowe komórki o tym samym rozmiarze
" w każdej jedno słowo bitowe (np. 1, 16 lub 32 bity)
" kod słowa nie pozwala odróżnić rozkazu od danej
" istnieje jednoznacznie unikatowy adres każdej komórki  wskaznik lokacji
13.Program = sekwencja instrukcji
" w chwili wykonywania instrukcji znany jest adres lub sposób wyznaczenia adresu
następnej instrukcji
" jeżeli instrukcje znajdują się w kolejnych lokacjach  wówczas możliwe jest
automatyczne adresowanie
" układ wytwarzający adres kolejnego rozkazu to licznik rozkazów
14.Tryb przerwań asynchronicznych  zdolność procesora do reagowania na wydarzenia,
które mogą wystąpić w dowolnym momencie czasu
15.W celu zwiększenia dynamiki adresowania:
" tworzy się pamięci wirtualne
" upraszcza wywoływanie procedur
" dopuszcza rekursję
" wprowadza nowe typy danych (np. liczby zmiennoprzecinkowe)
" poprawia się mechanizmy sterowania
" ulepsza się procesy wymiany danych
" wprowadza się nowe zasady przetwarzania informacji(np. przetwarzanie ewolucyjne w
sieciach neuronowych)
16.Algorytmy ewolucyjne: naśladują procesy zachodzące w populacji osobników
ewoluujących w pewnym środowisku. Osobniki charakteryzują się zestawem cech, który
determinuje ich jakość w sensie zdolności do zwiększania swego udziału w populacji w
kolejnych pokoleniach. Przy ustaleniu odpowiedniej funkcji miary 'jakości' osobnika,
możemy uruchomić algorytm, aby obliczyć rozwiązanie (zwykle przybliżone) jakiegoś
problemu optymalizacyjnego (w szczególności może to być także zadanie wyszukiwania).
17.Automat skończony: to maszyna o skończonej liczbie stanów, która zaczynając w stanie
początkowym czyta kolejne symbole pewnego słowa. Po przeczytaniu każdego symbolu
zmienia ona swój stan na stan będący elementem zbioru, który jest wartością funkcji
przejścia. Jeśli po przeczytaniu całego słowa maszyna znajduje się w którymś ze stanów
oznaczonych jako akceptujące (końcowe), mówimy że automat akceptuje czytane słowo i
należy ono do jego języka regularnego.
18.Maszyna Turinga - stworzony przez Alana Turinga abstrakcyjny model komputera służący
do wykonywania algorytmów. Maszyna Turinga składa się z nieskończenie długiej taśmy
podzielonej na pola. Taśma może być nieskończona jednostronnie lub obustronnie. Każde
pole może znajdować się w jednym z N stanów. Maszyna zawsze jest ustawiona nad jednym
z pól i znajduje się w jednym z M stanów. Zależnie od kombinacji stanu maszyny i pola
maszyna zapisuje nową wartość w polu, zmienia stan i przesuwa się o jedno pole w prawo,
w lewo lub pozostaje na miejscu. Taka operacja nazywana jest rozkazem. Maszyna Turinga
jest sterowana listą zawierającą dowolną ilość takich rozkazów. Liczby N i M mogą być
dowolne, byle skończone. Czasem dopuszcza się też stan (M+1)-szy, który oznacza
zakończenie pracy maszyny.
12. kwi. 2005 4 z 9 23:51:59
19.Proces = stan początkowy komputera + sekwencja rozkazów
20.Cykl (komputera/pamięci/procesora)  czas pomiędzy kolejnymi zmianami stanu
komputera/pamięci/procesora.
21.Procesor wykonuje rozkazy w kolejnych cyklach w następującej kolejności:
1. Fetch F  pobranie rozkazu z pamięci
2. Decode D  zdekodowanie słowa w dekoderze
3. Read R  odczyt argumentu rozkazu
4. Execute E  wykonanie rozkazu
5. Write W  zapamiętanie wyniku
22.Rysunek procesora:
Legenda:
SP  wskaznik stosu / stack pointer
MAG  układ wytwarzania adresów / memory address generator
CR  rejestr warunków / condition registry
R  rejestry
TMP/R  rejestry tymczasowe
IR  rejestr rozkazów / instruction registry
AR  rejestr adresów / address registry
PC  program counter
DECODER - dekodery
23.Przerzutniki  elementy pamiętające - są podstawowymi elementami służącymi do
budowy układów sekwencyjnych. Istnieje jeden typ przerzutnika asynchronicznego,
mianowicie RS, zaś wśród synchronicznych wyróżnia się przerzutniki typu:
" D (zatrzask, ang. latch)
" T
" JK
12. kwi. 2005 5 z 9 23:51:59
" JK-MS (JK Master-Slave)
We wszystkich przerzutnikach synchronicznych można wyróżnić następujące końcówki:
" wejście zegarowe C
" wyjście Q (oraz jego zanegowana wartość)
" wejścia asynchroniczne zerujące (Reset) i ustawiające (Set)
" stosowne dla danego typu przerzunika wejście/wejścia
Wejścia asynchroniczne - o ile występują - służą do zmiany wyjścia Q niezależnie od
wejścia zegarowego.
Za pomocą każdego przerzutnika synchronicznego można zrealizować wszystkie inne.
24.Przesunięcie bitowe  operacja na liczbie zapisanej w systemie dwójkowym; przesunięcie
w prawo jest równoznaczne z całkowitoliczbowym podzieleniem przez 2 i polega na
zastąpieniu każdego bitu liczby przez bit starszy o jedną pozycję oraz dodanie zera na bicie
najstarszym; przesunięcie w lewo natomiast jest równoznaczne z pomnożeniem przez dwa i
jest operacją analogicznie odwrotną.
25.Multiplekser  należy do klasy układów kombinacyjnych; schemat:
Posiada k wejść, n wejść adresowych (zazwyczaj k=2n) i jedno wyjście y.
Jego działanie polega na połączeniu jednego z wejść xi z wyjściem y. Numer wejścia jest
określany przez podanie jego numeru na linie adresowe A.
Jeśli na wejście strobujące (blokujące) S (ang. strobe) podane zostanie logiczne zero, to
wyjście y przyjmuje określony stan logiczny, niezależny od stanu wejść X i A.
Demultiplekser - jest układem posiadającym jedno wejście x, n wejść adresowych, oraz k
wyjść (zazwyczaj k=2n).
12. kwi. 2005 6 z 9 23:51:59
Jego działanie polega na połączeniu wejścia x do jednego z wyjść yi. Numer wyjścia jest
określany przez podanie jego numeru na linie adresowe a0... an-1. Na pozostałych wyjściach
panuje stan zera logicznego.
Jeśli na wejście strobujące podane zostanie logiczne zero, to wyjścia yi przyjmują określony
stan logiczny (zwykle zero), niezależny ani od stanu wejścia x, ani wejść adresowych.
W praktyce spotykane są jedynie demultipleksery w wyjściach zanegowanych, czyli na
wybranym wyjściu jest stan 0 a na wszystkich pozostałych 1.
26.Sumator  jest to cyfrowy układ kombinacyjny, który wykonuje operacje dodawania dwóch
lub więcej liczb dwójkowych. Gdy uwzględnia przeniesienie jest to Full Adder  FA, gdy nie
 Half Adder  HA.
Schemat FA:
Gdzie:
a , b  bity dodawane
i i
s  bit sumy
i
c  otrzymany bit przeniesienia
i
c  przekazany bit przeniesienia
i+1
12. kwi. 2005 7 z 9 23:51:59
Tabelka prawdy:
a 0 0 0 0 1 1 1 1
i
IN b 0 0 1 1 0 0 1 1
i
c 0 1 0 1 0 1 0 1
i
s 0 1 1 0 1 0 0 1
i
OUT
c 0 0 0 1 0 1 1 1
i+1
27.Rozróżniamy następujące kody binarne ze znakiem:
" kod znak / moduł (Z/M, sign modu, S/M)
" kod uzupełnień do 1 (U1)
" kod uzupełnień do 2 (U2)
28.29.30.- Świetnie przedstawione na:
" http://www.i-lo.tarnow.pl/edu/inf/alg/num/pages/016.htm
" http://www.i-lo.tarnow.pl/edu/inf/alg/num/pages/017.htm
" http://www.i-lo.tarnow.pl/edu/inf/alg/num/pages/018.htm
31.Na przykładzie: 12345 = X .
10 8
" znajdujemy największą potęgę podstawy oblicznaego systemu (czyli 8), jaka mieści się w
danej liczbie: jest to 4096 = 84;
" dzielimy 12345 przez 4096; wynik: 3 + reszta: 57
" zapisujemy 3;
" teraz sprawdzamy, czy 8 do potęgi o jeden mniejszej mieści się w naszej reszcie z
dzielenia: nie, gdyż 83 = 512 > 57  wówczas do wyniku dopisujemy 0;
" sprawdzamy kolejną potęgę 8: 82 = 64 > 57  dopisujemy kolejne 0
" sprawdzamy następną potęgę: 81 = 8 < 57, więc dzielimy:
" 57 : 8 = 7 r 1  zapisujemy do wyniku 7; jedynki nie ma co analizować  dopisujemy do
wyniku 1;
" ostatecznie: 12345 = 30071 .
10 8
32.??? // Brak jakichkolwiek informacji tak na necie, jak i w moich notatkach  byłbym
wdzięczny za cokolwiek :)
33.Mnożenie dużych liczb:
" mamy dane liczby binarne:
" A "! (a a a a a a a ...)
0 1 2 3 4 5 6
" B "! (b b b b b b b ...)
0 1 2 3 4 5 6
" dzielimy je na dwubitowe składniki:
" A "! (a a 0 0 0 0 0...)
1 0 1
" A "! (0 0 a a 0 0 0...)
2 2 3
" A "! (0 0 0 0 a a 0...)
3 4 5
" ...
" to samo z B
" co łatwo stwierdzić, A = A + A + A + A +..., B = B + B + B + B +...
1 2 3 4 1 2 3 4
" teraz: AB = (Ła )(ŁB ) = Ł A B 2i+j
i i i,j i j
34.-37.Świetnie przedstawione na: http://www.i-lo.tarnow.pl/edu/inf/alg/num/index.html
12. kwi. 2005 8 z 9 23:51:59
********************************************************************************
********************************************************************************
********************************************************************************
********************************************************************************
_| _| _|_|_| _|_| _| _| _|_|
_|_| _|_| _| _| _| _| _| _| _| _|
_| _| _| _|_|_| _| _| _|_| _| _|
_| _| _| _| _| _| _| _| _| _|
_| _| _| _| _|_| _| _| _|_|
_|_| _| _| _|_|_|_|
_| _| _| _| _| _| _|
_| _| _| _| _| _|_|_|
_| _| _| _| _| _|
_|_|_|_| _| _| _|_|_|
^-^
********************************************************************************
********************************************************************************
********************************************************************************
********************************************************************************
12. kwi. 2005 9 z 9 23:51:59


Wyszukiwarka

Podobne podstrony:
Architektura Komputerów
Innne architektury komputerów DSP
Wirusy komputerowe Architektura komputerów M Ciepły, K Składzień
architektura komputera
Architektura Komputerow lista 3
Architektury Komputerów zagadnienia
Architektura komputerów
Architektura Komputerow Skrypt
Rozdział 01 Komunikacja procesora z innymi elementami architektury komputera
Architektura komputerów i systemy operacyjne
5 Architektura funkcjonalna komputera

więcej podobnych podstron