reprezentacja liczb w systemie binarnym ułamki i liczby ujemne
DESCRIPTION
Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne. M@rek Pudełko Urządzenia Techniki Komputerowej. Spis treści. System zapisu znak – moduł System zapisu U1 System zapisu U2 Ułamki w systemie binarnym. System zapisu znak-moduł. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/1.jpg)
Reprezentacja liczb w systemie binarnym
ułamki i liczby ujemne
M@rek PudełkoUrządzenia Techniki Komputerowej
![Page 2: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/2.jpg)
Spis treści
• System zapisu znak – moduł• System zapisu U1• System zapisu U2
• Ułamki w systemie binarnym
2
![Page 3: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/3.jpg)
System zapisu znak-moduł
• W tym systemie najstarszy bit (z lewej strony) informuje o znaku liczby.• 0 liczba dodatnia• 1 liczba ujemna
• Pozostałe bity mają takie samo znaczenie i reprezentują wartość liczby.
3
![Page 4: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/4.jpg)
System zapisu znak-moduł• 10112 = 1110
• -1110 11011zm
• +1110 01011zm
• Liczbę w tym systemie oznaczamy sygnaturką zm (znak-moduł) lub sm (sign – magnitude)
• Spotyka się jeszcze inny sposób zapisu przez oddzielenie znaku od modułu wykrzyknikiem• -1110 1!1011zm
• +1110 0!1011zm4
![Page 5: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/5.jpg)
Przykład zapisu systemu znak-moduł
5
Liczba ZM wartość Liczba ZM wartość
0000 0 1000 -0
0001 1 1001 -1
0010 2 1010 -2
0011 3 1011 -3
0100 4 1100 -4
0101 5 1101 -5
0110 6 1110 -6
0111 7 1111 -7
• Dla 4 bitów najwyższy bit informuje o znaku, a pozostałe 3 to wartość liczby.
• Zwraca uwagę podwójna reprezentacja zera jako 0000 i 1000.
![Page 6: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/6.jpg)
System zapisu U1 (uzupełnienie do 1)
• W tym systemie najstarszy bit (z lewej strony) informuje o znaku liczby.• 0 liczba dodatnia• 1 liczba ujemna
• Liczby ujemne tworzy się negując odpowiadającą jej liczbę dodatnią.
6
![Page 7: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/7.jpg)
System zapisu U1• 10112 = 1110
• +1110 01011u1
• Wartość liczby dodatniej jest analogiczna jak dla naturalnego kodu binarnego.• -1110 10100u1
• Liczbę ujemna uzyskujemy negując (0 → 1 i 1→0) poszczególne cyfry liczby dodatniej.
• Liczbę w tym systemie oznaczamy sygnaturką U17
![Page 8: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/8.jpg)
Liczba ujemna w systemie zapisu U1
8
• Chcąc uzyskać liczbę ujemną, należy najpierw utworzyć odpowiadającą jej liczbę dodatnią.• +1910 010011U1
• Następnie negujemy ją zmieniając 0 w 1, a 1 w 0.• -1910 101100U1
![Page 9: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/9.jpg)
Przykład zapisu systemu U1
9
Liczba U1 wartość Liczba U1 wartość
0000 0 1000 -7
0001 1 1001 -6
0010 2 1010 -5
0011 3 1011 -4
0100 4 1100 -3
0101 5 1101 -2
0110 6 1110 -1
0111 7 1111 -0
• Dla 4 bitów najwyższy bit informuje o znaku, a pozostałe 3 to wartość liczby.
• Zwraca uwagę podwójna reprezentacja zera jako ciąg samych zer lub samych jedynek.
![Page 10: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/10.jpg)
System zapisu U2 (uzupełnienie do 2)
• W tym systemie najstarszy bit (z lewej strony) informuje o znaku liczby.• 0 liczba dodatnia• 1 liczba ujemna
• Liczby ujemne tworzy się negując odpowiadającą jej liczbę dodatnią i zwiększając ją o 1.
10
![Page 11: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/11.jpg)
System zapisu U2• 10112 = 1110
• +1110 01011U2
• Wartość liczby dodatniej jest analogiczna jak dla naturalnego kodu binarnego.• -1110 10101U2
• Liczbę ujemną uzyskujemy negując (0 → 1 i 1→0) cyfry liczby dodatniej i zwiększając ją o 1.
• Liczbę w tym systemie oznaczamy sygnaturką U211
![Page 12: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/12.jpg)
Liczba ujemna w systemie zapisu U2
12
• Chcąc uzyskać liczbę ujemną, należy najpierw utworzyć jej dopowiadającą liczbę dodatnią.• +1910 0100112
• Następnie negujemy ją zmieniając 0 w 1, a 1 w 0.• -1910 101100U1
• Na końcu dodajemy do wyniku 1.• -1910 101101U2
![Page 13: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/13.jpg)
Obliczanie liczby ujemnej w systemie zapisu U2
13
• Najwyższa cyfra w liczbie z systemu U2 ma znak -, a pozostałe plus. Zamiana na system dziesiętny polega na dodaniu pozostałych pozycji i odjęciu ich od największej wagi.• 101101 U2 = -19
Waga 5 4 3 2 1 0
Cyfra 1 0 1 1 0 1
Znak cyfry - +
-1*25 0*24 1*23 1*22 0*21 1*20
-1 * 32 0 * 16 1*8 1*4 0*2 1*1
-32 + 0 + 8 + 4+ 0 + 1
-32 + 13 =
= -19
![Page 14: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/14.jpg)
Przykład zapisu systemu U2
14
Liczba U2 wartość Liczba U2 wartość
0000 0 1000 -8
0001 1 1001 -7
0010 2 1010 -6
0011 3 1011 -5
0100 4 1100 -4
0101 5 1101 -3
0110 6 1110 -2
0111 7 1111 -1
• Dla 4 bitów najwyższy bit informuje o znaku, a pozostałe 3 to wartość liczby.
• Zwraca uwagę pojedyncza reprezentacja zera.
![Page 15: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/15.jpg)
Zero w systemach zapisu
15
Liczba ZM Zero dodatnie Zero ujemne
Znak-moduł 0000 1000
U1 0000 1111
U2 0000
• Kody Z-M i U1 są kodami symetrycznymi. Stąd pojawiają się dwie postacie zera. Stanowi to kłopot przy reprezentacji liczb w informatyce.
• Zero nie jest ani dodatnie, ani ujemne. W powyższych systemach ma ono albo obie postacie (Z-M, U1) albo jest traktowane jako liczba dodatnia (U2).
• Kod U2 jest kodem niesymetrycznym.
![Page 16: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/16.jpg)
Porównanie zapisu w systemachZ-M, U1, U2
16
Liczba System Znak-Moduł System U1 System U2
Liczba parzysta+22 010110ZM 010110U1 010110U2
-22 110110ZM 101001U1 101010U2
Liczba nieparzysta+25 011001ZM 011001U1 011001U2
-25 111001ZM 100110U1 100111U2
![Page 17: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/17.jpg)
Ćwiczenia
17
• Przelicz następujące liczby dziesiętne na system zapisu Znak-Moduł, U1, U2.
1. -172. -223. -324. -115. -596. -437. -948. -199. -2510. -74
11. -7312. -6213. -3814. -9115. -6616. -7717. -4218. -3919. -1520. -14
21. -3122. -2123. -7924. -2325. -1426. -8927. -3528. -2729. -3630. -55
![Page 18: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/18.jpg)
Zadania1. Jaka to liczba w systemie U-1?
a) 1111u1
b) 111111u1
c) 11111111u1
2. Porównaj sposób liczby zapisane w systemie U-2?a) -16 i +16b) -32 i +32c) -64 i +64d) -128 i +128
3. s
18
![Page 19: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/19.jpg)
Ułamki w systemie binarnym
• W systemie binarnym ułamki zapisujemy analogicznie jak liczby rzeczywiste.
• Do przedstawienia liczb po przecinku używamy potęg ujemnych.
19
![Page 20: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/20.jpg)
Przeliczanie z dziesiętnego na binarny• Ułamek dziesiętny obliczamy wg schematu:
0,62510=Mnożna Mnożnik Wynik Część całkowita
0,625 *2
20
![Page 21: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/21.jpg)
Przeliczanie z dziesiętnego na binarny• Ułamek dziesiętny obliczamy wg schematu:
0,62510=Mnożna Mnożnik Wynik Część całkowita
0,625 *2 1,25
21
![Page 22: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/22.jpg)
Przeliczanie z dziesiętnego na binarny• Ułamek dziesiętny obliczamy wg schematu:
0,62510=Mnożna Mnożnik Wynik Część całkowita
0,625 *2 1,25 1
0,25 *2
22
![Page 23: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/23.jpg)
Przeliczanie z dziesiętnego na binarny• Ułamek dziesiętny obliczamy wg schematu:
0,62510=Mnożna Mnożnik Wynik Część całkowita
0,625 *2 1,25 1
0,25 *2 0,5 0
0,5
23
![Page 24: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/24.jpg)
Przeliczanie z dziesiętnego na binarny• Ułamek dziesiętny obliczamy wg schematu:
0,62510=Mnożna Mnożnik Wynik Część całkowita
0,625 *2 1,25 1
0,25 *2 0,5 0
0,5 *2 1 1
0
24
![Page 25: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/25.jpg)
Przeliczanie z dziesiętnego na binarny• Ułamek dziesiętny obliczamy wg schematu:
0,62510=Mnożna Mnożnik Wynik Część całkowita
0,625 *2 1,25 1
0,25 *2 0,5 0
0,5 *2 1 1
0
25
0,62510=0,1012
![Page 26: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/26.jpg)
Przeliczanie z dziesiętnego na binarny• Ułamek dziesiętny obliczamy wg schematu:
0,62510=Mnożna Mnożnik Wynik Część całkowita
0,625 *2 1,25 1
0,25 *2 0,5 0
0,5 *2 1 1
0
26
0,62510=0,1012
![Page 27: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/27.jpg)
Przeliczanie z binarnego na dziesiętny
• Każdy ułamek dziesiętny możemy przedstawić jako sumę liczb binarnych o ujemnych potęgach.
• Ułamek dziesiętny z binarnego obliczamy ze wzoru:
• n= c0*20 +c1*2-1 + c2*2-2 + ... + ci*2-i
n= ci*2i
Wartość pozycji Waga pozycji27
![Page 28: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/28.jpg)
Przeliczanie z binarnego na dziesiętny
• Jakim ułamkiem dziesiętnym jest 0,101 binarne?
0, 1 0 10 -1 -2 -3 Waga
28
![Page 29: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/29.jpg)
Przeliczanie z binarnego na dziesiętny
• Jakim ułamkiem dziesiętnym jest 0,101 binarne?
0, 1 0 10 -1 -2 -3 Waga
0 * 20+ 1 * 2-1+ 0 * 2-2+ 1 * 2-3+ =
29
![Page 30: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/30.jpg)
Przeliczanie z binarnego na dziesiętny
• Zamieniamy ujemne potęgi na ułamek zwykły
0, 1 0 10 -1 -2 -3 Waga
0 * 20+ 1 * 2-1+ 0 * 2-2+ 1 * 2-3+ =0 * 0+ 1 * 1/21+ 0 * 1/22+ 1 * 1/23+ =
30
![Page 31: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/31.jpg)
Przeliczanie z binarnego na dziesiętny
• Wyliczamy ułamki
0, 1 0 10 -1 -2 -3 Waga
0 * 20+ 1 * 2-1+ 0 * 2-2+ 1 * 2-3+ =0 * 0+ 1 * 1/21+ 0 * 1/22+ 1 * 1/23+ =0 * 0+ 1 * 1/2+ 0 * 1/4+ 1 * 1/8+ =
31
![Page 32: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/32.jpg)
Przeliczanie z binarnego na dziesiętny
• Zamieniamy ułamki zwykłe na dziesiętne
0, 1 0 10 -1 -2 -3 Waga
0 * 20+ 1 * 2-1+ 0 * 2-2+ 1 * 2-3+ =0 * 0+ 1 * 1/21+ 0 * 1/22+ 1 * 1/23+ =0 * 0+ 1 * 0,5+ 0 * 0,25+ 1 * 0,125+ =
32
![Page 33: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/33.jpg)
Przeliczanie z binarnego na dziesiętny
• Zamieniamy ułamki zwykłe na dziesiętne
0, 1 0 10 -1 -2 -3 Waga
0 * 20+ 1 * 2-1+ 0 * 2-2+ 1 * 2-3+ =0 * 0+ 1 * 1/21+ 0 * 1/22+ 1 * 1/23+ =
0 + 0,5+ 0 + 0,125 =0,625
330,1012=0,62510
![Page 34: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/34.jpg)
Co to za ułamek dziesiętny?
• 0,11012
• 0,100112
34
![Page 35: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/35.jpg)
Co to za ułamek dziesiętny?
• 0,11012 = 0,8125
• 0,100112= 0,59375
35
![Page 36: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/36.jpg)
Zamień na ułamek binarny
• 0,375• 0,5125• 0,6• 0,15
36
![Page 37: Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne](https://reader033.vdocuments.site/reader033/viewer/2022061614/56813bd6550346895da4fc07/html5/thumbnails/37.jpg)
Zamień na ułamek binarny
• 0,375 = 0,0112
• 0,5125 = 0, 1000 (0011) 2
• 0,6 = 0, (1001) 2
• 0,15 = 0, 00 (1001) 2
37