Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Wyk lad 1
Kodowanie informacji.Elementy teorii informacji.
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kontakt
Zak lad Chemii Teoretycznej, p. 4
tel. 663 20 28
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Rozk lad jazdy
Kodowanie informacji, elementy teorii informacji
Elementy algorytmiki
Architektura komputerow
Systemy komputerowe, systemy operacyjne
Sieci komputerowe, bezpieczenstwo, szyfrowanie
10 pozosta lych wyk ladow (dr hab. A. Eilmes / J. Mrozek)
Folie dost ↪epne przez WWW:http://www.chemia.uj.edu.pl/~makowskm.
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Zasady zaliczania
wyk lad: test (prawdopodobnie na ostatnim wyk ladzie)
laboratorium: trzy kolokwia
ocena koncowa: 40% ocena z testu + 60% ocena zlaboratorium
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Reprezentacja danych
dane reprezentowane s ↪a przez sekwencje bitow
sekwencje bitow interpretowane s ↪a w kategoriachwewn ↪etrznych typow danych
wewn ↪etrzne typy danych okreslone poprzez:dziedzin ↪emozliwe do wykonania operacje
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Wewn ↪etrzne typy danych
liczby ca lkowite
znaki
u lamki
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Liczby ca lkowite, znaki
liczby ca lkowite
skonczony podzbior matematycznego zbioru liczb ca lkowitychoperacje daj ↪a dok ladne wynikimozliwy nadmiarreprezentacje: NB, ”znak - modu l”, U2, U1
znaki: skonczony podzbior zbioru liczb ca lkowitych
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
U lamki
skonczony podzbior matematycznego zbioru liczbrzeczywistych
nie wszystkie liczby rzeczywiste z zadanego zakresu mog ↪a bycreprezentowane
operacje nie zawsze daj ↪a dok ladne wyniki
reprezentacje: sta lopozycyjna, zmiennopozycyjna
mozliwy nadmiar i niedomiar
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Systemy liczbowe
Definicja
System liczbowy to zbior regu lumozliwiaj ↪acych przedstawienie liczb zapomoc umownych znakow
Definicja
Cyfry to znaki za pomoc ↪a ktorychzapisuje si ↪e liczby
Systemy liczbowe
niepozycyjne: jedynkowy, rzymski,. . .
pozycyjne: dwojkowy, osemkowy,dziesi ↪etny, szesnastkowy, . . .
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Typowe systemy pozycyjne
Podstawa = k; ai ∈ {0, 1, 2, . . . , k − 1}Liczba =
∑n−1i=0 k iai ; Liczba ∈ [0, kn − 1]
Przyk lad
dziesi ↪etny dwojkowy osemkowy szesnastkowy
1 1 1 17 111 7 7
14 1110 16 E
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kod BCD
tylko cyfry dziesi ↪etne s ↪a podane w kodzie dwojkowym
z kodow cyfr dziesi ↪etnych sk ladany jest kod liczby
stosowany w wyswietlaczach cyfrowych.
Przyk lad
dziesi ↪etny BCD (8421) BCD (5421)
1 0001 00017 0111 10109 1001 1100
395→ 001110010101
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Reprezentacja binarna
Definicja
Znak binarny to zmienna przyjmuj ↪aca jedn ↪a z dwoch wartosciumownie 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
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kody znakowe
Definicja
Tablica wartosci znakow to odwzorowanie znakow pisarskich naliczby ca lkowite.
Definicja
Binarny kod wartosci znaku to reprezentacja (w postaci 1 bajtu lubsekwencji bajtow) liczby ca lkowitej odpowiadaj ↪acej znakowi.
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kod ASCII
8-bitowy
s lowo informacyjne obejmuje 7bitow
jeden bit jest bitem kontrolnym
binarna postac kodu znaku -reprezentacja 128 liczb (kody od 0do 127) w postaci 1 bajtu
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Tabela wartosci znakow kodu ASCII
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kod ISO-8859-2
pe lne 8 bitow kodu stanowi bity informacyjne
reprezentacja kodu znakowego w postaci 1 bajtu
bit MSB (najbardziej znacz ↪acy) dla znakow ASCII wynosi 0 anowe znaki maj ↪a MSB rowny 1
obs luguje znaki charakterystyczne dla j ↪ezykowwschodnioeuropejskich
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Tabela wartosci znakow kodu ISO-8859-2
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Unicode
standard Unicode okresla tablic ↪e wartosci znakow maj ↪ac ↪a wzamierzeniu obejmowac wszystkie pisma uzywane na swiecie
najpopularniejsze kodowania to UTF-8, UTF-32
Wprowadzanie znakow Unicode niedost ↪epnych z klawiatury
wklejenie z systemowej tablicy znakow
kombinacja klawiszy + liczbaLinux: nacisn ↪ac Ctrl+Shift+u, wprowadzic kod szesnastkowyznaku, nacisn ↪ac EnterWindows: trzymaj ↪ac nacisni ↪ety lewy Alt nacisn ↪ac klawisz +,wpisac numer szesnastkowy znaku, po czym zwolnic klawisz AltWindows: wpisac numer szesnastkowy znaku, a nast ↪epniewcisn ↪ac kombinacj ↪e lewy Alt + x
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kodowanie liczb ca lkowitych
kodowanie liczb nieujemnych - kod ”natural binary” (NB)
kodowanie liczb ze znakiem
kod ”znak - modu l”kod ”uzupe lnien do dwoch” (U2)kod ”uzupe lnien do jeden” (U1)
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kod NB
dwojkowy kod pozycyjny
pozycja i : waga 2i
1001NB = 1 ∗ 20 + 0 ∗ 21 + 0 ∗ 22 + 1 ∗ 23 = 9
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kod ”znak - modu l”
znak liczby okreslany przez najbardziej znacz ↪acy bit (an−1)
an−1 = 0: LiczbaZM =∑n−2
i=0 ai ∗ 2i
an−1 = 1: LiczbaZM = −∑n−2
i=0 ai ∗ 2i
niewygodny przy wykonywaniu operacjach arytmetycznych
dwa rozne kody dla zera: 00000000, 10000000
Przyk lad
45 = 000101101ZM − 45 = 100101101ZM
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kod U2
najpowszechniej stosowane kodowanie
najbardziej znacz ↪acy bit jest bitem znaku, ma (ujemn ↪a) wag ↪erown ↪a −2n−1
LiczbaU2 = −an−1 ∗ 2n−1 +n−2∑i=0
ai ∗ 2i ∈[−2n−1, 2n−1 − 1
]
Przyk lad
10001011U2 = −1 ∗ 27 + 1 ∗ 23 + 1 ∗ 21 + 1 ∗ 20 = −117
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
U2 - liczba przeciwna
Aby zamienic liczb ↪e w U2 na przeciwn ↪a nalezy wykonac dwa kroki:
dokonac inwersji bitow, czyli zamienic 0 na 1 i odwrotnie
dodac do wyniku 1
Przyk lad
57 = 00111001U2
Dokonujemy inwersji11000110U2
Dodajemy 1:
11000111U2 = −1 ∗ 27 + 1 ∗ 26 + 1 ∗ 22 + 1 ∗ 21 + 1 ∗ 20 = −57
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
U2 - dodawanie liczb
traktujemy liczby jako zwyk le liczby binarne (dodatnie),dodajemy je, a wynik otrzymamy w kodzie U2
dodawanie odbywa si ↪e l ↪acznie z bitem znaku
Przyk lad
11010001+11100010
110110011 = 10110011
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Problem nadmiaru
wyst ↪epuje, gdy wynik operacjiprzekracza zakres reprezentacjiliczb
dodaj ↪ac w U2 mozemy go wykrycprzez sprawdzenie bitu znakuwyniku
dodawanie dwoch liczb dodatnichdaje liczb ↪e ujemn ↪adodawanie dwoch liczb ujemnychdaje liczb ↪e dodatni ↪a
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Kod U1
Najbardziej znacz ↪acy bit jest bitem znaku, ma (ujemn ↪a) wag ↪erown ↪a −
(2n−1 − 1
)LiczbaU1 = −an−1∗
(2n−1 − 1
)+
n−2∑i=0
ai∗2i ∈[−(
2n−1 − 1), 2n−1 − 1
]10001011U1 = −1 ∗ (27 − 1) + 1 ∗ 23 + 1 ∗ 21 + 1 ∗ 20 = −116
Liczb ↪e przeciwn ↪a otrzymujemy przez inwersj ↪e bitow
Przyk lad
57 = 00111001U1
Dokonujemy inwersji
11000110U1 = −1 ∗ (27 − 1) + 1 ∗ 26 + 1 ∗ 22 + 1 ∗ 21 = −57
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Metody kodowania u lamkow
275.34 czy 2.7534 ∗ 102 ?
reprezentacja sta lopozycyjna
zwykle dosc ograniczony zakresprzy ustalonej ca lkowitej liczbie bitow wi ↪ekszy zakres oznaczaarytmetyka moze byc realizowana za pomoc ↪a dzia lanca lkowitoliczbowych
reprezentacja wyk ladnicza (zmiennopozycyjna)
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Reprezentacja sta loprzecinkowa
pozycyjny system liczbowy o dodatniej podstawie p
liczba kodowana w postaci
(L)p ≡ (an−1, . . . , a1, a0, a−1, . . . , a−m) ≡ (CLUL)p
L =n−1∑i=−m
ai ∗ pi
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Reprezentacja zmiennoprzecinkowa
liczby kodowane w jednym s lowie maszyny podzielonym natrzy cz ↪esci:
znak liczby (zwykle 1 bit)cz ↪esc (zwykle najd luzsza) zawieraj ↪aca kod mantysy liczby i jejznakcz ↪esc (zwykle kilkubitowa) zawieraj ↪aca kod cechy liczby i jejznak
Liczba = [znak]mantysa ∗ 2cecha
mantysa jest znormalizowana
0.5 ¬ |mantysa| ¬ 1
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
W lasnosci arytmetyki zmiennoprzecinkowej
nie jest l ↪aczna
(x + y) + z 6= x + (y + z)
(x ∗ y) ∗ z 6= x ∗ (y ∗ z)
nie jest rozdzielna
x ∗ (y + z) 6= (x ∗ y) + (x ∗ z)
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
B l ↪edy zaokr ↪aglen i ich konsekwencje
Przedstawmy liczby zmiennopozycyjne a, b jako wartosci dok ladnezaburzone b l ↪edem reprezentacji
a = a (1 + εa)
b = b (1 + εb)
Wtedy b l ↪edy wzgl ↪edne operacji dokonywanych na liczbach a i bmozemy oszacowac nast ↪epuj ↪aco
εa±b =aεa ± bεb
a± b+ ε±
εa∗b = εa + εb + ε∗
εa/b = εa − εb + ε/
gdzie ε±, ε∗, ε/ to b l ↪edy wprowadzane przez poszczegolne operacjearytmetyczne
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Co to jest informacja?
Definicja
informacja: wiadomosc, wiesc, nowina, rzecz zakomunikowana,zawiadomienie, komunikat; pouczenie, powiadomienie,zakomunikowanie o czyms; dane; pokoj, okienko, stanowisko, gdziesi ↪e udziela informacji; (ilosc informacji) miara wiedzy o jakimszdarzeniu, uzyskanej w wyniku przeprowadzenia okreslonegoeksperymentu; mat., cyber. miara braku entropii (nieokreslonosci),miara organizacji systemu; (i. genetyczna, dziedziczna) biol. zapisgenetycznych w lasciwosci organizmu zawarty w cz ↪asteczkach DNAkazdej komorki.
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Informatyka a teoria informacji
Definicja
informatyka: techniki i metody przetwarzania informacji; dyscyplinanauki i techniki zajmuj ↪aca si ↪e org. powstawania i przebieguinformacji, technologi ↪a i metodyk ↪a jej przekszta lcania, zw l. zapomoc ↪a techniki obliczeniowej; nauka o komputerach; po l ↪aczenieinformacji z automatyk ↪a
Definicja
teoria informacji: dyscyplina mat. badaj ↪aca, jaka ilosc informacjizawiera si ↪e w pewnym zbiorze wiadomosci (np. w zdaniu, ksi ↪azce,obrazie TV, zapisie kodowym), a takze analizuj ↪aca procesyprzekazywania informacji
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Twierdzenie Shannona
Twierdzenie
Wiadomosc (znak, zdarzenie) zawiera tymwi ↪ecej informacji, im mniejsze jestprawdopodobienstwo jej wyst ↪apienia
im wi ↪eksze jest prawdopodobienstwowyniku dla zdarzenia, tym mniejsz ↪a iloscinformacji otrzymuje si ↪e w zwi ↪azku z jegozaistnieniem
im mniej prawdopodobny by l wynikzdarzenia, tym wi ↪ecej informacji zawierawiadomosc o jego zaistnieniu
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Miara informacji
informacja jest ci ↪ag l ↪a, nieujemn ↪a, monotonicznie rosn ↪ac ↪afunkcj ↪a odwrotnosci prawdopodobienstwa
informacja o niezaleznym wyst ↪apieniu dwoch wiadomosci oprawdopodobienstwach pi i pk powinna byc sum ↪aposzczegolnych informacji o wyst ↪apieniu kazdej z wiadomosci
informacja wynikaj ↪aca ze zdarzenia pewnego jest zerowa
I (p) = −logap
Wybor a = 2 prowadzi do pomiaru ilosci informacji w bitach.
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Entropia
Definicja
Niech zdarzenie Y moze przyniesc k roznych wynikow {Yi}. Niechprawdopodobienstwo wyniku Yi wynosi P(Yi ). Wielkosc H(Y )zdefiniowan ↪a jako
H(Y ) = −k∑
i=1
P(Yi )log(P(Yi ))
nazywamy entropi ↪a zdarzenia Y . Entropia zdarzenia stanowi miar ↪eoczekiwanej nieokreslonosci zdarzenia
im bardziej rownomierny rozk lad prawdopodobienstw wynikowtym wi ↪eksza entropia
im wi ↪ecej mozliwych wynikow tym wi ↪eksza entropia
Informacje o kursie Reprezentacja i typy danych Systemy liczbowe Kodowanie danych Elementy teorii informacji
Istotne poj ↪ecia i obszary zastosowan
Centralne w teorii informacji b ↪ed ↪a zagadnienia dotycz ↪ace
l ↪aczy informacyjnych
kodowania znakow
odleg losci informacyjnych
Teoria informacji znajduje zastosowania przede wszystkim wtelekomunikacji, w szczegolnosci w problematyce transmisji,kompresji i kryptografii. Istnieje jednak tez na przyk ladkomunikacyjna teoria wi ↪azania chemicznego.