TC Moduł 2: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 1: | Linia 1: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|valign="top" width="500px"|[[Grafika:TC_M2_Slajd1.png]] | |||
|valign="top | |valign="top"|Układy logiczne – pojęcia podstawowe. | ||
|[[Grafika: | |||
|valign="top"| | |||
|} | |} | ||
Linia 22: | Linia 7: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd2.png]] | ||
|valign="top"| | |valign="top"|Podstawą teoretyczną techniki cyfrowej są układy logiczne. Funkcjonalnie układy logiczne klasyfikujemy na układy kombinacyjne i układy sekwencyjne. Wykład rozpoczynamy od układów kombinacyjnych. Układ kombinacyjny jest podstawowym układem logicznym umożliwiającym realizację funkcji boolowskich. Układ kombinacyjny konstruujemy z elementów logicznych po to, aby realizować funkcje lub ich zespoły opisujące bardziej skomplikowane układy cyfrowe. Dlatego rozważania o układach kombinacyjnych rozpoczynamy od pojęcia funkcji boolowskiej. | ||
|} | |} | ||
Linia 30: | Linia 14: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width=" | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd3.png]] | ||
|valign="top"| | |valign="top"|Pojęcie funkcji boolowskiej jest pojęciem podstawowym umożliwiającym modelowanie zjawisk fizycznych reprezentowanych jako odwzorowanie ciągów (wektorów) binarnych należących do zbioru '''X''' w ciągi binarne (wektory) ze zbioru '''Y''', gdzie zbiory '''X''', '''(Y)''' są podzbiorami ''n''-krotnego, (m-krotnego) iloczynu kartezjańskiego zbioru '''B''' = {0, 1}. | ||
< | Formalnie funkcją boolowską zmiennych binarnych <math>x_1,...,x_n</math> nazywamy odwzorowanie <math>f: X \rightarrow Y</math>, gdzie <math>X \subseteq B^n, Y \subseteq B^m</math>. | ||
Jeżeli <math>X = B^n</math>, to funkcję taką nazywamy zupełną; w przeciwnym przypadku jest to funkcja niezupełna, zwana również funkcją nie w pełni określoną. | |||
Najczęściej stosowane reprezentacje funkcji boolowskich to tablica prawdy oraz formuła (wyrażenie) boolowskie. | |||
|} | |} | ||
Linia 51: | Linia 28: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd4.png]] | ||
|valign="top"| | |valign="top"|Funkcja <math>f</math> może być przedstawiona w postaci tablicy prawdy. Jest to tablica o <math>n+1</math> kolumnach i <math>2n</math> wierszach. W kolejnych wierszach są zapisywane wszystkie wartości ciągu <math>x_1,...,x_n</math>, czyli wszystkie wektory <math>x</math>. W ostatniej kolumnie podana jest wartość y przyporządkowywana danemu wektorowi lub „–”, jeżeli funkcja dla tego wektora nie jest określona. Kolejne wektory są numerowane, przy czym wartość <math>i</math> podana z lewej strony w dodatkowej kolumnie jest dziesiętnym odpowiednikiem wektora <math>x</math> traktowanego jako liczba w zapisie dwójkowym. | ||
< | |||
|} | |} | ||
Linia 65: | Linia 36: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd5.png]] | ||
|valign="top"| | |valign="top"|Oto przykłady uproszczonego zapisu funkcji boolowskich. Podane zapisy specyfikują funkcje boolowskie, których wektory wejściowe określone są liczbami dziesiętnymi. | ||
|} | |} | ||
Linia 72: | Linia 43: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width=" | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd6.png]] | ||
|valign="top"| | |valign="top"|Funkcje boolowskie reprezentowane odwzorowaniem <math>f</math>, jakkolwiek możliwe do bezpośredniej realizacji technicznej, nie są najlepszą formą do zastosowań. Znacznie wygodniejsze są reprezentacje funkcji w postaci formuł boolowskich. Ich zaleta wynika przede wszystkim z łatwej realizacji elementów logicznych zwanych bramkami logicznymi, które to elementy stanowią naturalną realizację formuł (wyrażeń) boolowskich, gdzie występują w postaci operatorów. | ||
Formuła boolowska to wyrażenie, w którym zmienne boolowskie połączone są operatorami: <math>+ (OR), \cdot (AND), \bar x (NOT)</math>. Operatory te zdefiniowane są w tabelce podanej na planszy dla działań dwuargumentowych AND i OR i jednoargumentowego NOT, ale ich uogólnienie na operatory wieloargumentowe jest oczywiste. | |||
< | |||
|} | |} | ||
Linia 87: | Linia 52: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width=" | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd7.png]] | ||
|valign="top"| | |valign="top"|Dla funkcji opisanej tablicą prawdy podaną w tabelce na planszy podajemy sposób tworzenia formuły boolowskiej. | ||
|} | |} | ||
Linia 94: | Linia 59: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd8.png]] | ||
|valign="top"| | |valign="top"|A na tej planszy pokazana jest realizacja tej funkcji na bramkach AND, OR, NOT. | ||
W układzie kombinacyjnym z rysunku na planszy funkcja <math>f</math>, realizowana na jego wyjściu <math>f</math>, reprezentuje odwzorowanie z tabelki prawdy, co łatwo sprawdzić wprowadzając na wejścia układu odpowiednie wektory binarne i obliczając wartość uzyskaną na wyjściu <math>y</math>. Na przykład dla <math>x_1 = x_2 = 0, x_3 = 1</math> na wyjściu bramki AND1 pojawi się sygnał o wartości 1, i w rezultacie wyjście <math>y</math> przyjmie wartość 1. Natomiast dla <math>x_1 = x_2 = x_3 = 0</math> na wyjściach wszystkich bramek AND będzie 0, a więc jednocześnie <math>y</math> przyjmie wartość 0, co jest zgodne z tablicą prawdy. | |||
|} | |} | ||
Linia 108: | Linia 68: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd9.png]] | ||
|valign="top"| | |valign="top"|W dwuelementowej algebrze Boole'a wprowadza się też inne działania (operatory). Do najważniejszych z nich należą: zanegowany iloczyn (NAND), zanegowana suma (NOR), suma wyłączająca (tzw. suma modulo 2 lub różnica symetryczna, oznaczana EXOR). Operatorom tym odpowiadają stosowne symbole bramek. | ||
|} | |} | ||
Linia 115: | Linia 75: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd10.png]] | ||
|valign="top"| | |valign="top"|Nie kwestionowaną zaletą formuł boolowskich jest możliwość ich upraszczania, a co zatem idzie możliwość uzyskiwania realizacji oszczędniejszych z punktu widzenia liczby bramek. Zasady formalne upraszczania formuł boolowskich związane są z prawami i własnościami algebry Boole’a. | ||
Własności stałych: | |||
|} | |} | ||
Linia 133: | Linia 85: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd11.png]] | ||
|valign="top"| | |valign="top"| | ||
|} | |} | ||
Linia 140: | Linia 92: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd12.png]] | ||
|valign="top"| | |valign="top"| | ||
|} | |} | ||
Linia 147: | Linia 99: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|[[Grafika: | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd13.png]] | ||
|valign="top"| | |valign="top"| | ||
|} | |} | ||
Linia 154: | Linia 106: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width=" | |valign="top" width="500px"|[[Grafika:TC_M2_Slajd14.png]] | ||
|valign="top" | | |valign="top"| | ||
|} | |} | ||
Linia 161: | Linia 113: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|valign="top" width="500px"|[[Grafika:TC_M2_Slajd15.png]] | |||
|valign="top | |valign="top"| | ||
|[[Grafika: | |||
|valign="top"| | |||
|} | |} |
Wersja z 13:02, 28 sie 2006
![]() |
Układy logiczne – pojęcia podstawowe. |
![]() |
Oto przykłady uproszczonego zapisu funkcji boolowskich. Podane zapisy specyfikują funkcje boolowskie, których wektory wejściowe określone są liczbami dziesiętnymi. |
![]() |
Dla funkcji opisanej tablicą prawdy podaną w tabelce na planszy podajemy sposób tworzenia formuły boolowskiej. |
![]() |
![]() |
![]() |
![]() |
![]() |