Posługiwanie się systemami liczenia Konwersja – zamiana Systemy liczenia II Danuta Stanek
Konwersja pomiędzy systemami Posługiwanie się różnymi systemami liczenia wymaga umiejętności nie tylko przedstawiania liczb w różnych systemach, ale również konwersji (zamiany) liczby przedstawionej w jednym systemie na liczbę w innym systemie. Najwygodniej jest to powierzyć komputerowi, ale należy poznać zasady takiej zamiany. Danuta Stanek
Zamiana liczby dziesiętnej na binarną 69 34 17 8 4 2 1 Najstarszy bit Podstawowy sposób polega na kolejnym dzieleniu liczby dziesiętnej przez 2 z resztą i zapisaniu liczby od najstarszego do najmłodszego bitu więc: 69 (10)= 1000101 (2) Najmłodszy bit Każdą pozycję liczby binarnej nazywamy bitem (binary digit) i jest to najmniejsza jednostka ilości informacji Danuta Stanek
Liczba 21 w systemie dwójkowym: 21 : 2 1 a0 10 : 2 0 a1 5 : 2 1 a2 83 10= 1010011NB Liczba 21 w systemie dwójkowym: 21 : 2 1 a0 10 : 2 0 a1 5 : 2 1 a2 2 : 2 0 a3 1 : 2 1 a4 0 : 2 0 a5 2110 = 010101NB Zera przed jedynką z lewej nie mają wpływu na wartość liczby Danuta Stanek
Zamiana liczby binarnej na dziesiętną Aby obliczyć dziesiętną wartość naszej liczby binarnej mnożymy cyfrę stojącą na każdej pozycji przez jej wagę, czyli kolejną potęgę liczby 2 będącej podstawą systemu 1000101 (2)= 1*26 + 0*25 + +0*24+0*23 + 1*22 + 0*21 + 1*20 = =64+0+0+0+4+0+1=69 Danuta Stanek
Przejście od zapisu binarnego do heksadecymalnego Zapisać liczbę binarną 1001011010B w postaci heksadecymalnej. Przy przejściu od liczby binarnej do heksadecymalnej wykorzystujemy fakt, że każdej cyfrze heksadecymalnej odpowiada określona kombinacja czterech cyfr binarnych i na odwrót. Przeliczaną liczbę binarną dzielimy od końca (czyli od najmłodszej pozycji) na czwórki, a następnie każdą zapisujemy w postaci jednej cyfry heksadecymalnej. Dla liczby binarnej 001001011010: 0010t0101t1010 B =25A H Danuta Stanek
zamiana liczby binarnej na heksadecymalną Nasza liczba dziesiętna 69 to binarnie: 1000101 Algorytm zamiany liczby binarnej na heksadecymalną jest następujący: dzielimy liczbę binarną na tzw. kęsy o długości 4 bity (licząc od ostatniej pozycji) czyli: 100 0101 Dla każdego kęsa znajdujemy wartość dziesiętną i zapisujemy ją w postaci heksadecymalnej binarnie 100 0101 dziesiętnie 4 5 heksadecymalnie 45 tak więc: 45(16)=4*161 + 5*160=64+5=69 Danuta Stanek
Cyfry heksadecymalne i odpowiadające im liczby binarne Cyfra H Liczba binarna Cyfra hex 0000 8 1000 1 0001 9 1001 2 0010 A 1010 3 0011 B 1011 4 0100 C 1100 5 0101 D 1101 6 0110 E 1110 7 0111 F 1111 Danuta Stanek
System heksadecymalny(16) Zapisać liczbę heksadecymalną 7CD5H w postaci liczby binarnej 7CD5H =0111t 1100t 1101t 0101t 7CD5H =0111110011010101B 3A8H= 1110101000B FFH =11111111H = 255D Jeden bajt może być przedstawiony za pomocą dwóch liczb heksadecymalnych od 0 do FF Danuta Stanek
Charakterystyka dowolnego systemu pozycyjnego: Podstawą będzie liczba naturalna p większa od 1 (dla p = 1 system pozycyjny degraduje się do systemu karbowego). System posiada p cyfr: 0,1,2, ..., (p - 1). Ostatnia cyfra jest zawsze o 1 mniejsza niż podstawa p. Kolejne wagi pozycji będą przyjmowały wartość kolejnych potęg podstawy systemu: pozycja 0 - p0 pozycja 1 - p1 pozycja 2 - p2, itd. Wynika stąd prosty wniosek, iż waga każdej następnej pozycji jest p-razy większa od wagi poprzedniej pozycji. Danuta Stanek
Wagi 4 pozycji w różnych systemach liczbowych Podstawa p Wartości wag pozycji pozycja 4 pozycja 3 pozycja 2 pozycja 1 pozycja 0 2 24 = 16 23 = 8 22 = 4 21 = 2 20 = 1 3 34 = 81 33 = 27 32 = 9 31 = 3 30 = 1 4 44 = 256 43 = 64 42 = 16 41 = 4 40 = 1 5 54 = 625 53 = 125 52 = 25 51 = 5 50 = 1 6 64 = 1296 63 = 216 62 = 36 61 = 6 60 = 1 7 74 = 2401 73 = 343 72 = 49 71 = 7 70 = 1 8 84 = 4096 83 = 512 82 = 64 81 = 8 80 = 1 9 94 = 6561 93 = 729 92 = 81 91 = 9 90 = 1 10 104 = 10000 103 = 1000 102 = 100 101 = 10 100 = 1 Danuta Stanek
Wartość dziesiętna liczby w systemie pozycyjnym o podstawie p an-1an-2...a2a1a0 ma wartość an-1 pn-1 + an-2 pn-2 + ... + a2 p2 + a1 p1 + a0 p0 gdzie: a - cyfra danego systemu o podstawie p ai - cyfra na i-tej pozycji, i = 0, 1, 2, ... , n-1 n - ilość cyfr w zapisie liczby p - podstawa systemu pozycyjnego Danuta Stanek
1 4 Ułamek 5 6 7 8 3 2 9 Wagi pozycji 103 102 101 100 10-1 10-2 10-3 10-4 10-5 Cyfry zapisu 5 6 7 8 3 2 9 1 4 Numery pozycji 3 2 1 -1 -2 -3 -4 -5 Część całkowita Część ułamkowa Danuta Stanek
Znajdź rozwinięcie dziesiętne ułamka 23,625 Liczba(a)2 = 0...010111,1010...0 0,625 * 2 a-1 (1),250 * 2 a-2 (0),500 * 2 a-3 (1),000 * 2 a-4 (0),000 . . . a-m 0 L(a)10=23,625 L(a)2 =? 23=11*2+1 a0 11= 5*2+1 a1 5= 2*2+1 a2 2= 1*2+0 a3 1= 0*2+1 a4 0= 0*2+0 a5 . . . 0 an-2 Danuta Stanek