System ósemkowy i
szesnastkowy
M@rek Pudełko
Urządzenia Techniki
Komputerowej
1
Spis treści
• System ósemkowy
• System szesnastkowy
2
SYSTEM ÓSEMKOWY
3
System ósemkowy
• Ósemkowy system zapisu posiada 8
cyfr do zapisu liczb:
• 0, 1, 2, 3, 4, 5, 6, 7
• Kiedy cyfra ma być większa niż 7
zmieniamy wartość tej i następnej
pozycji.
7
+
1
1
0
4
Oktalny system zapisu
• Liczba w systemie ósemkowym ma
postać:
c
i
... c
1
c
0
gdzie c
i
= 0 ..7
• 164516051372501
5
Przeliczanie z dziesiętnego na
ósemkowy
• Liczbę binarną z dziesiętnej obliczamy wg
schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
77
:8
6
Przeliczanie z dziesiętnego na
ósemkowy
• Liczbę binarną z dziesiętnej obliczamy wg
schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
77
:8
5
9
7
Przeliczanie z dziesiętnego na
ósemkowy
• Liczbę binarną z dziesiętnej obliczamy wg
schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
77
:8
5
9
:8
1
1
8
Przeliczanie z dziesiętnego na
ósemkowy
• Liczbę binarną z dziesiętnej obliczamy wg
schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
77
:8
5
9
:8
1
1
:8
1
0
STOP
9
Przeliczanie z dziesiętnego na
ósemkowy
• Liczbę binarną z dziesiętnej obliczamy wg
schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
77
:8
5
9
:8
1
1
:8
1
0
77
10
=115
8
10
Przeliczanie - ćwiczenia
1) 45
2) 72
3) 81
4) 77
5) 19
6) 86
7) 26
8) 37
9) 88
10)54
11)59
12)28
13)65
14)93
15)91
16)41
17)97
18)68
19)39
20)24
21)29
22)58
23)85
24)73
25)69
26)46
27)72
28)71
29)64
30)32
11
Przeliczanie z ósemkowego na
dziesiętny
• Każdą liczbę dziesiętną możemy
przedstawić jako sumę liczb oktalnych.
• Liczbę dziesiętną z oktalnej obliczamy
ze wzoru:
• n= c
i
*8
i
+ ... + c
1
*8
1
+ c
0
*8
0
n=
c
i
*
8
i
+ ... +
c
1
*8
1
+ c
0
*8
0
Wartość
pozycji
Waga
pozycji
12
1
2
7
2
1
0
wa
ga
• Jaka liczbą dziesiętną jest 127
ósemkowe?
Przeliczanie z ósemkowego na
dziesiętny
13
1
2
7
2
1
0
wa
ga
1*
8
2
+
2*
8
1
+
7*
8
0
• Jaka liczbą dziesiętną jest 127
ósemkowe?
Przeliczanie z ósemkowego na
dziesiętny
14
1
2
7
2
1
0
wa
ga
1*
8
2
+
2*
8
1
+
7*
8
0
1 *
64
+
2 *
8
+
7 *
1
• Jaka liczbą dziesiętną jest 127
ósemkowe?
Przeliczanie z ósemkowego na
dziesiętny
15
1
2
7
2
1
0
wa
ga
1*
8
2
+
2*
8
1
+
7*
8
0
1 *
64
+
2 *
8
+
7 *
1
64+
16 +
7
=
87
• Jaka liczbą dziesiętną jest 127
ósemkowe?
Przeliczanie z ósemkowego na
dziesiętny
16
1
2
7
2
1
0
wa
ga
1*
8
2
+
2*
8
1
+
7*
8
0
1 *
64
+
2 *
8
+
7 *
1
64+
16 +
7
=
87
127
8
= 87
10
• Jaka liczbą dziesiętną jest 127
ósemkowe?
Przeliczanie z ósemkowego na
dziesiętny
17
Przeliczanie - ćwiczenia
1) 145
2) 172
3) 161
4) 177
5) 219
6) 251
7) 126
8) 137
9) 166
10)154
11)159
12)225
13)615
14)113
15)211
16)141
17)217
18)161
19)311
20)124
21)219
22)156
23)335
24)173
25)151
26)416
27)721
28)471
29)614
30)321
18
Porównanie liczb systemów
2,8,10
System
dziesiętny
System
binarny
System
ósemkowy
0
000
0
1
001
1
2
010
2
3
011
3
4
100
4
5
101
5
6
110
6
7
111
7
8
1000
10
9
1001
11
10
1010
12
11
1011
13
12
1100
14
13
1101
15
14
1110
16
15
1111
17
19
Przeliczanie systemu
ósemkowego na binarny
• Liczbę ósemkową rozdzielamy na
poszczególne cyfry.
20
127
8
1
2
7
Przeliczanie systemu
ósemkowego na binarny
• Każdą z nich zamieniamy oddzielnie
na postać binarną.
21
127
8
1
2
7
001
010
111
Przeliczanie systemu
ósemkowego na binarny
• Uzyskane liczby binarne scalamy w
jedną. Zera z przodu usuwamy.
22
127
8
1
2
7
001
010
111
1 010 111
127
8
=
1010111
2
Zamiana liczby binarnej na
oktalną
• Liczbę binarną rozdzielamy na trójki
cyfr (zaczynając od strony prawej).
• Jeśli pierwsza grupa ma mniej cyfr
uzupełniamy je z przodu zerami.
23
10101001
2
10
101
001
010
101
001
Zamiana liczby binarnej na
oktalną
• Następnie każdą z grup zamieniamy
oddzielnie na liczbę ósemkową.
24
10101001
2
010
101
001
2
5
1
Zamiana liczby binarnej na
oktalną
• Uzyskane cyfry scalamy w jedną liczbę
ósemkową.
25
10101001
2
010
101
001
2
5
1
251
8
10101001
2
=2
51
8
Przeliczanie - ćwiczenia
1)
10101010
2)
10010101
3)
10101110
4)
11010100
5)
10000111
6)
10001111
7)
10111100
8)
10011101
9)
10011100
10)
10011001
11)1011101
0
12)1111111
0
13)1000000
1
14)1100110
0
15)1010111
1
16)1011111
1
17)1100000
0
18)1111000
0
19)1000111
0
20)1001010
0
21)11111111
22)11010101
23)10001100
24)10100000
25)10001000
26)10010001
27)10100010
28)11100011
29)10011001
30)11111100
26
SYSTEM SZESNASTKOWY
27
System szesnastkowy
• Szesnastkowy system zapisu posiada
16 cyfr do zapisu liczb:
• 0, 1, 2, 3, 4, 5, 6, 7,8, 9, A, B, C, D,
E, F
• Kiedy cyfra ma być większa niż 15
zmieniamy wartość tej i następnej
pozycji.
F
+
1
1
0
28
Porównanie liczb systemów 2,8,10,16
System
dziesiętny
System
szesnastkowy
System
binarny
System
ósemkowy
0
0
0000
00
1
1
0001
01
2
2
0010
02
3
3
0011
03
4
4
0100
04
5
5
0101
05
6
6
0110
06
7
7
0111
07
8
8
1000
10
9
9
1001
11
10
A
1010
12
11
B
1011
13
12
C
1100
14
13
D
1101
15
14
E
1110
16
15
F
1111
17
29
Heksadecymalny system
zapisu
• Liczba w systemie szesnastkowym
ma postać:
c
i
... c
1
c
0
gdzie c
i
= 0 ..F
• 1645, A605, 1F, 72, E01
• Liczbom od 10 do 15 odpowiadają
litery od A do F.
30
Przeliczanie z dziesiętnego na
szesnastkowy
• Liczbę szesnastkową z dziesiętnej
obliczamy wg schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
134
:16
31
Przeliczanie z dziesiętnego na
szesnastkowy
• Liczbę szesnastkową z dziesiętnej
obliczamy wg schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
134
:16
6
8
32
Przeliczanie z dziesiętnego na
szesnastkowy
• Liczbę szesnastkową z dziesiętnej
obliczamy wg schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
134
:16
6
8
:16
8
0
STOP
33
Przeliczanie z dziesiętnego na
szesnastkowy
• Liczbę szesnastkową z dziesiętnej
obliczamy wg schematu:
Dziel
na
Dzieln
ik
Reszta z
dzielenia
134
:16
6
8
:16
8
0
STOP
34
134
10
= 86
16
Przeliczanie - ćwiczenia
1) 145
2) 172
3) 181
4) 177
5) 119
6) 181
7) 126
8) 137
9) 188
10)154
11)159
12)128
13)165
14)193
15)191
16)141
17)197
18)168
19)139
20)124
21)129
22)158
23)185
24)173
25)169
26)146
27)172
28)171
29)164
30)132
35
Przeliczanie z szesnastkowego
na dziesiętny
• Każdą liczbę dziesiętną możemy
przedstawić jako sumę liczb
heksadecymalnych.
• Liczbę dziesiętną z heksadecymalnej
obliczamy ze wzoru:
• n= c
i
*16
i
+ ... + c
1
*16
1
+ c
0
*16
0
n=
c
i
*
16
i
+ ... +
c
1
*16
1
+ c
0
*16
0
Wartość
pozycji
Waga
pozycji
36
F
5
A
2
1
0
waga
• Jaką liczbą dziesiętną jest
szesnastkowe F5A?
Przeliczanie z szesnastkowego
na dziesiętny
37
F
5
A
2
1
0
waga
F*
16
2
+
5*
16
1
+
A*
16
0
• Wyliczamy poszczególne liczby, jako
iloczyn cyfry i odpowiedniej potęgi 16.
Przeliczanie z szesnastkowego
na dziesiętny
38
F
5
A
2
1
0
waga
F*
16
2
+
5*
16
1
+
A*
16
0
15*
16
2
+
5*
16
1
+
10*
16
0
• Zamieniamy liczby z systemu
szesnastkowego na ich postać
dziesiętną,
Przeliczanie z szesnastkowego
na dziesiętny
39
F
5
A
2
1
0
waga
F*
16
2
+
5*
16
1
+
A*
16
0
15*
16
2
+
5*
16
1
+
10*
16
0
15 *
256
+
5 *
16
+
10 *
1
• Zamieniamy potęgi 16 na liczbę
dziesiętną,
Przeliczanie z szesnastkowego
na dziesiętny
40
F
5
A
2
1
0
waga
F*
16
2
+
5*
16
1
+
A*
16
0
15*
16
2
+
5*
16
1
+
10*
16
0
15 *
256
+
5 *
16
+
10 *
1
3840+
80+
10 =3930
• Uzyskane sumy cząstkowe dodajemy
do siebie.
Przeliczanie z szesnastkowego
na dziesiętny
41
F
5
A
2
1
0
waga
F*
16
2
+
5*
16
1
+
A*
16
0
15*
16
2
+
5*
16
1
+
10*
16
0
15 *
256
+
5 *
8
+
10 *
1
3840+
80+
10 =3930
• Jaka liczbą dziesiętną jest F5A
szesnastkowe ?
Przeliczanie z szesnastkowego
na dziesiętny
42
F5A
16
=
3930
10
Przeliczanie - ćwiczenia
1) 245
2) 172
3) 181
4) 177
5) 219
6) 201
7) 126
8) 137
9) 188
10)254
11)159
12)228
13)165
14)193
15)191
16)241
17)197
18)168
19)239
20)224
21)229
22)158
23)185
24)173
25)169
26)246
27)172
28)171
29)164
30)232
43
Przeliczanie systemu
szesnastkowego na binarny
• Liczbę szesnastkową rozdzielamy na
poszczególne cyfry.
44
5FA
16
5
F
A
Przeliczanie systemu
szesnastkowego na binarny
• Każdą z nich zamieniamy oddzielnie
na postać binarną.
45
5FA
16
5
F
A
0101 1111 1010
Przeliczanie systemu
szesnastkowego na binarny
• Uzyskane liczby binarne scalamy w
jedną. Zera z przodu usuwamy.
46
5FA
16
5
F
A
0101 1111 1010
101 1111 1010
5FA
16
=
10111111010
2
Zamiana liczby binarnej na
szesnastkową
• Liczbę binarną rozdzielamy na czwórki
cyfr (zaczynając od strony prawej).
• Jeśli pierwsza grupa ma mniej cyfr
uzupełniamy je z przodu zerami.
47
101011101
2
1 0101 1101
0001 0101 1101
Zamiana liczby binarnej na
szesnastkową
• Następnie każdą z grup zamieniamy
oddzielnie na liczbę szesnastkową.
48
101011101
2
0001 0101 1101
1
5
D
Zamiana liczby binarnej na
szesnastkową
• Uzyskane cyfry scalamy w jedną liczbę
szesnastkową.
49
101011101
2
0001 0101 1101
1
5
D
15D
16
101011101
2
=
15D
16
Przeliczanie - ćwiczenia
1)
10101010
2)
10010101
3)
10101110
4)
11010100
5)
10000111
6)
10001111
7)
10111100
8)
10011101
9)
10011100
10)
10011001
11)1011101
0
12)1111111
0
13)1000000
1
14)1100110
0
15)1010111
1
16)1011111
1
17)1100000
0
18)1111000
0
19)1000111
0
20)1001010
0
21)11111111
22)11010101
23)10001100
24)10100000
25)10001000
26)10010001
27)10100010
28)11100011
29)10011001
30)11111100
50
Przeliczanie z ósemkowego
na szesnastkowy i odwrotnie
• Nie ma prostego algorytmu na takie
przekształcenie.
• Można zastosować przeliczenie na
postać binarną jako pośrednią.
51
Przeliczanie z ósemkowego
na szesnastkowy
52
1375
8
1
3
7
5
001
011
111
101
1011111101
2
0010
1111
1101
2
F
D
2FD
16
• Liczbę ósemkową zamieniamy na trójki binarne.
• Scalamy je w jedną liczbę binarną.
• Tę liczbę zamieniamy na czwórki binarne z których
uzyskujemy liczbę szesnastkową.
Przeliczanie z
szesnastkowego na
ósemkowy
53
2FD
16
2
F
D
0010
1111
1101
1011111101
2
001
011
111
101
1
3
7
5
1375
8
• Liczbę szesnastkową zamieniamy na czwórki
binarne.
• Scalamy je w jedną liczbę binarną.
• Tę liczbę zamieniamy na trójki binarne z których
uzyskujemy liczbę ósemkową.