Podstawy Informatyki

Transkrypt

Podstawy Informatyki
Podstawy Informatyki
Bożena Woźna-Szcześniak
[email protected]
Jan Długosz University, Poland
Wykład 2
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
1 / 26
Informacja
Słowo informacja pochodzi od łacińskiego informatio i oznacza
wyobrażenie.
Istnieje kilka różnych definicji pojecia
˛
informacja (encyklopedia
PWN):
konstatacja stanu rzeczy, wiadomość;
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
2 / 26
Informacja
Słowo informacja pochodzi od łacińskiego informatio i oznacza
wyobrażenie.
Istnieje kilka różnych definicji pojecia
˛
informacja (encyklopedia
PWN):
konstatacja stanu rzeczy, wiadomość;
powiadamianie społeczeństwa lub określonych zbiorowości w
sposób zobiektywizowany, systematyczny i konkretny za pomoca˛
środków masowego przekazu;
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
2 / 26
Informacja
Słowo informacja pochodzi od łacińskiego informatio i oznacza
wyobrażenie.
Istnieje kilka różnych definicji pojecia
˛
informacja (encyklopedia
PWN):
konstatacja stanu rzeczy, wiadomość;
powiadamianie społeczeństwa lub określonych zbiorowości w
sposób zobiektywizowany, systematyczny i konkretny za pomoca˛
środków masowego przekazu;
obiekt abstrakcyjny, który w sposób zakodowany może być
przesyłany, przetwarzany i używany do sterowania.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
2 / 26
Informacja - jednostki
Informacje˛ możemy mierzyć ilościowo lub jakościowo.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
3 / 26
Informacja - jednostki
Informacje˛ możemy mierzyć ilościowo lub jakościowo.
Informacje w komputerze przekazywane sa˛ poprzez sygnały
elektryczne, które przekazywane sa˛ w systemie binarnym.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
3 / 26
Informacja - jednostki
Informacje˛ możemy mierzyć ilościowo lub jakościowo.
Informacje w komputerze przekazywane sa˛ poprzez sygnały
elektryczne, które przekazywane sa˛ w systemie binarnym.
Najmniejsza˛ jednostka˛ informacji przechowywana˛ w komputerze
jest jeden bit (1b).
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
3 / 26
Informacja - jednostki
Informacje˛ możemy mierzyć ilościowo lub jakościowo.
Informacje w komputerze przekazywane sa˛ poprzez sygnały
elektryczne, które przekazywane sa˛ w systemie binarnym.
Najmniejsza˛ jednostka˛ informacji przechowywana˛ w komputerze
jest jeden bit (1b).
8 bitów to jeden byte(1B).
1kB = 210 B = 1024B (kilobajt)
1MB = 220 B = 1024kB (megabajt)
1GB = 230 B = 1024MB (gigabajt)
1TB = 240 B = 1024GB (terabajt)
1PB = 250 B = 1024TB (petabajt)
1EB = 260 B = 1024PB (eksabajt)
1ZB = 270 B = 1024EB (zettabajt)
1YB = 280 B = 1024ZB (jottabajt)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
3 / 26
Arytmetyka komputerowa
Pozycyjne Systemy liczbowe
Reprezentacja liczb całkowitych i rzeczywistych
Arytmetyka na liczbach stałoprzecinkowych
Arytmetyka na liczbach zmiennoprzecinkowych
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
4 / 26
Pozycyjne systemy liczbowe
Pozycyjnym systemem liczbowym nazywamy pare˛
(q, C)
gdzie
q >= 2 jest liczba˛ naturalna,
˛ nazywana˛ podstawa˛ systemu,
C jest skończonym zbiorem znaków 0, 1, . . . , q − 1.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
5 / 26
Pozycyjne systemy liczbowe
Pozycyjnym systemem liczbowym nazywamy pare˛
(q, C)
gdzie
q >= 2 jest liczba˛ naturalna,
˛ nazywana˛ podstawa˛ systemu,
C jest skończonym zbiorem znaków 0, 1, . . . , q − 1.
W systemie pozycyjnym liczbe˛ przedstawia sie˛ jako ciag
˛ cyfr, przy
czym wartość tej liczby zależy zarówno od cyfr jak i miejsca, na
którym sie˛ one znajduje w tym ciagu.
˛
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
5 / 26
Pozycyjne systemy liczbowe
Pozycyjnym systemem liczbowym nazywamy pare˛
(q, C)
gdzie
q >= 2 jest liczba˛ naturalna,
˛ nazywana˛ podstawa˛ systemu,
C jest skończonym zbiorem znaków 0, 1, . . . , q − 1.
W systemie pozycyjnym liczbe˛ przedstawia sie˛ jako ciag
˛ cyfr, przy
czym wartość tej liczby zależy zarówno od cyfr jak i miejsca, na
którym sie˛ one znajduje w tym ciagu.
˛
Zapis ck ck −1 . . . c1 c0 ma wartość liczbowa˛
w = ck q k + ck −1 q k −1 + . . . + c1 q1 + c0 q0 ,
gdzie c0 , . . . , ck ∈ C.
Kolejne potegi
˛ podstawy systemu q nazywa sie˛ rz˛edami.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
5 / 26
Pozycyjne systemy liczbowe
Jeżli q = 10, to otrzymujemy dziesiatkowy
˛
system liczbowy, dla
q = 2 - dwójkowy (binarny), dla q = 8 - ósemkowy, itd.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
6 / 26
Pozycyjne systemy liczbowe
Jeżli q = 10, to otrzymujemy dziesiatkowy
˛
system liczbowy, dla
q = 2 - dwójkowy (binarny), dla q = 8 - ósemkowy, itd.
W przypadku posługiwania sie˛ na raz kilkoma systemami
liczbowymi, stosujemy zapis liczby z informacja˛ o podstawie
systemu w jakim została zapisana.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
6 / 26
Pozycyjne systemy liczbowe
Jeżli q = 10, to otrzymujemy dziesiatkowy
˛
system liczbowy, dla
q = 2 - dwójkowy (binarny), dla q = 8 - ósemkowy, itd.
W przypadku posługiwania sie˛ na raz kilkoma systemami
liczbowymi, stosujemy zapis liczby z informacja˛ o podstawie
systemu w jakim została zapisana.
Przykład:
10(10) - liczba o wartości 10 zapisana w systemie dziesietnym,
˛
10(2) - liczba o wartości ? dziesietnie
˛
zapisana w systemie
dwójkowym,
10(3) - liczba o wartości ? dziesietnie
˛
zapisana w systemie
trójkowym.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
6 / 26
Pozycyjny wagowy system liczbowy
System wagowy to taki, w którym dla każdej pozycji znaku
przypisana jest inna waga.
Ogólny zapis:
w=
n
X
ci q i
i=m
gdzie
c0 , . . . , ck ∈ C.
q ≥ 2, m ≤ 0, n ≥ 0 i m ≤ n
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
7 / 26
Pozycyjny wagowy system liczbowy
System dziesietny
˛
(decymalny), gdzie liczby zapisywane sa˛ za
pomoca˛ cyfr: 0, 1, . . . , 9; q = 10.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
8 / 26
Pozycyjny wagowy system liczbowy
System dziesietny
˛
(decymalny), gdzie liczby zapisywane sa˛ za
pomoca˛ cyfr: 0, 1, . . . , 9; q = 10.
Przykład:
127(10) = 7 · 100 + 2 · 101 + 1 · 102
775, 34(10) = 4 · 10−2 + 3 · 10−1 + 5 · 100 + 7 · 101 + 7 · 102
5703, 32(10) = 2 · 10−2 + 3 · 10−1 + 3 · 100 + 0 · 101 + 7 · 102 + 5 · 103
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
8 / 26
Pozycyjny wagowy system liczbowy
System dziesietny
˛
(decymalny), gdzie liczby zapisywane sa˛ za
pomoca˛ cyfr: 0, 1, . . . , 9; q = 10.
Przykład:
127(10) = 7 · 100 + 2 · 101 + 1 · 102
775, 34(10) = 4 · 10−2 + 3 · 10−1 + 5 · 100 + 7 · 101 + 7 · 102
5703, 32(10) = 2 · 10−2 + 3 · 10−1 + 3 · 100 + 0 · 101 + 7 · 102 + 5 · 103
System dwójkowy (binarny), gdzie liczby zapisywane sa˛ za
pomoca˛ dwóch cyfr: 0 i 1; q = 2.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
8 / 26
Pozycyjny wagowy system liczbowy
System dziesietny
˛
(decymalny), gdzie liczby zapisywane sa˛ za
pomoca˛ cyfr: 0, 1, . . . , 9; q = 10.
Przykład:
127(10) = 7 · 100 + 2 · 101 + 1 · 102
775, 34(10) = 4 · 10−2 + 3 · 10−1 + 5 · 100 + 7 · 101 + 7 · 102
5703, 32(10) = 2 · 10−2 + 3 · 10−1 + 3 · 100 + 0 · 101 + 7 · 102 + 5 · 103
System dwójkowy (binarny), gdzie liczby zapisywane sa˛ za
pomoca˛ dwóch cyfr: 0 i 1; q = 2.
System ósemkowy (oktalny), gdzie liczby zapisywane sa˛ za
pomoca˛ ośmiu cyfr: 0, 1, . . . , 7; q = 8.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
8 / 26
Pozycyjny wagowy system liczbowy
System dziesietny
˛
(decymalny), gdzie liczby zapisywane sa˛ za
pomoca˛ cyfr: 0, 1, . . . , 9; q = 10.
Przykład:
127(10) = 7 · 100 + 2 · 101 + 1 · 102
775, 34(10) = 4 · 10−2 + 3 · 10−1 + 5 · 100 + 7 · 101 + 7 · 102
5703, 32(10) = 2 · 10−2 + 3 · 10−1 + 3 · 100 + 0 · 101 + 7 · 102 + 5 · 103
System dwójkowy (binarny), gdzie liczby zapisywane sa˛ za
pomoca˛ dwóch cyfr: 0 i 1; q = 2.
System ósemkowy (oktalny), gdzie liczby zapisywane sa˛ za
pomoca˛ ośmiu cyfr: 0, 1, . . . , 7; q = 8.
System szesnastkowy (heksadecymalny), gdzie liczby zapisywane
sa˛ za pomoca˛ szesnastu cyfr: 0, 1, . . . , 9, A, B, C, D, E, F ; q = 16.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
8 / 26
Pozycyjny wagowy system liczbowy - zastosowania
System ósemkowy jest stosowany przykładowo w systemie Linux:
polecenie CHMOD ustawiajace
˛ prawa dostepu
˛
do pliku może
przyjać
˛ jako argument oktalna˛ reprezentacje˛ żadanych
˛
praw
dostepu
˛
(np: CHMOD U = RWX G = RX O = R PLIK odpowiada zapisowi
CHMOD 754 PLIK ).
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
9 / 26
Pozycyjny wagowy system liczbowy - zastosowania
System ósemkowy jest stosowany przykładowo w systemie Linux:
polecenie CHMOD ustawiajace
˛ prawa dostepu
˛
do pliku może
przyjać
˛ jako argument oktalna˛ reprezentacje˛ żadanych
˛
praw
dostepu
˛
(np: CHMOD U = RWX G = RX O = R PLIK odpowiada zapisowi
CHMOD 754 PLIK ).
W jezykach
˛
programowania C/C++/Java/PHP liczby oktalne
poprzedza sie˛ pojedynczym zerem (np. 0212).
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
9 / 26
Pozycyjny wagowy system liczbowy - zastosowania
System ósemkowy jest stosowany przykładowo w systemie Linux:
polecenie CHMOD ustawiajace
˛ prawa dostepu
˛
do pliku może
przyjać
˛ jako argument oktalna˛ reprezentacje˛ żadanych
˛
praw
dostepu
˛
(np: CHMOD U = RWX G = RX O = R PLIK odpowiada zapisowi
CHMOD 754 PLIK ).
W jezykach
˛
programowania C/C++/Java/PHP liczby oktalne
poprzedza sie˛ pojedynczym zerem (np. 0212).
W jezykach
˛
programowania C/C++/C#/Java/PHP liczby
szesnastkowe poprzedza sie˛ prefiksem 0x (zero oraz x) np.
0x102f.
W jezyku
˛
HTML - kolory RGB (Red - Czerwony, Green - Zielony,
Blue - Niebieski) zapisuje sie˛ jako 3 liczby szesnastkowe od 0 do
FF (255) poprzedzone znakiem #, np. czarny - #000000 i biały #FFFFFF.
Zapis ten dotyczy koloru 24-bitowego przypisywanego różnym
elementom graficznym dokumentu HTML.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
9 / 26
System binarny
Zamiana z systemu dwójkowego do systemu dziesietnego:
˛
1001(2) = 1·23 +0·22 +0·21 +1·20 = 1·8+0·4+0·2+1·1 = 9(10)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
10 / 26
System binarny
Zamiana z systemu dwójkowego do systemu dziesietnego:
˛
1001(2) = 1·23 +0·22 +0·21 +1·20 = 1·8+0·4+0·2+1·1 = 9(10)
Aby dana˛ liczbe˛ x w systemie dziesietnym
˛
zapisać w systemie
dwójkowym należy wykonać nastepuj
˛ acy
˛ algorytm:
1. Niech w = x
2. dzielimy w przez 2
3. jeśli wynikiem operacji dzielenia jest liczba całkowita, zapisujemy
na boku 0,
4. jeśli wynikiem operacji dzielenia nie jest liczba całkowita - zostaje
reszta, zapisujemy na boku 1,
5. całkowity wynik z dzielenia, po odrzuceniu ewentualnej reszty,
zapisujemy jako w ,
6. jeśli w! = 0 (jest różne), to przechodzimy z powrotem do kroku 2,
7. jeśli w = 0, to kończymy algorytm.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
10 / 26
Zamiana liczby dziesietnej
˛
na binarna˛ - przykład 2436
243610 = 1001100001002
2436
1218
609
304
152
76
38
19
9
4
2
1
:
:
:
:
:
:
:
:
:
:
:
:
2
2
2
2
2
2
2
2
2
2
2
2
=
=
=
=
=
=
=
=
=
=
=
=
1218
609
304
152
76
38
19
9
4
2
1
0
Bożena Woźna-Szcześniak (AJD)
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
0
0
1
0
0
0
0
1
1
0
0
1
^
|
|
|
|
|
|
|
|
|
|
|
Podstawy Informatyki
Wykład 2
11 / 26
Zamiana liczby dziesietnej
˛
na binarna˛ - przykład 753
75310 = 10111100012
753
376
188
94
47
23
11
5
2
1
:
:
:
:
:
:
:
:
:
:
2
2
2
2
2
2
2
2
2
2
=
=
=
=
=
=
=
=
=
=
376
188
94
47
23
11
5
2
1
0
Bożena Woźna-Szcześniak (AJD)
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
reszty
1
0
0
0
1
1
1
1
0
1
^
|
|
|
|
|
|
|
|
|
Podstawy Informatyki
Wykład 2
12 / 26
System binarny
Aby zamienić ułamek dziesietny
˛
x na dwójkowy należy wykonać
nastepuj
˛ ace
˛ kroki:
1
2
3
4
5
6
7
Niech w = x
mnożymy w przez 2,
jeśli wynikiem operacji mnożenia jest liczba wieksza
˛
od jedności,
zapisujemy na boku 1,
jeśli wynikiem operacji mnożenia jest liczba mniejsza od jedności,
zapisujemy na boku 0,
ułamkowa˛ cz˛eść wyniku, po odrzuceniu ewentualnej cz˛eści
całkowitej, zapisujemy jako w,
jeśli w! = 0, to przechodzimy z powrotem do kroku 2,
jeśli w = 0, to kończymy algorytm.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
13 / 26
Zamiana ułamka dziesietnego
˛
na binarny - przykład
0, 40625(10) = 0, 01101(2)
0, 40625
0, 8125
0, 625
0, 25
0, 5
0, 0
|
|
|
|
|
|
2 · 0, 40625
2 · 0, 8125
2 · 0, 625
2 · 0, 25
2 · 0, 5
koniec
Bożena Woźna-Szcześniak (AJD)
=
=
=
=
=
0, 8125
1, 625
1, 25
0, 5
1,0
Podstawy Informatyki
|
|
|
↓
Wykład 2
14 / 26
Zamiana ułamka dziesietnego
˛
na binarny - przykład
0, 40625(10) = 0, 01101(2)
0, 40625 | 2 · 0, 40625 = 0, 8125
0, 8125
|
2 · 0, 8125 = 1, 625
|
0, 625
|
2 · 0, 625 = 1, 25
|
Praca domowa:
0, 25
|
2 · 0, 25 = 0, 5
|
0, 5
|
2 · 0, 5 = 1,0
↓
0, 0
|
koniec
Zamienić poniższe ułamki dziesietne
˛
na ułamki binarne:
a. 0, 625( 10) = ?(2)
b. 9, 25( 10) = ?(2)
c. 15, 375( 10) = ?(2)
d. 0, 3( 10) = ?(2)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
14 / 26
System binarny - zwiekszanie
˛
liczby o jeden
Aby zwiekszyć
˛
o jeden liczbe˛ dwójkowa˛ należy:
1
Wskazujemy ostatni bit,
2
jeśli wskazany bit jest zerem, to ustawiamy go na jeden i
kończymy algorytm,
3
jeśli wskazany bit jest jedynka,
˛ to zmieniamy go na zero i
przesuwamy sie˛ o jeden bit w lewo,
4
jeżeli nie jest to pierwszy bit liczby,to przechodzimy z powrotem do
kroku 2,
5
jeżeli jest to pierwszy bit liczby to stawiamy jedynk˛e na poczatku
˛
i
kończymy algorytm.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
15 / 26
System binarny - zwiekszanie
˛
liczby o jeden
Aby zwiekszyć
˛
o jeden liczbe˛ dwójkowa˛ należy:
1
Wskazujemy ostatni bit,
2
jeśli wskazany bit jest zerem, to ustawiamy go na jeden i
kończymy algorytm,
3
jeśli wskazany bit jest jedynka,
˛ to zmieniamy go na zero i
przesuwamy sie˛ o jeden bit w lewo,
4
jeżeli nie jest to pierwszy bit liczby,to przechodzimy z powrotem do
kroku 2,
5
jeżeli jest to pierwszy bit liczby to stawiamy jedynk˛e na poczatku
˛
i
kończymy algorytm.
Przykład:
Zwiekszamy
˛
liczbe˛ 100101(2) o 1: 100110(2) .
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
15 / 26
System binarny - zwiekszanie
˛
liczby o jeden
Aby zwiekszyć
˛
o jeden liczbe˛ dwójkowa˛ należy:
1
Wskazujemy ostatni bit,
2
jeśli wskazany bit jest zerem, to ustawiamy go na jeden i
kończymy algorytm,
3
jeśli wskazany bit jest jedynka,
˛ to zmieniamy go na zero i
przesuwamy sie˛ o jeden bit w lewo,
4
jeżeli nie jest to pierwszy bit liczby,to przechodzimy z powrotem do
kroku 2,
5
jeżeli jest to pierwszy bit liczby to stawiamy jedynk˛e na poczatku
˛
i
kończymy algorytm.
Przykład:
Zwiekszamy
˛
liczbe˛ 100101(2) o 1: 100110(2) .
Zwiekszamy
˛
liczbe˛ 111(2) o 1: 1000(2) .
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
15 / 26
System binarny - porównywanie liczb
Porównujac
˛ dwie liczby binarne stwierdzamy, że:
1
liczby sa˛ równe, gdy maja˛ te same bity;
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
16 / 26
System binarny - porównywanie liczb
Porównujac
˛ dwie liczby binarne stwierdzamy, że:
1
liczby sa˛ równe, gdy maja˛ te same bity;
2
jedna z liczb jest wieksza,
˛
gdy ma wiecej
˛
bitów (bez zer na
poczatku)
˛
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
16 / 26
System binarny - porównywanie liczb
Porównujac
˛ dwie liczby binarne stwierdzamy, że:
1
liczby sa˛ równe, gdy maja˛ te same bity;
2
jedna z liczb jest wieksza,
˛
gdy ma wiecej
˛
bitów (bez zer na
poczatku)
˛
3
jedna z liczb jest wieksza,
˛
gdy idac
˛ od lewej do prawej na
rozważanej pozycji jeden z porównywanych bitów jest wiekszy.
˛
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
16 / 26
System binarny - porównywanie liczb
Porównujac
˛ dwie liczby binarne stwierdzamy, że:
1
liczby sa˛ równe, gdy maja˛ te same bity;
2
jedna z liczb jest wieksza,
˛
gdy ma wiecej
˛
bitów (bez zer na
poczatku)
˛
3
jedna z liczb jest wieksza,
˛
gdy idac
˛ od lewej do prawej na
rozważanej pozycji jeden z porównywanych bitów jest wiekszy.
˛
Przykład:
100101(2) < 100110(2)
11100(2) > 1000(2)
1001(2) = 1001(2)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
16 / 26
System binarny - porównywanie liczb
1
101 1 010 ? 101 0 101
2
111 1 000 ? 111 0 111
3
1 0000 ? 1111
4
1100 ? 1100
5
11 11 00 ? 10 11 00
6
10 10 10 ? 10 10 10
7
10 01 11 ? 11 10 00
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
17 / 26
System binarny - operacje arytmetyczne
Dodawanie:
1
+
1
1
0
1
1
0
1
0
1
1
0
0
1
0
1
0
Bożena Woźna-Szcześniak (AJD)
1
1
0
0
1
1
0
Podstawy Informatyki
Wykład 2
18 / 26
System binarny - operacje arytmetyczne
Dodawanie:
1
+
1
1
0
1
1
0
1
0
1
1
0
0
Dodawanie:
1
0
1
0
Bożena Woźna-Szcześniak (AJD)
1
1
0
0
1
1
0
1
+
1
Podstawy Informatyki
1
0
1
1
1
1
1
1
0
1
0
1
1
0
Wykład 2
18 / 26
System binarny - operacje arytmetyczne
Odejmowanie:
0
1
-
1
2
0
1
2
0
1
1
1
2
0
1
1
1
0
1
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
19 / 26
System binarny - operacje arytmetyczne
Odejmowanie:
0
1
-
1
2
0
1
2
0
1
1
1
2
0
1
1
Odejmowanie:
1
0
1
Bożena Woźna-Szcześniak (AJD)
1
1
Podstawy Informatyki
0
1
0
1
0
1
0
2
0
1
1
1
0
1
1
1
0
Wykład 2
19 / 26
System binarny - operacje arytmetyczne
Mnożenie
0
0 0
+ 1 1 0
1 1 1
1 1
1
1 1
0 0
0 0
1 1
1 0
1 1
1
1 1
+ 1 1 0 1 1
1 1 1 1 0
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
0
0
0
0
0
1 1
0 1
1 1
0
0 1 1
0 1 1
0 0 1
0 1 1
0 1 1
Wykład 2
20 / 26
System binarny
Mnożenie przez 2 odbywa sie˛ poprzez przesuniecie
˛
wszystkich
bitów o jedna˛ pozycje˛ w lewo.
Dzielenie całkowite przez 2 odbywa sie˛ poprzez przesuniecie
˛
wszystkich bitów o jedna˛ pozycje˛ w prawo. UWAGA: bit najmniej
znaczacy
˛ (tzw. najmłodszy) jest tracony.
Ogólnie: Mnożenie i dzielenie całkowite przez poteg
˛ e˛ dwójki
odbywa sie˛ poprzez przesuniecie
˛
wszystkich bitów w lewo lub w
prawo o liczbe˛ miejsc równa˛ wartości wykładnika tej potegi.
˛
Przykład: mnożenie przez 16 odbywa sie˛ przez przesuniecie
˛
wszystkich bitów o 4 pozycje w lewo.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
21 / 26
Zamiana liczb dziesietnych
˛
na binarne – sposób 2
Przedstaw liczbe˛ dziesietn
˛ a˛ w postaci wagowego systemu
pozycyjnego, tj.
53(10) = 5 · 101 + 3 · 100 .
Zamień każda˛ cyfre˛ dziesietn
˛ a˛ na odpowiedni ciag
˛ bitów
53(10) = 101(2) · 1010(2) + 11(2) · 1(2) .
Wykonaj działania (mnożenie i dodawanie)
53(10) = 110010(2) + 11(2) = 110101(2) .
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
22 / 26
Zamiana liczb dziesietnych
˛
na binarne – sposób 2
Przedstaw liczbe˛ dziesietn
˛ a˛ w postaci wagowego systemu
pozycyjnego, tj.
137(10) = 1 · 102 + 3 · 101 + 7 · 100 .
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
23 / 26
Zamiana liczb dziesietnych
˛
na binarne – sposób 2
Przedstaw liczbe˛ dziesietn
˛ a˛ w postaci wagowego systemu
pozycyjnego, tj.
137(10) = 1 · 102 + 3 · 101 + 7 · 100 .
Zamień każda˛ cyfre˛ dziesietn
˛ a˛ na odpowiedni ciag
˛ bitów
137(10) = 1(2) · 1100100(2) + 11(2) · 1010(2) + 111(2) · 1(2) .
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
23 / 26
Zamiana liczb dziesietnych
˛
na binarne – sposób 2
Przedstaw liczbe˛ dziesietn
˛ a˛ w postaci wagowego systemu
pozycyjnego, tj.
137(10) = 1 · 102 + 3 · 101 + 7 · 100 .
Zamień każda˛ cyfre˛ dziesietn
˛ a˛ na odpowiedni ciag
˛ bitów
137(10) = 1(2) · 1100100(2) + 11(2) · 1010(2) + 111(2) · 1(2) .
Wykonaj działania (mnożenie i dodawanie)
137(10) = 1100100(2) + 11110(2) + 111(2) = 10001001(2) .
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
23 / 26
System ósemkowy a system binarny
101110001(2) = 369(10)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
24 / 26
System ósemkowy a system binarny
101110001(2) = 369(10)
101 | |{z}
110 | |{z}
001 = 561(8)
|{z}
5(8)
6(8)
1(8)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
24 / 26
System ósemkowy a system binarny
101110001(2) = 369(10)
101 | |{z}
110 | |{z}
001 = 561(8)
|{z}
5(8)
6(8)
1(8)
101 | |{z}
111 | |{z}
011 | |{z}
010 = 5732(8)
|{z}
5(8)
7(8)
3(8)
Bożena Woźna-Szcześniak (AJD)
2(8)
Podstawy Informatyki
Wykład 2
24 / 26
System ósemkowy a system binarny
101110001(2) = 369(10)
101 | |{z}
110 | |{z}
001 = 561(8)
|{z}
5(8)
6(8)
1(8)
101 | |{z}
111 | |{z}
011 | |{z}
010 = 5732(8)
|{z}
5(8)
7(8)
3(8)
2(8)
System oktalny skraca zapis liczby binarnej trzykrotnie.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
24 / 26
System szesnastkowy a system binarny
0001
| {z } | 0111
| {z } | 0001
| {z } = 171(16)
1(16)
7(16)
1(16)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
25 / 26
System szesnastkowy a system binarny
0001
| {z } | 0111
| {z } | 0001
| {z } = 171(16)
1(16)
7(16)
1(16)
1011
| {z } | 1101
| {z } | 1010
| {z } = BDA(16)
B(16)
D(16)
A(16)
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
25 / 26
System szesnastkowy a system binarny
0001
| {z } | 0111
| {z } | 0001
| {z } = 171(16)
1(16)
7(16)
1(16)
1011
| {z } | 1101
| {z } | 1010
| {z } = BDA(16)
B(16)
D(16)
A(16)
System heksadecymalny skraca zapis liczby binarnej
czterokrotnie.
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
25 / 26
Arytmetyka szesnastkowa
Dodawanie metoda˛ pośrednia:
˛
A5E =⇒ 10 ∗ 256 + 5 ∗ 16 + 14 =⇒ 2654
+ FF =⇒
15 ∗ 16 + 15 =⇒ + 255
B5D ⇐= 11 ∗ 256 + 5 ∗ 16 + 13 ⇐= 2909
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
26 / 26
Arytmetyka szesnastkowa
Dodawanie metoda˛ pośrednia:
˛
A5E =⇒ 10 ∗ 256 + 5 ∗ 16 + 14 =⇒ 2654
+ FF =⇒
15 ∗ 16 + 15 =⇒ + 255
B5D ⇐= 11 ∗ 256 + 5 ∗ 16 + 13 ⇐= 2909
Dodawanie w systemie szesnastkowym:
1
A
1
5 E
+
F F
B 5 D
Bożena Woźna-Szcześniak (AJD)
Podstawy Informatyki
Wykład 2
26 / 26