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