Wyk lad 1 Kodowanie informacji. Elementy teorii informacji.
Kontakt Zak lad Chemii Teoretycznej, p. 4 makowskm@chemia.uj.edu.pl tel. 663 20 28
Rozk lad jazdy Kodowanie informacji, elementy teorii informacji Elementy algorytmiki Architektura komputerów Systemy komputerowe, systemy operacyjne Sieci komputerowe, bezpieczeństwo, szyfrowanie 10 pozosta lych wyk ladów (dr hab. A. Eilmes / J. Mrozek) Folie dost epne przez WWW: http://www.chemia.uj.edu.pl/~makowskm.
Zasady zaliczania wyk lad: test (prawdopodobnie na ostatnim wyk ladzie) laboratorium: trzy kolokwia ocena końcowa: 40% ocena z testu + 60% ocena z laboratorium
Reprezentacja danych dane reprezentowane sa przez sekwencje bitów sekwencje bitów interpretowane sa w kategoriach wewnetrznych typów danych wewnetrzne typy danych określone poprzez: dziedzine możliwe do wykonania operacje
Wewn etrzne typy danych liczby ca lkowite znaki u lamki
Liczby ca lkowite, znaki liczby ca lkowite skończony podzbiór matematycznego zbioru liczb ca lkowitych operacje daja dok ladne wyniki możliwy nadmiar reprezentacje: NB, znak - modu l, U2, U1 znaki: skończony podzbiór zbioru liczb ca lkowitych
U lamki skończony podzbiór matematycznego zbioru liczb rzeczywistych nie wszystkie liczby rzeczywiste z zadanego zakresu moga być reprezentowane operacje nie zawsze daja dok ladne wyniki reprezentacje: sta lopozycyjna, zmiennopozycyjna możliwy nadmiar i niedomiar
Systemy liczbowe Definicja System liczbowy to zbiór regu l umożliwiajacych przedstawienie liczb za pomoc umownych znaków Definicja Cyfry to znaki za pomoca których zapisuje sie liczby Systemy liczbowe niepozycyjne: jedynkowy, rzymski,... pozycyjne: dwójkowy, ósemkowy, dziesi etny, szesnastkowy,...
Typowe systemy pozycyjne Przyk lad Podstawa = k; a i {0, 1, 2,..., k 1} Liczba = n 1 i=0 ki a i ; Liczba [0, k n 1] dziesi etny dwójkowy ósemkowy szesnastkowy 1 1 1 1 7 111 7 7 14 1110 16 E
Kod BCD Przyk lad tylko cyfry dziesietne sa podane w kodzie dwójkowym z kodów cyfr dziesietnych sk ladany jest kod liczby stosowany w wyświetlaczach cyfrowych. dziesi etny BCD (8421) BCD (5421) 1 0001 0001 7 0111 1010 9 1001 1100 395 001110010101
Reprezentacja binarna Definicja Znak binarny to zmienna przyjmujaca jedna z dwóch wartości umownie oznaczonych jako 0 i 1 Wektory znakowe 1-elementowy: bit 8-elementowy: bajt 16-elementowy: s lowo 16-bitowe 32-elementowy: s lowo 32-bitowe
Kody znakowe Definicja Tablica wartości znaków to odwzorowanie znaków pisarskich na liczby ca lkowite. Definicja Binarny kod wartości znaku to reprezentacja (w postaci 1 bajtu lub sekwencji bajtów) liczby ca lkowitej odpowiadajacej znakowi.
Kod ASCII 8-bitowy s lowo informacyjne obejmuje 7 bitów jeden bit jest bitem kontrolnym binarna postać kodu znaku - reprezentacja 128 liczb (kody od 0 do 127) w postaci 1 bajtu
Tabela wartości znaków kodu ASCII
Kod ISO-8859-2 pe lne 8 bitów kodu stanowi bity informacyjne reprezentacja kodu znakowego w postaci 1 bajtu bit MSB (najbardziej znaczacy) dla znaków ASCII wynosi 0 a nowe znaki maja MSB równy 1 obs luguje znaki charakterystyczne dla jezyków wschodnioeuropejskich
Tabela wartości znaków kodu ISO-8859-2
Unicode standard Unicode określa tablice wartości znaków majac a w zamierzeniu obejmować wszystkie pisma używane na świecie najpopularniejsze kodowania to UTF-8, UTF-32 Wprowadzanie znaków Unicode niedost epnych z klawiatury wklejenie z systemowej tablicy znaków kombinacja klawiszy + liczba Linux: nacisnać Ctrl+Shift+u, wprowadzić kod szesnastkowy znaku, nacisnać Enter Windows: trzymajac naciśniety lewy Alt nacisnać klawisz +, wpisać numer szesnastkowy znaku, po czym zwolnić klawisz Alt Windows: wpisać numer szesnastkowy znaku, a nastepnie wcisnać kombinacje lewy Alt + x
Kodowanie liczb ca lkowitych kodowanie liczb nieujemnych - kod natural binary (NB) kodowanie liczb ze znakiem kod znak - modu l kod uzupe lnień do dwóch (U2) kod uzupe lnień do jeden (U1)
Kod NB dwójkowy kod pozycyjny pozycja i: waga 2 i 1001 NB = 1 2 0 + 0 2 1 + 0 2 2 + 1 2 3 = 9
Kod znak - modu l Przyk lad znak liczby określany przez najbardziej znaczacy bit (a n 1 ) a n 1 = 0: Liczba ZM = n 2 i=0 a i 2 i a n 1 = 1: Liczba ZM = n 2 i=0 a i 2 i niewygodny przy wykonywaniu operacjach arytmetycznych dwa różne kody dla zera: 00000000, 10000000 45 = 000101101 ZM 45 = 100101101 ZM
Kod U2 najpowszechniej stosowane kodowanie najbardziej znaczacy bit jest bitem znaku, ma (ujemna) wage równa 2 n 1 n 2 Liczba U2 = a n 1 2 n 1 [ ] + a i 2 i 2 n 1, 2 n 1 1 Przyk lad i=0 10001011 U2 = 1 2 7 + 1 2 3 + 1 2 1 + 1 2 0 = 117
U2 - liczba przeciwna Aby zamienić liczbe w U2 na przeciwna należy wykonać dwa kroki: dokonać inwersji bitów, czyli zamienić 0 na 1 i odwrotnie Przyk lad dodać do wyniku 1 57 = 00111001 U2 Dokonujemy inwersji 11000110 U2 Dodajemy 1: 11000111 U2 = 1 2 7 + 1 2 6 + 1 2 2 + 1 2 1 + 1 2 0 = 57
U2 - dodawanie liczb traktujemy liczby jako zwyk le liczby binarne (dodatnie), dodajemy je, a wynik otrzymamy w kodzie U2 dodawanie odbywa sie l acznie z bitem znaku Przyk lad 11010001 +11100010 110110011 = 10110011
Problem nadmiaru wystepuje, gdy wynik operacji przekracza zakres reprezentacji liczb dodajac w U2 możemy go wykryć przez sprawdzenie bitu znaku wyniku dodawanie dwóch liczb dodatnich daje liczbe ujemna dodawanie dwóch liczb ujemnych daje liczbe dodatnia
Kod U1 Najbardziej znaczacy bit jest bitem znaku, ma (ujemna) wage równa ( 2 n 1 1 ) ( ) Liczba U1 = a n 1 2 n 1 1 + n 2 i=0 a i 2 i [ ( ) ] 2 n 1 1, 2 n 1 1 10001011 U1 = 1 (2 7 1) + 1 2 3 + 1 2 1 + 1 2 0 = 116 Liczbe przeciwna otrzymujemy przez inwersje bitów Przyk lad Dokonujemy inwersji 57 = 00111001 U1 11000110 U1 = 1 (2 7 1) + 1 2 6 + 1 2 2 + 1 2 1 = 57
Metody kodowania u lamków 275.34 czy 2.7534 10 2? reprezentacja sta lopozycyjna zwykle dość ograniczony zakres przy ustalonej ca lkowitej liczbie bitów wiekszy zakres oznacza arytmetyka może być realizowana za pomoca dzia lań ca lkowitoliczbowych reprezentacja wyk ladnicza (zmiennopozycyjna)
Reprezentacja sta loprzecinkowa pozycyjny system liczbowy o dodatniej podstawie p liczba kodowana w postaci (L) p (a n 1,..., a 1, a 0, a 1,..., a m ) (C L U L ) p L = n 1 i= m a i p i
Reprezentacja zmiennoprzecinkowa liczby kodowane w jednym s lowie maszyny podzielonym na trzy cześci: znak liczby (zwykle 1 bit) cześć (zwykle najd luższa) zawierajaca kod mantysy liczby i jej znak cześć (zwykle kilkubitowa) zawierajaca kod cechy liczby i jej znak Liczba = [znak]mantysa 2 cecha mantysa jest znormalizowana 0.5 mantysa 1
W lasności arytmetyki zmiennoprzecinkowej nie jest l aczna nie jest rozdzielna (x + y) + z x + (y + z) (x y) z x (y z) x (y + z) (x y) + (x z)
B l edy zaokragleń i ich konsekwencje Przedstawmy liczby zmiennopozycyjne ā, b jako wartości dok ladne zaburzone b l edem reprezentacji ā = a (1 + ɛ a ) b = b (1 + ɛ b ) Wtedy b l edy wzgledne operacji dokonywanych na liczbach ā i b możemy oszacować nastepuj aco ɛ a±b = aɛ a ± bɛ b + ɛ ± a ± b ɛ a b = ɛ a + ɛ b + ɛ ɛ a/b = ɛ a ɛ b + ɛ / gdzie ɛ ±, ɛ, ɛ / to b l edy wprowadzane przez poszczególne operacje arytmetyczne
Co to jest informacja? Definicja informacja: wiadomość, wieść, nowina, rzecz zakomunikowana, zawiadomienie, komunikat; pouczenie, powiadomienie, zakomunikowanie o czymś; dane; pokój, okienko, stanowisko, gdzie sie udziela informacji; (ilość informacji) miara wiedzy o jakimś zdarzeniu, uzyskanej w wyniku przeprowadzenia określonego eksperymentu; mat., cyber. miara braku entropii (nieokreśloności), miara organizacji systemu; (i. genetyczna, dziedziczna) biol. zapis genetycznych w laściwości organizmu zawarty w czasteczkach DNA każdej komórki.
Informatyka a teoria informacji Definicja informatyka: techniki i metody przetwarzania informacji; dyscyplina nauki i techniki zajmujaca sie org. powstawania i przebiegu informacji, technologia i metodyka jej przekszta lcania, zw l. za pomoca techniki obliczeniowej; nauka o komputerach; po l aczenie informacji z automatyka Definicja teoria informacji: dyscyplina mat. badajaca, jaka ilość informacji zawiera sie w pewnym zbiorze wiadomości (np. w zdaniu, ksiażce, obrazie TV, zapisie kodowym), a także analizujaca procesy przekazywania informacji
Twierdzenie Shannona Twierdzenie Wiadomość (znak, zdarzenie) zawiera tym wiecej informacji, im mniejsze jest prawdopodobieństwo jej wystapienia im wieksze jest prawdopodobieństwo wyniku dla zdarzenia, tym mniejsza ilość informacji otrzymuje sie w zwiazku z jego zaistnieniem im mniej prawdopodobny by l wynik zdarzenia, tym wi ecej informacji zawiera wiadomość o jego zaistnieniu
Miara informacji informacja jest ciag l a, nieujemna, monotonicznie rosnac a funkcja odwrotności prawdopodobieństwa informacja o niezależnym wystapieniu dwóch wiadomości o prawdopodobieństwach p i i p k powinna być suma poszczególnych informacji o wystapieniu każdej z wiadomości informacja wynikajaca ze zdarzenia pewnego jest zerowa I (p) = log a p Wybór a = 2 prowadzi do pomiaru ilości informacji w bitach.
Entropia Definicja Niech zdarzenie Y może przynieść k różnych wyników {Y i }. Niech prawdopodobieństwo wyniku Y i wynosi P(Y i ). Wielkość H(Y ) zdefiniowana jako H(Y ) = k P(Y i )log(p(y i )) i=1 nazywamy entropia zdarzenia Y. Entropia zdarzenia stanowi miare oczekiwanej nieokreśloności zdarzenia im bardziej równomierny rozk lad prawdopodobieństw wyników tym wi eksza entropia im wi ecej możliwych wyników tym wi eksza entropia
Istotne poj ecia i obszary zastosowań Centralne w teorii informacji bed a zagadnienia dotyczace l aczy informacyjnych kodowania znaków odleg lości informacyjnych Teoria informacji znajduje zastosowania przede wszystkim w telekomunikacji, w szczególności w problematyce transmisji, kompresji i kryptografii. Istnieje jednak też na przyk lad komunikacyjna teoria wiazania chemicznego.