Architektura komputerów

Transkrypt

Architektura komputerów
Instrukcja współfinansowana przez Unię Europejską
w ramach Europejskiego Funduszu Społecznego
w projekcie
„Innowacyjna dydaktyka bez ograniczeń
– zintegrowany rozwój Politechniki Łódzkiej – zarządzanie Uczelnią,
nowoczesna oferta edukacyjna i wzmacniania zdolności
do zatrudniania osób niepełnosprawnych”
Instrukcja jest dystrybuowana bezpłatnie.
Instrukcja do laboratorium, część 2 - Zadania z zakresu kombinatoryki
dr inż. Małgorzata Langer
Architektura komputerów
Zadanie nr 30 – Dostosowanie kierunku Elektronika i Telekomunikacja do potrzeb rynku pracy i gospodarki
opartej na wiedzy
90-924 Łódź, ul. Żeromskiego 116,
tel. 042 631 28 83
www.kapitalludzki.p.lodz.pl
Instrukcja współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
Ćwiczenia w obliczaniu działań logicznych:
Przykładowe zadania typu:
„Oblicz wartość funkcji F=A’BC + (AB’)(A + C’) dla A=0; B=1; C=1”
Różna postać zapisów dwójkowych:
KOD BCD
Każda cyfra zapisu dziesiętnego zapisywana jest w 4 bitach dwójkowych – czyli 2 cyfry
znajdują się w jednym bajcie, 4 są upakowane w jednym słowie 16-bitowym, itd.
Przykład zapisu w słowie 16-bitowym:
Notacja
Dziesiętna
3
53
738
Zapis w kodzie BCD
0000000000000011
0000000001010011
0000011100111000
Przykładowe zadania typu:
„Podaj wartość liczby w zapisie dziesiętnym: 1001100100000101”
„Przekształć liczbę 57910 w kod BCD”
U2 - kod uzupełnieniowy do dwóch
Ogólny zapis uzupełnienia liczby całkowitej N w notacji r ma postać:
[ N ]r = r n − ( N ) r gdy ( N ) r ≠ 0
=0
gdy
( N )r = 0
gdzie n – jest liczbą cyfr liczby N, natomiast [N]r oznacza jej uzupełnienie do r
Uzupełnienie do 10 dla liczby (2345)10 ma postać:
104 – 2345 = 10000 – 2345 = 7655
U2 – uzupełnienie do dwóch dla n-bitowej liczby binarnej ma postać:
2n – liczba binarna
90-924 Łódź, ul. Żeromskiego 116, tel. 042 631 28 83, www.kapitalludzki.p.lodz.pl
2/5
Instrukcja współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
Przykłady obliczeń:
[01010]2 = 25 – (01010) = 100000 – 01010 = 10110
[0.0010]2 = 21 – (0.0010) = 10.0000 – 0.0010 = 1.1110
Sprawdź skrócony sposób obliczania U2 – zamienić każde 0 na 1 i każdą 1 na 0 oraz dodać
1 do najmniej znaczącego bitu
Przykładowe pytania testu: „Zapisz uzupełnienie do 10 następującej liczby”; „Zapisz
uzupełnienie do 2 następującej liczby”
Tablice prawdy
Dla n zmiennych logicznych istnieje 2n możliwych kombinacji wartości tych zmiennych.
Dla funkcji wielu zmiennych logicznych można przygotować tabele - tablice prawdy – gdzie
dla każdej możliwej kombinacji tych zmiennych podaje się wartość funkcji. Aby uwzględnić
wszystkie kombinacje,
- zmienna w skrajnej prawej kolumnie zmienia swoją wartość przemiennie: 0 – 1 – 0 – 1
- zmienna sąsiadująca z lewej co dwa wiersze: 0 – 0 – 1 – 1 – 0 – 0 – 1
- zmienna kolejna co 4 wiersze: 0 – 0 – 0 – 0 – 1 – 1 – 1 – 1
itd.
Dla ułatwienia obliczeń, można obliczać również wyrażenia cząstkowe (jak w poniższym
przykładzie – w pomocniczych kolumnach)
Przykład: F = AB’ + A’C + A’B’C
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
A’
1
1
1
1
0
0
0
0
B’
1
1
0
0
1
1
0
0
AB’
0
0
0
0
1
1
0
0
A’C
0
1
0
1
0
0
0
0
A’B’C
0
1
0
0
0
0
0
0
F
0
1
0
1
1
1
0
0
Nie zawsze dysponujemy zminimalizowaną postacią funkcji, jak w powyższym przykładzie.
Pierwszą czynnością dla przygotowania układu logicznego jest raczej wypełnienie tablicy
prawdy. Na podstawie wartości funkcji wpisanych do tablicy prawdy możemy następnie
odtworzyć i zminimalizować postać funkcji.
90-924 Łódź, ul. Żeromskiego 116, tel. 042 631 28 83, www.kapitalludzki.p.lodz.pl
3/5
Instrukcja współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
Otrzymaną postacią funkcji są odpowiednio:
- SOP (suma iloczynów)
- POS (iloczyn sum)
Można je uzyskać bezpośrednio z tablicy prawdy.
Procedura otrzymania SOP
1. Dla każdego wiersza, gdzie wartość funkcji = 1 tworzymy iloczyn zmiennych
2. W każdym iloczynie wpisujemy zmienną, jeżeli w tym wierszu jej wartość = 1 oraz
negację zmiennej, jeżeli w tym wierszu jej wartość = 0
3. Kolejne iloczyny są składnikami sumy logicznej
Procedura otrzymania POS
1. Dla każdego wiersza, gdzie wartość funkcji = 0 tworzymy sumę zmiennych
2. W każdej sumie wpisujemy zmienną, jeżeli w tym wierszu jej wartość = 0 oraz
negację zmiennej, jeżeli w tym wierszu jej wartość = 1
3. Kolejne sumy są czynnikami iloczynu logicznego
Dla tablicy ze strony poprzedniej:
SOP: F = A’B’C + A’BC + AB’C’ + AB’C
POS: (A + B + C) (A + B’ + C) (A’ + B’ + C) (A’ + B’ + C’)
Jest to postać kanoniczna funkcji – w każdym wyrazie (odpowiednio czynniku lub
składniku) występują wszystkie zmienne (w postaci prostej lub zanegowanej).
Inna nazwa SOP – miniterm; POS – maxterm.
Postać kanoniczna może najczęściej zostać później zminimalizowana.
Skrócone, sformalizowane zapisy dla postaci kanonicznych:
Korzystając z powyższego przykładu:
Dla sumy iloczynów – SOP.
F(A,B,C)
w postaci binarnej:
wartości dziesiętne
=
A’B’C + A’BC + AB’C’ + AB’C
001
011 100
101
1
3
4
5
zapis formalny
=
∑m(1,3,4,5)
90-924 Łódź, ul. Żeromskiego 116, tel. 042 631 28 83, www.kapitalludzki.p.lodz.pl
4/5
Instrukcja współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
Dla iloczynu sum – POS.
F(A,B,C)
=
(A + B + C) (A + B’ + C) (A’ + B’ + C) (A’ + B’ + C’)
w postaci binarnej zapisujemy odwrotnie: 1 dla wartości zanegowanej i 0 dla prostej
000
010
110
111
wartości dziesiętne
0
2
6
7
zapis formalny
=
∏M(0,2,6,7)
UWAGA: Znając jeden zapis – drugi tworzymy automatycznie, gdyż wyrazy w obu
postaciach kanonicznych tworzą zbiór pełny i nie powtarzają się.
Przykładowe pytanie: „Podaj SOP dla funkcji czterech zmiennych, gdy SOP =
∑m(0,3,4,7,9,10,14)”; „Podaj tablicę prawdy dla tej funkcji”
MINIMALIZACJA
Mniej wyrazów w postaci funkcji – to mniej bramek. Mniej zmiennych w wyrazach – można
stosować bramki o mniejszej ilości wejść. Zminimalizowana postać funkcji ułatwia
(upraszcza) projekt.
Twierdzenia, z których korzysta się przy przekształceniach:
X.X=X
X .0=0
X . (X+Y) = X
X . (X’ + Y) = X’ . Y
(X . Y)’ = X’ + Y’ Prawa De Morgana
•
•
•
•
•
X+X=X
X+1=1
X + (XY) = X
X + X’Y = X + Y
(X+Y)’ = X’ . Y’
•
•
Zaprzeczenie sumy jest równe iloczynowi zaprzeczeń wszystkich składników tej sumy
Zaprzeczenie iloczynu jest równe sumie zaprzeczeń wszystkich czynników tego
iloczynu
Dodatkowo: X + 0 = X
X.0=0
0’ = 1
X+1=1
X.1=X
1’ = 0
X’’ = (X’)’ = X
Przykładowe zadania: „Podaj miniterm dla funkcji F(X,Y,Z) = X(Y’ + Z’) + YZ”;
Zminimalizuj funkcję czterech zmiennych, dla której SOP = ∑m(0,3,4,7,9,10,14)”;
„Czy następujące wyrażenie jest prawdziwe? (A + B + C)(A + B + C’) = A + B ”
90-924 Łódź, ul. Żeromskiego 116, tel. 042 631 28 83, www.kapitalludzki.p.lodz.pl
5/5