Podstawy informatyki
description
Transcript of Podstawy informatyki
Kodowanie i liczbyPodstawy informatyki 1WN
Podstawy informatykiPodstawy informatykiPodstawy informatykiPodstawy informatyki
Kodowanie i liczbyKodowanie i liczbyKodowanie i liczbyKodowanie i liczby
Materiały laboratoryjneMateriały laboratoryjne
dr inż. Zbigniew Zakrzewskidr inż. Zbigniew Zakrzewski v.1.3v.1.3
Kodowanie i liczbyPodstawy informatyki 2WN
Pojęcie informatyki
Informatyka jest to nauka o przetwarzaniu informacji za pomocą
automatycznych środków technicznych.
Informacja (w kontekście informatyki) jest wielkością
abstrakcyjną, która może być przechowywana w pewnych
obiektach, przesyłana pomiędzy obiektami, przetwarzana w
pewnych obiektach i stosowana do sterowania pewnymi
obiektami, przy czym przez obiekty rozumie się organizmy
żywe, urządzenia techniczne oraz systemy takich obiektów.
Informatyka jest to nauka o przetwarzaniu informacji za pomocą
automatycznych środków technicznych.
Informacja (w kontekście informatyki) jest wielkością
abstrakcyjną, która może być przechowywana w pewnych
obiektach, przesyłana pomiędzy obiektami, przetwarzana w
pewnych obiektach i stosowana do sterowania pewnymi
obiektami, przy czym przez obiekty rozumie się organizmy
żywe, urządzenia techniczne oraz systemy takich obiektów.
Kodowanie i liczbyPodstawy informatyki 3WN
Narzędzia informatyki
Komputery Oprogramowanie
Urządzenia elektroniczne realizujące proces przetwarzania informacji w postaci ciągu
operacji arytmetyczno-logicznych
Kodowanie i liczbyPodstawy informatyki 4WN
Oprogramowanie
Algorytm – opis procesu przetwarzania informacji
Program – zakodowany binarnie algorytm, który steruje pracą procesora
System operacyjny – zbiór programów umożliwiających i ułatwiających eksploatację komputera
Algorytm – opis procesu przetwarzania informacji
Program – zakodowany binarnie algorytm, który steruje pracą procesora
System operacyjny – zbiór programów umożliwiających i ułatwiających eksploatację komputera
Kodowanie i liczbyPodstawy informatyki 5WN
Podstawowe funkcje systemu operacyjnego
Do podstawowych funkcji OS należą:– uruchamianie programów i kontrola nad nimi– sterowanie pracą i współdziałaniem urządzeń wchodzących w
skład komputeraPodstawowy podsystem komputera:BIOS – Basic Input/Output System – wbudowana część systemu
operacyjnego określająca, co komputer może zrobić bez uruchamiania programów z dysku (FDD, HDD, CD, DVD, PenDrive i inne).
Do podstawowych funkcji OS należą:– uruchamianie programów i kontrola nad nimi– sterowanie pracą i współdziałaniem urządzeń wchodzących w
skład komputeraPodstawowy podsystem komputera:BIOS – Basic Input/Output System – wbudowana część systemu
operacyjnego określająca, co komputer może zrobić bez uruchamiania programów z dysku (FDD, HDD, CD, DVD, PenDrive i inne).
Kodowanie i liczbyPodstawy informatyki 6WN
Rodzaje narzędzi (komputerów)
Osobiste – stacjonarne i przenośne;
Stacje robocze;
Serwery;
Superkomputery (Mainframe);
Klastry komputerowe (typu Beowulf);
Specjalizowane.
Osobiste – stacjonarne i przenośne;
Stacje robocze;
Serwery;
Superkomputery (Mainframe);
Klastry komputerowe (typu Beowulf);
Specjalizowane. 52 jednostki sprzężone w
klastrach
Beowulf klaster
Kodowanie i liczbyPodstawy informatyki 7WN
Jednostka informacji: bit
Podstawową jednostką informacji jest bit.
Bit jest to podstawowa elementarna jednostka informacji wystarczająca do zakomunikowania jednego z co najwyżej dwóch jednakowo prawdopodobnych zdarzeń.
Bit stanowi podstawę zapisu informacji w różnych typach pamięci komputera. Wszystkie inne jednostki stanowią różną wielokrotność bitów.
Symbolicznie wartość bitu oznacza się jako „0” lub „1”Jest to oznaczenie stosowane w matematyce oraz przy opisie informacji przechowywanej w pamięci komputera i opisie sposobów kodowania informacji.
Podstawową jednostką informacji jest bit.
Bit jest to podstawowa elementarna jednostka informacji wystarczająca do zakomunikowania jednego z co najwyżej dwóch jednakowo prawdopodobnych zdarzeń.
Bit stanowi podstawę zapisu informacji w różnych typach pamięci komputera. Wszystkie inne jednostki stanowią różną wielokrotność bitów.
Symbolicznie wartość bitu oznacza się jako „0” lub „1”Jest to oznaczenie stosowane w matematyce oraz przy opisie informacji przechowywanej w pamięci komputera i opisie sposobów kodowania informacji.
Kodowanie i liczbyPodstawy informatyki 8WN
Systemy zapisu liczb
Na ogół operujemy systemami pozycyjnymi, np. rzymski, dziesiętny.
System pozycyjny oznacza, że wartość zapisywanego znaku zależy od jego miejsca, położenia
– „rzymski” = system pozycyjny sekwencyjny– „dziesiętny” = system pozycyjny wagowy
gdzie: m, n N; m ≤ n; N ≤ 2; a {0,....,N-1}
N nazywamy podstawą systemu, zaś a jest elementem zbioru cyfr dostępnych w danym systemie
W systemie dziesiętnym: N = 10, a {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Na ogół operujemy systemami pozycyjnymi, np. rzymski, dziesiętny.
System pozycyjny oznacza, że wartość zapisywanego znaku zależy od jego miejsca, położenia
– „rzymski” = system pozycyjny sekwencyjny– „dziesiętny” = system pozycyjny wagowy
gdzie: m, n N; m ≤ n; N ≤ 2; a {0,....,N-1}
N nazywamy podstawą systemu, zaś a jest elementem zbioru cyfr dostępnych w danym systemie
W systemie dziesiętnym: N = 10, a {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
ni
ii m
L a N
Kodowanie i liczbyPodstawy informatyki 9WN
System dwójkowy
System dwójkowy jest naturalnym systemem informatyki.
Jak zapisujemy informację?
Za pomocą zjawisk elektrycznych, magnetycznych, świetlnych Zamiast skomplikowanych pomiarów które by pozwoliły zapisać 10 cyfr mamy proste i jednoznaczne kodowanie.
– Materiał półprzewodnikowy: gdy przyłożymy napięcie w jednym kierunku przewodzi prąd (prawie idealnie), a w kierunku przeciwnym nie przewodzi prądu. Mamy wiec dwa stany
– Podobnie jest w magnetyzmie: substancje magnetyczne można namagnesować w dwóch kierunkach
Wadę systemy dwójkowego stanowi długość liczby, np.(0010001110100101)2 = 213 + 29 + 28 + 27 + 25 + 22 + 20 = (9125)10
System dwójkowy jest naturalnym systemem informatyki.
Jak zapisujemy informację?
Za pomocą zjawisk elektrycznych, magnetycznych, świetlnych Zamiast skomplikowanych pomiarów które by pozwoliły zapisać 10 cyfr mamy proste i jednoznaczne kodowanie.
– Materiał półprzewodnikowy: gdy przyłożymy napięcie w jednym kierunku przewodzi prąd (prawie idealnie), a w kierunku przeciwnym nie przewodzi prądu. Mamy wiec dwa stany
– Podobnie jest w magnetyzmie: substancje magnetyczne można namagnesować w dwóch kierunkach
Wadę systemy dwójkowego stanowi długość liczby, np.(0010001110100101)2 = 213 + 29 + 28 + 27 + 25 + 22 + 20 = (9125)10
Kodowanie i liczbyPodstawy informatyki 10WN
Bity a Bajty
Przyjęło się stosowanie jednostki liczącej 8 bitów, nazwanej bajtem
Bajt to podstawowa komputerowa jednostka (porcja) informacji
Dzisiaj mamy kilobajty, megabajty, gigabajty, terabajty,...
Przyjęło się stosowanie jednostki liczącej 8 bitów, nazwanej bajtem
Bajt to podstawowa komputerowa jednostka (porcja) informacji
Dzisiaj mamy kilobajty, megabajty, gigabajty, terabajty,...
Nazwa Liczba bajtów [B] Potoczne rozumienie
Kilobajt 210 = 1 024 103 (tysiąc)
Megabajt 220 = 1 048 576 106 (milion)
Gigabajt 230 = 1 073 741 824 109 (miliard)
Terabajt 240 = 11 099 511 627 776 1012 (bilion)
Jeden bajt może reprezentować 256 różnych wartości, które mogą oznaczać zapisywane wiadomości (zgodnie z regułą Hartleya)
Uw
ag
a !
Nie
jest
zg
od
ne
z
ukł
ad
em
SI
Kodowanie i liczbyPodstawy informatyki 11WN
Pojemność informacji
Wyobrażenie pojemności informacji, wyrażonej w bajtach, jako wielkości
abstrakcyjnej (nienamacalnej)
Kodowanie i liczbyPodstawy informatyki 12WN
Kodowanie informacji
Jak to się dzieje, że w pamięci komputera można przechowywać teksty, obrazy, dźwięki i liczby znacznie różniące się od zestawu 0 – 256?
Dzięki kodowaniu informacji !
Bez kodowania nie ma zapisu różnorodnych informacji w pamięci komputera. Kodowanie występuje w każdym programie i na każdym poziomie.
Kodowanie multimediów (zamiana na informację) nazywamy kodowaniem źródłowym
Jak to się dzieje, że w pamięci komputera można przechowywać teksty, obrazy, dźwięki i liczby znacznie różniące się od zestawu 0 – 256?
Dzięki kodowaniu informacji !
Bez kodowania nie ma zapisu różnorodnych informacji w pamięci komputera. Kodowanie występuje w każdym programie i na każdym poziomie.
Kodowanie multimediów (zamiana na informację) nazywamy kodowaniem źródłowym
Kodowanie i liczbyPodstawy informatyki 13WN
Kodowanie liczb i znaków
Liczby całkowite
89
Liczby dziesiętne
12,3
Znaki alfanumeryczne
CB
Liczby binarne
1011001
Liczby binarne
??????
Liczby binarne
??????
Jak przechowywać informacje o liczbach ułamkowych oraz różnorodnych znakach (literach, np. chińskich) ?
Kodowanie i liczbyPodstawy informatyki 14WN
Kanał Shannona a prawo wartości informacji Hartleya:Kanał Shannona a prawo wartości informacji Hartleya:
Komunikacyjny model Shannona
Źródło informacji Nadajnik Kanał Odbiornik Punkt
przeznaczenia
Nadana wiadomość Nadany sygnał Odebrany sygnał Odebrana wiadomość
Szum addytywny
H = log =
Wartość informacji wg Hartleya
N – liczba stanów M – liczba wiadomości
HN =M
Kodowanie i liczbyPodstawy informatyki 15WN
Formuła naturalnego (pozycyjnego) kodu dziesiętnego: (arabskiego)Formuła naturalnego (pozycyjnego) kodu dziesiętnego: (arabskiego)
Kodowanie w systemie naturalnym NKD
3 2 1 02 10 5 10 7 10 8 10L A
257810 Wartość
Znaki alfabetu Wagi systemu
3
0
10ii
i
L A a
0 1 2 38, 7, 5, 2a a a a
Ogólny zapis
0,1, , 1 , gdzie 10ia p p
0,1,2, ,9ia
Kodowanie i liczbyPodstawy informatyki 16WN
Zapis liczb nieujemnych w kodzie NKD
Formuły wiążące słowo kodowe z liczbami nieujemnymi:
1. Nieujemna liczba całkowita L 0:
2. Nieujemna liczba ułamkowa 0 L < 1:
Formuły wiążące słowo kodowe z liczbami nieujemnymi:
1. Nieujemna liczba całkowita L 0:
2. Nieujemna liczba ułamkowa 0 L < 1:
1 1 0 , 0 1n i iA a a a a a p Słowo kodowe
Podstawa kodu
Długość słowa
1
1 2 1 01 2 1 0
0
nn n i
n n ii
L A a p a p a p a p a p
1 2 1 , 0 1j m m jA a a a a a a p
1
1 2 11 2 1
m m jm m j
j m
L A a p a p a p a p a p
Długość słowa
Kodowanie i liczbyPodstawy informatyki 17WN
3. Nieujemna liczba rzeczywista L 0 :3. Nieujemna liczba rzeczywista L 0 :
Zapis liczb nieujemnych w kodzie NKD c.d
1 2 1 0 1 2n n mA a a a a a a a
1n
kk
k m
L A a p
max 1nL p max 1 nL p
Maksymalna wartość liczby całkowitej Maksymalna wartość liczby ułamkowej
Przykład: Przykład:
maxL 1 maxL 1
Kodowanie i liczbyPodstawy informatyki 18WN
Kodowanie w systemie naturalnym NKB
Formuła naturalnego (pozycyjnego) kodu dwójkowego:Formuła naturalnego (pozycyjnego) kodu dwójkowego:
3 2 1 01 2 0 2 1 2 1 2L B
10112 Wartość
Znaki alfabetu Wagi systemu
3
0
2ii
i
L B b
0 1 2 31, 1, 0, 1b b b b
Ogólny zapis
0, 1 , gdzie 2ib p p
0,1ib
Kodowanie i liczbyPodstawy informatyki 19WN
Liczba naturalna w kodzie dwójkowym
Słowo n-bitowe: X = xn-1 ....... x1 x0
Słowo 8 bitowe: 10010011
Takie słowo reprezentuje liczbę z przedziału od 0 do 2n-1
Czyli dla n = 8 0 ÷ 255 na jednym bajcie
Czyli dla n = 16 0 ÷ 65535 na dwóch bajtach
Czyli dla n = 24 0 ÷ 16777216 na trzech bajtach
Czyli dla n = 64 0 ÷ 1.8447x1019 na ośmiu bajtach
Słowo n-bitowe: X = xn-1 ....... x1 x0
Słowo 8 bitowe: 10010011
Takie słowo reprezentuje liczbę z przedziału od 0 do 2n-1
Czyli dla n = 8 0 ÷ 255 na jednym bajcie
Czyli dla n = 16 0 ÷ 65535 na dwóch bajtach
Czyli dla n = 24 0 ÷ 16777216 na trzech bajtach
Czyli dla n = 64 0 ÷ 1.8447x1019 na ośmiu bajtach
Kodowanie i liczbyPodstawy informatyki 20WN
Zapis liczb nieujemnych w kodzie NKB
Formuły wiążące słowo kodowe z liczbami nieujemnymi:
1. Nieujemna liczba całkowita L 0:
2. Nieujemna liczba ułamkowa 0 L < 1:
Formuły wiążące słowo kodowe z liczbami nieujemnymi:
1. Nieujemna liczba całkowita L 0:
2. Nieujemna liczba ułamkowa 0 L < 1:
1 2 1 0 , 0,1n n i iB b b b b b b Słowo kodowe Długość słowa
1
1 2 1 01 2 1 0
0
2 2 2 2 2n
n n in n i
i
L B b b b b b
1 2 1 , 0,1j m m jB b b b b b b
1
1 2 11 2 12 2 2 2 2m m j
m m jj m
L B b b b b b
Długość słowa
Kodowanie i liczbyPodstawy informatyki 21WN
Zapis liczb nieujemnych w kodzie NKB c.d
3. Nieujemna liczba rzeczywista L 0 :3. Nieujemna liczba rzeczywista L 0 :
1 2 1 0 1 2n n mB b b b b b b b
1
2n
kk
k m
L B b
max 2 1nL max 1 2 nL
Maksymalna wartość liczby całkowitej Maksymalna wartość liczby ułamkowej
Przykład: Przykład:
4max 2 1 15L 4
max 1 2 0.9375L
Reprezentacja dziesiętna
Kodowanie i liczbyPodstawy informatyki 22WN
Kody wspomagające kod NKB
Powody wprowadzenia kodów wspomagających:
1. Zbyt długie łańcuchy symboli NKB w ręcznym przetwarzaniu przez człowieka.
2. Możliwość popełnienia błędu w ręcznym zapisie NKB.
Powody wprowadzenia kodów wspomagających:
1. Zbyt długie łańcuchy symboli NKB w ręcznym przetwarzaniu przez człowieka.
2. Możliwość popełnienia błędu w ręcznym zapisie NKB.
2 , gdzie 1rp r
Kod ósemkowy (OCT) – r = 3 Kod szesnastkowy (HEX) – r = 4
Kody wspomagające -
W przypadku kodów o większej liczbie symboli niż 10, stosuje się oznaczenia literowe od „A” do litery dopełniającej zakres
(w przypadku kodu szesnastkowego do litery „F”).
Kodowanie i liczbyPodstawy informatyki 23WN
Reprezentacja liczb w kodach naturalnych
Tabela z wybranymi liczbami:Tabela z wybranymi liczbami:
NKD NKB OCT HEX
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
Kodowanie i liczbyPodstawy informatyki 24WN
Konwersja kodów (dziesiętny dowolny) całkowite
Metodyka konwertowania dziesiętnych liczb całkowitych:
L – dziesiętna liczba całkowita,
B – liczba równoważna dziesiętnej o podstawie p.
Metoda iteracyjnego dzielenia przez podstawę p.
Metodyka konwertowania dziesiętnych liczb całkowitych:
L – dziesiętna liczba całkowita,
B – liczba równoważna dziesiętnej o podstawie p.
Metoda iteracyjnego dzielenia przez podstawę p.
00 0, gdzie: - liczba całkowita, 1 - reszta
bLa a b p
p p
0 11 1 21 2, , , 0n na a bb a b
a ap p p p p p
1 1 0n n pB b b b b
p
Uniwersalny konwerter (NKD dowolny):
210System
Kodowanie i liczbyPodstawy informatyki 25WN
Przykład konwersji NKD na NKB (dla liczb całkowitych):Przykład konwersji NKD na NKB (dla liczb całkowitych):
Konwersja kodów (dziesiętny dwójkowy) całkowite
0
61 130 , 1,
2 2b 1
3015 0, 0,
2b
2
15 17 , 1,
2 2b
3
7 13 , 1,
2 2b
4
3 11 , 1,
2 2b 5
1 10 , 1,
2 2b
1 2
3 4
5 6
Wynik: 6110 = 1111012
6110
Kodowanie i liczbyPodstawy informatyki 26WN
Wielkości liczbowe
Liczby naturalne:
Jeden bajt 0, 1, ..., 255Dwa bajty ...,216 – 1 ( czyli około 6*104 ) Cztery bajty ...,232 – 1 ( czyli około 4*109 )
Liczby ujemne: kodowanie w systemie znak-moduł
Umawiamy się, że jeden bit z liczby oznacza jej znak (np. ósmy bit)Dla jednego bajta otrzymamy liczby (-127, 127) Ten zakres można rozszerzyć używając dwa bajty, cztery bajty, itd...
Problem: niejednoznaczność definicji zera
+ 0 = 00000000
- 0 = 10000000
Liczby naturalne:
Jeden bajt 0, 1, ..., 255Dwa bajty ...,216 – 1 ( czyli około 6*104 ) Cztery bajty ...,232 – 1 ( czyli około 4*109 )
Liczby ujemne: kodowanie w systemie znak-moduł
Umawiamy się, że jeden bit z liczby oznacza jej znak (np. ósmy bit)Dla jednego bajta otrzymamy liczby (-127, 127) Ten zakres można rozszerzyć używając dwa bajty, cztery bajty, itd...
Problem: niejednoznaczność definicji zera
+ 0 = 00000000
- 0 = 10000000
Kodowanie i liczbyPodstawy informatyki 27WN
Liczby ujemne
Bit 7 6 5 4 3 2 1 0
Znaczenie znak 64 32 16 8 4 2 1
Kodowanie w systemie znak-moduł
Kodowanie w systemie uzupełnieniowym
Bit 7 6 5 4 3 2 1 0
Znaczenie 128 -64 -32 -16 -8 -4 -2 -1
Jeżeli kolejnym bitom przypiszemy wartości jak w tabeli to otrzymamy liczby z zakresu (–127,128).
Nie ma podwójnej reprezentacji zera, ale przedział jest niesymetryczny. Ta asymetria jest wpisana w metodę, ponieważ w bajcie możemy zakodować 256 wartości. Odliczając ciąg znaków oznaczających zero zostaje nam różnych 255 wartości.
Kodowanie i liczbyPodstawy informatyki 28WN
Liczby całkowite
Liczby całkowite: kodowanie w systemie uzupełnieniowym
Wszystkie otrzymane wartości są dokładne; Istnieje górne i dolne ograniczenie zakresu wartości liczb; Ograniczenia te zależą od tego, ile bajtów przeznaczymy na
liczbę oraz od systemu kodowania znaku; Przy takim zapisie umawiamy się, że przecinek leży za prawym
skrajnym znakiem
Ten system kodowania nazywamy też systemem stałoprzecinkowym
Otrzymujemy dla niego zawsze dokładne wartości
Liczby całkowite: kodowanie w systemie uzupełnieniowym
Wszystkie otrzymane wartości są dokładne; Istnieje górne i dolne ograniczenie zakresu wartości liczb; Ograniczenia te zależą od tego, ile bajtów przeznaczymy na
liczbę oraz od systemu kodowania znaku; Przy takim zapisie umawiamy się, że przecinek leży za prawym
skrajnym znakiem
Ten system kodowania nazywamy też systemem stałoprzecinkowym
Otrzymujemy dla niego zawsze dokładne wartości
Kodowanie i liczbyPodstawy informatyki 29WN
Konwersja kodów (dziesiętny dowolny) ułamkowe
Metodyka konwertowania dziesiętnych liczb ułamkowych:
L – dziesiętna liczba ułamkowa,
B – liczba równoważna dziesiętnej o podstawie p.
Metoda iteracyjnego mnożenia przez podstawę p.
Metodyka konwertowania dziesiętnych liczb ułamkowych:
L – dziesiętna liczba ułamkowa,
B – liczba równoważna dziesiętnej o podstawie p.
Metoda iteracyjnego mnożenia przez podstawę p.
1 1 1 1, gdzie: - nowy ułamek, 1 - liczba całkowitaL p b d d b p
1 2 2 2 3 3 1, , , m m md p b d d p b d d p b d
1 20. m pB b b b
Koniec obliczeń dla dm = 0
Kodowanie i liczbyPodstawy informatyki 30WN
Konwersja kodów (dziesiętny dwójkowy) ułamkowe
Przykład konwersji NKD na NKB (dla liczb ułamkowych):Przykład konwersji NKD na NKB (dla liczb ułamkowych):
0.2110 110.21 2 0 0.42, 0,b
20.42 2 0 0.84, 0,b
30.84 2 1 0.68, 1,b
40.68 2 1 0.36, 1,b
50.26 2 0 0.72, 0,b
60.72 2 1 0.44, 1,b
I tak dalej ....
Stąd 0.2110 = (0.001101 ...)2
2
3
4
5
6
Kodowanie i liczbyPodstawy informatyki 31WN
Konwersja kodów (dwójkowy dziesiętny) całkowite
Metodyka konwertowania liczb całkowitych NKB na NKD:Metodyka konwertowania liczb całkowitych NKB na NKD:
3 2 1 01 2 0 2 1 2 1 2
8 0 2 1 11
L B
10112
110102
4 3 2 1 01 2 1 2 0 2 1 2 0 2
16 8 0 2 0 26
L B
Przykład 1:
Przykład 2:
Konwerter NKB NKD:
2 10
Kodowanie i liczbyPodstawy informatyki 32WN
Konwersja kodów (dwójkowy HEX) całkowite
Metodyka konwertowania liczb całkowitych NKB na HEX:Metodyka konwertowania liczb całkowitych NKB na HEX:
1110 0101 1101 0111 NKB
14 5 13 7 NKD
E 5 D 7 HEX
L B
1110 0101 1101 01112Przykład 1:
Konwerter NKB HEX:
2 16
Wynik: 11100101110101112 = E5D716
Tetrady liczby szesnastkowej
Kodowanie i liczbyPodstawy informatyki 33WN
Każda liczba zapisana w kodzie naturalnym może być przedstawiona w odpowiednim kodzie uzupełnieniowym.
Dla każdego naturalnego kodu liczbowego o podstawie p istnieją dwa rodzaje uzupełnień:
a) uzupełnienie do podstawy p, oznaczane symbolem Up,
b) uzupełnienie do zmniejszonej podstawy p-1, oznaczane symbolem U(p-1).
Każda liczba zapisana w kodzie naturalnym może być przedstawiona w odpowiednim kodzie uzupełnieniowym.
Dla każdego naturalnego kodu liczbowego o podstawie p istnieją dwa rodzaje uzupełnień:
a) uzupełnienie do podstawy p, oznaczane symbolem Up,
b) uzupełnienie do zmniejszonej podstawy p-1, oznaczane symbolem U(p-1).
Uzupełnienia liczb
Dla liczb o podstawie p = 10 i p = 2 otrzymuje się
odpowiednio uzupełnienia: U10, U9 i U2, U1.
Kodowanie i liczbyPodstawy informatyki 34WN
Formuła na uzupełnienie do zmniejszonej podstawy:
L – liczba nieujemna,
p – podstawa liczby,
n 0 – długość części całkowitej liczby,
m 0 – długość części ułamkowej liczby.
Formuła na uzupełnienie do zmniejszonej podstawy:
L – liczba nieujemna,
p – podstawa liczby,
n 0 – długość części całkowitej liczby,
m 0 – długość części ułamkowej liczby.
Uzupełnienie U(p-1) w teorii
1 n mU p L p p L
Praktyczna reguła: Uzupełnienie U(p-1) liczby nieujemnej otrzymuje się przez odjęcie każdej cyfry tej liczby od (p-1)
Kodowanie i liczbyPodstawy informatyki 35WN
Przykłady dla liczb dziesiętnych oraz dwójkowych:Przykłady dla liczb dziesiętnych oraz dwójkowych:
Uzupełnienie U(p-1) w praktyce
9 347 652
9 67.324 32.675
9 0 9
9 0.0 9.9
U
U
U
U
1 101101 010010
1 01.1011 10.0100
1 0 1
1 0.0 1.1
U
U
U
U
Dziesiętne: Dwójkowe:
W przypadku liczb dwójkowych operacja uzupełnienia do 1 nosi nazwę dopełnienia i oznacza zastąpienie każdej jedynki przez zero i odwrotnie, czyli negację
wszystkich bitów danej liczby.
Kodowanie i liczbyPodstawy informatyki 36WN
Formuła na uzupełnienie do podstawy:
L – liczba nieujemna,p – podstawa liczby,
n 0 – długość części całkowitej liczby.
Formuła na uzupełnienie do podstawy:
L – liczba nieujemna,p – podstawa liczby,
n 0 – długość części całkowitej liczby.
Uzupełnienie Up w teorii
dla 0
0 0
nUp L p L L
Up
Praktyczna reguła nr 1: Uzupełnienie Up liczby nieujemnej otrzymuje się przez dodanie jedynki na najmniej znaczącej pozycji jej uzupełnienia U(p-1).
Praktyczna reguła nr 2: Uzupełnienie Up liczby nieujemnej otrzymuje się przez pozostawienie wszystkich mniej znaczących zer bez zmiany, odjęcie pierwszej
niezerowej najmniej znaczącej cyfry od podstawy p, a następnie odjęcie pozostałych bardziej znaczących cyfr od zmniejszonej podstawy (p-1)
Kodowanie i liczbyPodstawy informatyki 37WN
Przykłady dla liczb dziesiętnych oraz dwójkowych:Przykłady dla liczb dziesiętnych oraz dwójkowych:
Uzupełnienie Up w praktyce
Dziesiętne:
Dwójkowe:
4
2
10 3470 6530 10 3470 4
10 0.3947 0.6053 1 0.3947 0
10 32.194 67.806 10 32.194 2
10 0 0
U n
U n
U n
U
2 101100 010100
2 01.1010 10.0110
2 0 0
2 0.0 0.0
U
U
U
U
W przypadku liczb dwójkowych (p = 2) uzupełnienia do 2 można otrzymać pozostawiając wszystkie mniej znaczące zera i pierwszą najmniej znaczącą jedynkę niezmienione, a następnie negując pozostałe bity.
Kodowanie i liczbyPodstawy informatyki 38WN
W dwójkowym systemie liczbowym znaki „+” oraz „-” są wprowadzane w postaci odrębnego bitu znaku, gdzie :
– „1”- reprezentuje umownie znak „-”,– „0” – odpowiada znakowi „+”.
Stosuje się trzy zasadnicze sposoby kodowania liczb dwójkowych ze znakiem:
1. Znak-Moduł (ZM).
2. Znak-Uzupełnienie do 1 (ZU1).
3. Znak-Uzupełnienie do 2 (ZU2).
Kody te stosuje się do liczb całkowitych i ułamkowych, czyli ogólnie biorąc liczb rzeczywistych.
W dwójkowym systemie liczbowym znaki „+” oraz „-” są wprowadzane w postaci odrębnego bitu znaku, gdzie :
– „1”- reprezentuje umownie znak „-”,– „0” – odpowiada znakowi „+”.
Stosuje się trzy zasadnicze sposoby kodowania liczb dwójkowych ze znakiem:
1. Znak-Moduł (ZM).
2. Znak-Uzupełnienie do 1 (ZU1).
3. Znak-Uzupełnienie do 2 (ZU2).
Kody te stosuje się do liczb całkowitych i ułamkowych, czyli ogólnie biorąc liczb rzeczywistych.
Zapis liczb dwójkowych ze znakiem
Kodowanie i liczbyPodstawy informatyki 39WN
W kodzie ZM liczby dodatnie i ujemne o tych samych wartościach bezwzględnych różnią się tylko bitem znaku.W kodzie ZM liczby dodatnie i ujemne o tych samych
wartościach bezwzględnych różnią się tylko bitem znaku.
Liczba ze znakiem w kodzie ZM
Całkowite: 10 2
10 2
12 0.1100
12 1.1100
Ułamkowe:10 2
10 2
0.75 0.1100
0.75 1.1100
W praktyce układowej kropka jest pomijana, gdyż zwykle przyjmuje się, że dany zapis reprezentuje albo liczbę całkowitą albo liczbę ułamkową.
Kodowanie i liczbyPodstawy informatyki 40WN
W kodzie ZU1 reprezentacja:
– liczby dodatniej jest taka sama jak w kodzie ZM,
– liczby ujemnej jako bit znaku równy 1 oraz uzupełnienie jej modułu do 1.
W kodzie ZU1 reprezentacja:
– liczby dodatniej jest taka sama jak w kodzie ZM,
– liczby ujemnej jako bit znaku równy 1 oraz uzupełnienie jej modułu do 1.
Liczba ze znakiem w kodzie ZU1
Całkowite: 10 2
10 2
12 0.1100
12 1.0011
Ułamkowe:10 2
10 2
0.75 0.1100
0.75 1.0011
Kody ZM i ZU1 wprowadzają pewną anomalię – dwie różne liczy reprezentują zero. Te dwa zera określa się umownie jako „dodatnie” i
„ujemne” zero.
Kodowanie i liczbyPodstawy informatyki 41WN
W kodzie ZU2 reprezentacja:– liczby dodatniej jest taka sama jak w kodzie ZM oraz ZU1,– liczby ujemnej jako bit znaku równy 1 oraz uzupełnienie jej modułu do
2.
W kodzie ZU2 reprezentacja:– liczby dodatniej jest taka sama jak w kodzie ZM oraz ZU1,– liczby ujemnej jako bit znaku równy 1 oraz uzupełnienie jej modułu do
2.
Liczba ze znakiem w kodzie ZU2
Całkowite: 10 2
10 2
12 0.1100
12 1.0100
Ułamkowe:10 2
10 2
0.75 0.1100
0.75 1.0100
W przypadku kodu ZU2 – zero jest zapisane jednoznacznie bez względu na ustawienia bitu znaku.
Kodowanie i liczbyPodstawy informatyki 42WN
Przykłady liczb ze znakiem w kodach
Tabela z czterobitowymi liczbami ze znakiem w kodach:Tabela z czterobitowymi liczbami ze znakiem w kodach:Liczba dziesiętna (w
nawiasach ułamkowa)Liczba dwójkowa
ZM ZU1 ZU2
-8 (-1) 1.000
-7 (-0.875) 1.111 1.000 1.001
-6 (-0.75) 1.110 1.001 1.010
-5 (-0.625) 1.101 1.010 1.011
-4 (-0.5) 1.100 1.011 1.100
-3 (-0.375) 1.011 1.100 1.101
-2 (-0.25) 1.010 1.101 1.110
-1 (-0.125) 1.001 1.110 1.111
-0 1.000 1.111
0 0.000
+0 0.000 0.000
1 (0.125) 0.001 0.001 0.001
2 (0.25) 0.010 0.010 0.010
3 (0.375) 0.011 0.011 0.011
4 (0.5) 0.100 0.100 0.100
5 (0.625) 0.101 0.101 0.101
Kodowanie i liczbyPodstawy informatyki 43WN
Cechy kodu BCD (Binary-Coded-Decimal):
1. Każda cyfra dziesiętna jest oddzielnie kodowana dwójkowo w postaci odpowiedniego słowa.
2. Cała liczba dziesiętna jest kodowana dwójkowo przez złożenie słów dwójkowych, reprezentujących wszystkie cyfry tej liczby.
3. Do zapisu cyfr potrzebne są co najmniej 4-bitowe słowa.
4. Wszystkie kody BCD są kodami nadmiarowymi (24 = 16).
5. Możliwości kombinacyjne 4-bitowych słów kodowych jako kodów BCD:
Cechy kodu BCD (Binary-Coded-Decimal):
1. Każda cyfra dziesiętna jest oddzielnie kodowana dwójkowo w postaci odpowiedniego słowa.
2. Cała liczba dziesiętna jest kodowana dwójkowo przez złożenie słów dwójkowych, reprezentujących wszystkie cyfry tej liczby.
3. Do zapisu cyfr potrzebne są co najmniej 4-bitowe słowa.
4. Wszystkie kody BCD są kodami nadmiarowymi (24 = 16).
5. Możliwości kombinacyjne 4-bitowych słów kodowych jako kodów BCD:
Kody dwójkowo-dziesiętne BCD w teorii
10! ! 16!/ 6! 2.9 10N N m
Kodowanie i liczbyPodstawy informatyki 44WN
Przykład kodowania w kodzie „8421”:
Przykład kodowania w kodzie „2421”:
Przykład kodowania w kodzie „8421”:
Przykład kodowania w kodzie „2421”:
Kody BCD w praktyce
6 2 8 3
0110 0010 1000 0011
628310
Wynik
6283106 2 8 3
1100 0010 1110 0011
Kody „samouzupełniające” – uzupełnienie do 1 liczb dwójkowych daje uzupełnienie do 9 odpowiednich liczb dziesiętnych.
Wynik
Praktyczna reguła: Pierwsze 5 cyfr kodowane jak w „8421”, pozostałe 5 zanegowane odpowiedniki dopełnień do 9.
Kodowanie i liczbyPodstawy informatyki 45WN
Zestawienie kodów BCD
Tabela z wykazem kodów dwójkowo-dziesiętnych BCD:Tabela z wykazem kodów dwójkowo-dziesiętnych BCD:
NKD 8421 2421
(Aikena)
XS3 XS3 - Graya
1 z 10 7-segmentowy
0 0000 0000 0011 0010 0000000001 1111110
1 0001 0001 0100 0110 0000000010 0110000
2 0010 0010 0101 0111 0000000100 1101101
3 0011 0011 0110 0101 0000001000 1111001
4 0100 0100 0111 0100 0000010000 0110011
5 0101 1011 1000 1100 0000100000 1011011
6 0110 1100 1001 1101 0001000000 1011111
7 0111 1101 1010 1111 0010000000 1110010
8 1000 1110 1011 1110 0100000000 1111111
9 1001 1111 1100 1010 1000000000 1111011
Kodowanie i liczbyPodstawy informatyki 46WN
Wady reprezentacji stałoprzecinkowej (Fixed Point Notation):
10-cyfrowy format: XXXXX.XXXXX
Wady reprezentacji stałoprzecinkowej (Fixed Point Notation):
10-cyfrowy format: XXXXX.XXXXX
Reprezentacja stałoprzecinkowa
47567.31A 0.000075244B
obcięte
0.000075244
00000.00007
B
47567.31000A
W przypadku liczb stałoprzecinkowych wystąpi duży błąd przy bardzo małych wartościach oraz bardzo dużych wartościach (w odniesieniu do
powyższego formatu).
Kodowanie i liczbyPodstawy informatyki 47WN
Liczby rzeczywiste
Charakterystyka:
Liczby rzeczywiste mają cześć całkowitą i ułamkową
Nie można już przyjąć, że przecinek leży po prawej stronie (bo wtedy byśmy mieli tylko liczby całkowite) ani, że leży po lewej stronie (bo wtedy byśmy mieli tylko liczby ułamkowe)
Niezbyt „ekonomiczne” byłoby używanie kodowania w systemie stałoprzecinkowym (np. przecinek rozdziela dwa bajty)
Co chcemy tak naprawdę uzyskać?
System kodowania dla którego błąd względny będzie tego samego rzędu dla wszystkich wartości biorących udział w obliczeniach.
Charakterystyka:
Liczby rzeczywiste mają cześć całkowitą i ułamkową
Nie można już przyjąć, że przecinek leży po prawej stronie (bo wtedy byśmy mieli tylko liczby całkowite) ani, że leży po lewej stronie (bo wtedy byśmy mieli tylko liczby ułamkowe)
Niezbyt „ekonomiczne” byłoby używanie kodowania w systemie stałoprzecinkowym (np. przecinek rozdziela dwa bajty)
Co chcemy tak naprawdę uzyskać?
System kodowania dla którego błąd względny będzie tego samego rzędu dla wszystkich wartości biorących udział w obliczeniach.
Kodowanie i liczbyPodstawy informatyki 48WN
Skalowanie liczby
Dostosowywanie skali liczby ułamkowej:Dostosowywanie skali liczby ułamkowej:
0.000075244B 40.75244 10B
57.5244 10B
i tak dalej ...
47567.31A
47567.31 0.75244 0.0001A B
Możliwość wykonania działania z zastosowaniem wszystkich cyfr znaczących. Wynik jednak musi być
dodatkowo pomnożony przez wykładniczy współczynnik korygujący.
Kodowanie i liczbyPodstawy informatyki 49WN
System zmiennoprzecinkowy
Metoda:
Kodowanie w systemie zmiennoprzecinkowym zwanym też cecha-mantysa
umożliwia zapis liczb rzeczywistych z ustalonym błędem względnym
system oparty na podziale liczby na cześć ułamkową zwaną mantysą oraz na wykładnik potęgi podstawy systemu zwany cechą
opracowany na podstawie zapisu liczby w systemie pozycyjnym wagowym
Metoda:
Kodowanie w systemie zmiennoprzecinkowym zwanym też cecha-mantysa
umożliwia zapis liczb rzeczywistych z ustalonym błędem względnym
system oparty na podziale liczby na cześć ułamkową zwaną mantysą oraz na wykładnik potęgi podstawy systemu zwany cechą
opracowany na podstawie zapisu liczby w systemie pozycyjnym wagowym
Kodowanie i liczbyPodstawy informatyki 50WN
Zmiennoprzecinkowa (Floating Point Notation) reprezentacja liczby
dziesiętnej:
M – mantysa, liczba ułamkowa ze znakiem, przedstawiona w jednym z
trzech kodów ZM, ZU1, ZU2,
W – wykładnik lub cecha, liczba całkowita ze znakiem przedstawiona
również w jednym z trzech kodów (nie koniecznie tym samym co M),
p – wspólna podstawa kodów zastosowanych do zapisu słów M i W,
d – liczba naturalna (zwykle równa 1).
Zmiennoprzecinkowa (Floating Point Notation) reprezentacja liczby
dziesiętnej:
M – mantysa, liczba ułamkowa ze znakiem, przedstawiona w jednym z
trzech kodów ZM, ZU1, ZU2,
W – wykładnik lub cecha, liczba całkowita ze znakiem przedstawiona
również w jednym z trzech kodów (nie koniecznie tym samym co M),
p – wspólna podstawa kodów zastosowanych do zapisu słów M i W,
d – liczba naturalna (zwykle równa 1).
Reprezentacja zmiennoprzecinkowa
dL WL L M W L M p
Kodowanie i liczbyPodstawy informatyki 51WN
Liczba zmiennoprzecinkowa jest znormalizowana, jeśli mantysa spełnia warunek:
Podczas czynności normalizacji następuje odpowiednie przesunięcie pozycji kropki dziesiętnej („przecinka”), co uzasadnia nazwanie tej notacji zmiennoprzecinkową.
W przypadku liczb dwójkowych odbywa się to poprzez przesunięcie cyfr znaczących w prawo lub w lewo, w zależności od tego czy przecinek należy przesunąć w kierunku liczb małych, czy też dużych.
Liczba zmiennoprzecinkowa jest znormalizowana, jeśli mantysa spełnia warunek:
Podczas czynności normalizacji następuje odpowiednie przesunięcie pozycji kropki dziesiętnej („przecinka”), co uzasadnia nazwanie tej notacji zmiennoprzecinkową.
W przypadku liczb dwójkowych odbywa się to poprzez przesunięcie cyfr znaczących w prawo lub w lewo, w zależności od tego czy przecinek należy przesunąć w kierunku liczb małych, czy też dużych.
Normalizacja liczby zmiennoprzecinkowej
1dp L M
Kodowanie i liczbyPodstawy informatyki 52WN
Liczby zmiennoprzecinkowe w praktyce
Metodyka dostosowywania liczby zmiennoprzecinkowej:
Przykład: Przyjęto jednobajtowe słowo dwójkowe M i W w kodzie ZU2. Zadanie:
Przedstawienie liczby dziesiętnej L = -4.25 w dwójkowym zapisie
zmiennoprzecinkowym, znormalizowanym.
1. Przekształcenie liczby L na liczbę dwójkową w kodzie ZU2:
2. Normalizacja poprzez przesunięcie przecinka dziesiętnego (warunek –
poprzedni slajd):
3. Stosując 8-bitowy kod ZU2 dla słów mantysy i wykładnika otrzymujemy dwójkowy zapis zmiennoprzecinkowy:
4. Sprawdzenie:
Metodyka dostosowywania liczby zmiennoprzecinkowej:
Przykład: Przyjęto jednobajtowe słowo dwójkowe M i W w kodzie ZU2. Zadanie:
Przedstawienie liczby dziesiętnej L = -4.25 w dwójkowym zapisie
zmiennoprzecinkowym, znormalizowanym.
1. Przekształcenie liczby L na liczbę dwójkową w kodzie ZU2:
2. Normalizacja poprzez przesunięcie przecinka dziesiętnego (warunek –
poprzedni slajd):
3. Stosując 8-bitowy kod ZU2 dla słów mantysy i wykładnika otrzymujemy dwójkowy zapis zmiennoprzecinkowy:
4. Sprawdzenie:
2 1.011.11ZU L
31.01111 2L L
1.01111000.0000011M W
M W
1 5 3 32 2 2 0.53125 2 4.25L WL M p
Wirtu
alne kro
pki
Kodowanie i liczbyPodstawy informatyki 53WN
Standard IEEE 754
Pojedyncza precyzja:
mantysa 23 bity, wykładnik 8 bitów (nadmiar 127), znak 1 bit
Mantysa jest znormalizowana do zmniejszonej podstawy wykładnika (kodowanie w formacie U1)
S E E E E E E E E M M M M M M M M M M M M M M M M M M M M M M M
Wykładnik Mantysa
Zn
ak
Wartość: 1/4 1/16 1/64 itd. 1/2 23
1/2 1/8 1/32 itd..
0222331bitbajt 1bajt 2bajt 3bajt 4
Kodowanie i liczbyPodstawy informatyki 54WN
Standard IEEE 754
Procedura zapisu:
1) Określamy znak: Bit31= 1 jeżeli liczba ujemna, 0 jeżeli dodatnia
2) Szukamy największej liczby postaci 2w mniejszej niż liczba
3) Zapisujemy wykładnik = w + nadmiar
4) Dzielimy liczbę przez 2w (wynik będzie miał postać 1.xxxx)
5) Odejmujemy 1 i szukamy mantysy
6) Zaznaczamy bit jako 1 jeżeli po odjęciu 1/(2(23-bit)) (dla pojedynczej precyzji) mamy wartość nieujemną. Jeżeli otrzymamy wartość ujemną, zaznaczamy bit jako 0 i ignorujemy tę operację. Procedurę powtarzamy aż w wyniku odejmowania otrzymamy 0 lub dojdziemy do bitu nr 0.
Procedura zapisu:
1) Określamy znak: Bit31= 1 jeżeli liczba ujemna, 0 jeżeli dodatnia
2) Szukamy największej liczby postaci 2w mniejszej niż liczba
3) Zapisujemy wykładnik = w + nadmiar
4) Dzielimy liczbę przez 2w (wynik będzie miał postać 1.xxxx)
5) Odejmujemy 1 i szukamy mantysy
6) Zaznaczamy bit jako 1 jeżeli po odjęciu 1/(2(23-bit)) (dla pojedynczej precyzji) mamy wartość nieujemną. Jeżeli otrzymamy wartość ujemną, zaznaczamy bit jako 0 i ignorujemy tę operację. Procedurę powtarzamy aż w wyniku odejmowania otrzymamy 0 lub dojdziemy do bitu nr 0.
Jedynka wiodąca
Konwerter z liczby dziesiętnej na dwójkową w standardzie IEEE 754
Kodowanie i liczbyPodstawy informatyki 55WN
Standard IEEE 754
Przykład: (zapisujemy liczbę 14.5) (nadmiar 127)
1) Liczba jest dodatnia Bit31 = 0
2) Największa liczba 2w mniejsza niż 14.5 to 23 = 8 w = 3
3) Zapisujemy wykładnik = 127 + w = 130 10000010
4) 14.5/23 = 1.8125
5) odejmujemy 1 i otrzymujemy 0.8125
0.8125-1/2=0.3125 bit22 = 1
0.3125-1/4=0.0625 bit21 = 1
0.0625-1/8= -0.0625 bit20 = 0 ignorujemy operację
0.0625-1/16= 0.0 bit19 = 1
Pozostałe bity mantysy = 0
Przykład: (zapisujemy liczbę 14.5) (nadmiar 127)
1) Liczba jest dodatnia Bit31 = 0
2) Największa liczba 2w mniejsza niż 14.5 to 23 = 8 w = 3
3) Zapisujemy wykładnik = 127 + w = 130 10000010
4) 14.5/23 = 1.8125
5) odejmujemy 1 i otrzymujemy 0.8125
0.8125-1/2=0.3125 bit22 = 1
0.3125-1/4=0.0625 bit21 = 1
0.0625-1/8= -0.0625 bit20 = 0 ignorujemy operację
0.0625-1/16= 0.0 bit19 = 1
Pozostałe bity mantysy = 0
01000001011010000000000000000000
znakwykładnik mantysa
Kodowanie i liczbyPodstawy informatyki 56WN
Standard IEEE 754
Pojedyncza precyzja: mantysa 23 bity, wykładnik 8 bitów, znak 1 bit, nadmiar 28/2 - 1 = 127
Podwójna precyzja: mantysa 52 bity, wykładnik 11 bitów, znak 1 bit, nadmiar 211/2 - 1 = 1023
Rozszerzona podwójna precyzja: mantysa 64 bity, wykładnik 15 bitów (nadmiar 264/2 - 1 = 16383), znak 1 bit
Pojedyncza precyzja: mantysa 23 bity, wykładnik 8 bitów, znak 1 bit, nadmiar 28/2 - 1 = 127
Podwójna precyzja: mantysa 52 bity, wykładnik 11 bitów, znak 1 bit, nadmiar 211/2 - 1 = 1023
Rozszerzona podwójna precyzja: mantysa 64 bity, wykładnik 15 bitów (nadmiar 264/2 - 1 = 16383), znak 1 bit
Kodowanie i liczbyPodstawy informatyki 57WN
Standard IEEE 754
Precyzja jest określana przez liczbę miejsc po przecinku, czyli jest określana przez mantysę.
Najmniejsza wartość możliwa do zapisania w mantysie
Pojedyncza precyzja:
Mantysa ma 23 bity 1/223 ≈ 1.2* 10-7 7 cyfr po przecinku
Podwójna precyzja
Mantysa ma 52 bity 1/252 ≈ 2.2* 10-16 15-16 cyfr po przecinku
Rozszerzona podwójna precyzja
Mantysa ma 64 bity 1/264 ≈ 5.4* 10-20 19 cyfr po przecinku
Precyzja jest określana przez liczbę miejsc po przecinku, czyli jest określana przez mantysę.
Najmniejsza wartość możliwa do zapisania w mantysie
Pojedyncza precyzja:
Mantysa ma 23 bity 1/223 ≈ 1.2* 10-7 7 cyfr po przecinku
Podwójna precyzja
Mantysa ma 52 bity 1/252 ≈ 2.2* 10-16 15-16 cyfr po przecinku
Rozszerzona podwójna precyzja
Mantysa ma 64 bity 1/264 ≈ 5.4* 10-20 19 cyfr po przecinku
Kodowanie i liczbyPodstawy informatyki 58WN
Znaki i teksty
Teksty składają się ze znaków Podstawą zapisu jest jeden bajt 1 bajt przyjmuje 256 różnych wartości Ważną cechą kodowania jest jednoznaczność:
przyjęcie pewnego sposobu kodowania powinno być powszechne:ASCII: 0 – 127 standardowe, 128 – 256 zależne od kraju
Teksty składają się ze znaków Podstawą zapisu jest jeden bajt 1 bajt przyjmuje 256 różnych wartości Ważną cechą kodowania jest jednoznaczność:
przyjęcie pewnego sposobu kodowania powinno być powszechne:ASCII: 0 – 127 standardowe, 128 – 256 zależne od kraju
Znaki specjalne 0-31
Spacja 32
Cyfry 48 – 57
Wielkie litery 65 – 90
Małe litery 97 - 122
Pozostałe kody:
Kropka, przecinek, itd…
33-47, 58-64, 91-96, 123-127
Np.Litera W: 01010111
kod binarny 87
Kod znaku ZnakASCII (American Standard Code for Information Interchange)
W
Kodowanie i liczbyPodstawy informatyki 59WN
Kody UNICODE
256 znaków alfanumerycznych jakie można zakodować za pomocą rozszerzonego kodu ASCII nie dawało możliwości zakodowania znaków diakrytycznych wielu języków np. polskiego.
Odpowiedzią jest kod nazwany UNICODE o długości 16 bitów dla każdego znaku. Daje to możliwość zakodowania 216, czyli 65536 znaków.
256 znaków alfanumerycznych jakie można zakodować za pomocą rozszerzonego kodu ASCII nie dawało możliwości zakodowania znaków diakrytycznych wielu języków np. polskiego.
Odpowiedzią jest kod nazwany UNICODE o długości 16 bitów dla każdego znaku. Daje to możliwość zakodowania 216, czyli 65536 znaków.
Kodowanie i liczbyPodstawy informatyki 60WN
Obrazy, dźwięki, …..
Ciągi bajtów muszą przechować teksty, liczby, muzykę, animacje: wszystkie informacje zapisywane w wyniku wykonywanych działań.
Potrzebne jest zakodowanie informacji, inne niż w przypadku liczb czy też tekstów.
Kodowanie koloru bit = 0 biały bit = 1 czarny kolor budowany jest z kilku bitów
Kodowanie rysunku obraz mapa bitowa. (plik .bmp) dokładne (formaty .tif, .gif) uproszczone (format .jpg)
Kodowanie muzyki mp3 mp4 – DVD
Im większa precyzja tym większy rozmiar pliku
Ciągi bajtów muszą przechować teksty, liczby, muzykę, animacje: wszystkie informacje zapisywane w wyniku wykonywanych działań.
Potrzebne jest zakodowanie informacji, inne niż w przypadku liczb czy też tekstów.
Kodowanie koloru bit = 0 biały bit = 1 czarny kolor budowany jest z kilku bitów
Kodowanie rysunku obraz mapa bitowa. (plik .bmp) dokładne (formaty .tif, .gif) uproszczone (format .jpg)
Kodowanie muzyki mp3 mp4 – DVD
Im większa precyzja tym większy rozmiar pliku
Kodowanie i liczbyPodstawy informatyki 61WN
Kompresja i szyfrowanie
KompresjaDziałanie mające na celu zmniejszanie objętości pliku. Przy kompresji wykorzystuje się podobieństwa i regularności występujące w plikach. Program przeprowadza analizę i wybiera fragmenty, które można zapisać w sposób zajmujący mniejszą liczbę bajtów.
Kompresja bezstratna: odtworzona informacja jest identyczna z oryginałem; dekompresja jest w pełni odwracalna.
Kompresja stratna: polega ona na eliminowaniu pewnych elementów oryginału, w celu lepszej efektywności kompresji. Możemy powiązać jakość ze stopniem kompresji.
Szyfrowanie Najczęściej stosowane algorytmy oparte na wykorzystaniu liczb pierwszych. Informacja jest szyfrowana przed wysłaniem, odczytanie wymaga posiadania deszyfratora oraz co najmniej jednego klucza.
KompresjaDziałanie mające na celu zmniejszanie objętości pliku. Przy kompresji wykorzystuje się podobieństwa i regularności występujące w plikach. Program przeprowadza analizę i wybiera fragmenty, które można zapisać w sposób zajmujący mniejszą liczbę bajtów.
Kompresja bezstratna: odtworzona informacja jest identyczna z oryginałem; dekompresja jest w pełni odwracalna.
Kompresja stratna: polega ona na eliminowaniu pewnych elementów oryginału, w celu lepszej efektywności kompresji. Możemy powiązać jakość ze stopniem kompresji.
Szyfrowanie Najczęściej stosowane algorytmy oparte na wykorzystaniu liczb pierwszych. Informacja jest szyfrowana przed wysłaniem, odczytanie wymaga posiadania deszyfratora oraz co najmniej jednego klucza.