Wstęp do informatyki- wykład 1 Systemy liczbowe

Podobne dokumenty
Wstęp do informatyki- wykład 1

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Wstęp do informatyki- wykład 2

Wstęp do informatyki- wykład 1 Systemy liczbowe

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Wykład 2. Informatyka Stosowana. 9 października Informatyka Stosowana Wykład 2 9 października / 42

Wykład 2. Informatyka Stosowana. 10 października Informatyka Stosowana Wykład 2 10 października / 42

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

SYSTEMY LICZBOWE 275,538 =

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Systemy zapisu liczb.

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

Wstęp do programowania. Reprezentacje liczb. Liczby naturalne, całkowite i rzeczywiste w układzie binarnym

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

Pracownia Komputerowa wykład V

Podstawy Informatyki dla Nauczyciela

1.1. Pozycyjne systemy liczbowe

Znaki w tym systemie odpowiadają następującym liczbom: I=1, V=5, X=10, L=50, C=100, D=500, M=1000

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Dane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna

Wykład 2. Informatyka Stosowana. 8 października 2018, M. A-B. Informatyka Stosowana Wykład 2 8 października 2018, M. A-B 1 / 41

Pozycyjny system liczbowy

Podstawy Informatyki

Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

Technologie Informacyjne

System Liczbowe. Szesnastkowy ( heksadecymalny)

Wielkości liczbowe. Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika

Techniki multimedialne

Wielkości liczbowe. Wykład z Podstaw Informatyki. Piotr Mika

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Teoretyczne Podstawy Informatyki

System liczbowy jest zbiorem reguł określających jednolity sposób zapisu i nazewnictwa liczb.

RODZAJE INFORMACJI. Informacje analogowe. Informacje cyfrowe. U(t) U(t) Umax. Umax. R=(0,Umax) nieskończony zbiór możliwych wartości. Umax.

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

Liczby rzeczywiste są reprezentowane w komputerze przez liczby zmiennopozycyjne. Liczbę k można przedstawid w postaci:

ARCHITEKTURA KOMPUTERÓW Systemy liczbowe

L6.1 Systemy liczenia stosowane w informatyce

Arytmetyka. Arytmetyka. Magdalena Lemańska. Magdalena Lemańska,

1259 (10) = 1 * * * * 100 = 1 * * * *1

Algorytmy i struktury danych. Wykład 4

Cyfrowy zapis informacji

Pracownia Komputerowa wykład VI

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

Luty 2001 Algorytmy (7) 2000/2001

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Systemy liczbowe. 1. System liczbowy dziesiętny

Cyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

Systemy liczbowe używane w technice komputerowej

Dane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna

Zapis liczb binarnych ze znakiem

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 5 Liczby w komputerze

SYSTEMY LICZBOWE. SYSTEMY POZYCYJNE: dziesiętny (arabski): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 rzymski: I, II, III, V, C, M

Wprowadzenie do informatyki - ć wiczenia

Urządzenia Techniki. Klasa I TI. System dwójkowy (binarny) -> BIN. Przykład zamiany liczby dziesiętnej na binarną (DEC -> BIN):

Jednostki informacji. Bajt moŝna podzielić na dwie połówki 4-bitowe nazywane tetradami (ang. nibbles).

Metoda znak-moduł (ZM)

Informatyka kodowanie liczb. dr hab. inż. Mikołaj Morzy

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

Arytmetyka liczb binarnych

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego

Pracownia Komputerowa wyk ad V

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

Wstęp do informatyki. Pojęcie liczebności. Zapis liczb. Liczenie bez liczebników. Podstawy arytmetyki komputerowej. Cezary Bolek

MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny)

Wprowadzenie do informatyki - ć wiczenia

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

Kod U2 Opracował: Andrzej Nowak

Arytmetyka binarna - wykład 6

Pracownia Komputerowa wyk ad VI

Stan wysoki (H) i stan niski (L)

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41

Architektura komputerów

Moduł 2 Zastosowanie systemów liczbowych w informacji cyfrowej

Systemy liczbowe. Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz

Architektura komputerów

Met Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łan Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie:

Wstęp do informatyki. Pojęcie liczebności. Liczenie bez liczebników. Podstawy arytmetyki komputerowej. Cezary Bolek

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Operacje arytmetyczne

Kodowanie informacji. Kody liczbowe

Technologie Informacyjne Wykład 4

2.3. Wyznaczanie wartości wielomianu, pozycyjne systemy liczbowe i reprezentacja danych liczbowych w komputerze

Systemy liczenia. 333= 3*100+3*10+3*1

Podstawy Informatyki

Pracownia Komputerowa wykład IV

ARCHITEKTURA KOMPUTERÓW Liczby zmiennoprzecinkowe

Naturalny kod binarny (NKB)

Arytmetyka stałopozycyjna

Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie P lub F, która odpowiedź jest prawdziwa, a która fałszywa.

Języki i metodyka programowania. Reprezentacja danych w systemach komputerowych

Wykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 1 WSTĘP DO INFORMATYKI

Algorytmy i struktury danych

Systemem liczenia systemach addytywnych !!" Pozycyjny system liczbowy podstawą systemu pozycyjnego

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Transkrypt:

1 Wstęp do informatyki- wykład 1 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz, Opus magnum C++11, Helion, 2017 B. Stroustrup, Język C++. Kompendium wiedzy. Wydanie IV, Helion, 2014 S. B. Lippman, J. Lajoie, Podstawy języka C++, WNT, Warszawa 2003.

Zapis informacji w komputerach 2 Dane przetwarzane przez komputery można zredukować do kombinacji zer i jedynek. Taki sposób zapisu informacji związany jest z tym, że komputer jako urządzenie cyfrowe rozpoznać może dwa stany napięciowe: 0 brak napięcia lub bardzo niskie 1 wysokie napięcie. Z tego względu obliczenia wykonywane przez procesor opierają się na binarnym (dwójkowym) systemie liczbowym. Najmniejszą jednostką informacji potrzebną do określenia, który z dwóch równie prawdopodobnych stanów przyjął układ jest bit (ang. binary digit czyli cyfra dwójkowa). Skróconym symbolem bitu jest b. Bit przyjmuje jedną z dwóch wartości, które zwykle określa się jako 0 (zero) i 1 (jeden)- zatem bit jest tożsamy z cyfrą w systemie dwójkowym. bajt (ang. byte, symbol: B) 8 bitów

Systemy liczbowe o podstawie p > 1 Dla każdej liczby naturalnej x Î N oraz liczby naturalnej p >= 2 istnieją jednoznacznie wyznaczone: liczba n Î N oraz ciąg cyfr c 0, c 1,..., c n-1 (gdzie ck Î {0, 1,..., p - 1}) taki, że x = c 0 + c 1 p + c 2 p 2 +... + c n-1 p n-1 Ciąg ( c n-1...c 0 ) p nazywamy reprezentacją liczby x w systemie o podstawie p. Cyfra o indeksie n 1 to cyfra najbardziej znacząca (ang. MSD most significant digit). W celu określenia maksymalnej wartości liczby całkowitej, jaką można zapisać w przedstawionej postaci należy w miejsce cyfr c i podstawić wartość maksymalną, równą p 1: x = (p-1) + (p-1) p + (p-1) p 2 +... + (p-1) p n-1 =(p-1)(1+p+p 2 +...+p n-1 ) //suma ciągu geometrycznego =(p-1)(1-p n )/(1-p)=p n -1 3

Systemy liczbowe o podstawie p > 1 4 Najbardziej powszechne systemy: dwójkowy (binarny), p = 2,ck Î {0,1} ósemkowy (oktalny), p = 8, ck Î {0,1,2,3,4,5,6,7} dziesiętny (dziesiątkowy, decymalny), p = 10, ck Î {0,1,2,3,4,5,6,7,8,9} szesnastkowy (heksadecymalny) p = 16, ck Î{0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} Ćwiczenie Zapisać liczby z zakresu od 0 do 16 w systemie o postawie p, dla p=2, 8, 16. p = 10 p = 2 p = 8 p = 16 0 0 0 0 1 1 1 1 2 10 2 2 5 101 5 5 8 1000 10 8 10 1010 12 A 15 1111 17 F 16 10000 20 10

5 Zamiana liczby dziesiętnej na binarną algorytm Euklidesa Przy zamianie liczby będziemy korzystać z dzielenia całkowitego oznaczanego operatorem / i reszty z dzielenia całkowitego oznaczanego operatorem % (modulo) dla przykładu: 7 / 3 = 2, bo w 7 mieszczą się dwie trójki 7 % 3 = 1, bo reszta z dzielenia 7 przez 3 = 1; Algorytm Euklidesa: Dopóki liczba dziesiętna jest większa od 0: wyznaczamy resztę z dzielenia (modulo) przez 2 konwertowanej liczby i zapisujemy ją w prawej kolumnie konwertowaną liczbę dzielimy przez 2 (dzielenie całkowite) i otrzymany wynik zapisujemy pod liczbą w lewej kolumnie Następnie spisujemy reszty (od dołu do góry!)

6 Zamiana liczby dziesiętnej na binarną algorytm Euklidesa Przykład Zamień liczbę 41 na system dwójkowy korzystając z alg. Euklidesa: liczbę 41 dzielimy modulo 2 i wynik zapisujemy z prawej strony, następnie liczbę 41 dzielimy całkowicie przez 2 i wynik zapisujemy pod spodem aż do momentu otrzymania 0; /2 %2 41 1, bo 41 % 2 = 1 20 0, bo 20 % 2 = 0 10 0 5 1 2 0 1 1 0 Aby mieć prawidłową postać liczby 41 w systemie dwójkowym (binarnym) należy prawą kolumnę przepisać w kolejności od dołu do góry: 101001. Zatem 41=(101001) 2

7 Zamiana liczby dziesiętnej na binarną algorytm Euklidesa 41 1 20 0 10 0 5 1 2 0 1 1 0 41=(101001) 2 Sprawdzenie: 41=20*2 +1 =(10*2+0)*2 +1 =((5*2+0)*2+0)*2 +1=(((2*2+1)*2+0)*2+0)*2+1 =((((1*2+0)*2+1)*2+0)*2+0)*2 +1 =(((((0*2 +1)*2+0)*2+1)*2+0)*2+0)*2 +1 =1*2 5 +0*2 4 + 1*2 3 + +0*2 2 +0*2 1 +1

8 Zamiana liczby dziesiętnej na dowolny system. Analogicznie możemy dokonać zamiany z systemu dziesiętnego na system o dowolnej podstawie wykonując dzielenie nie przez 2 lecz przez liczbę p, która jest podstawą systemu. W zapisie liczb w systemach o podstawie >10 przyjmujemy następujące oznaczenia dla cyfr: 10 = A, 11 = B, 12 = C, itd. Przykład Przedstawmy liczbę 62 w systemie o podstawie 8: /8 %8 62 6, bo 62 % 8 = 7 (62 = 7*8 + 6) 7 7, bo 7 % 8 = 7 0 Zatem (62)10 = (76)8 Przykład 2 Przedstawmy liczbę 63 w systemie o podstawie 5: 63 3, bo 62 % 5 = 3 12 2, bo 12 % 5 = 2, (12 to wynik z dzielenia całkowitego 63 / 5) 2 2 0 Zatem 63 (10) = 223 (5)

9 Obliczanie wartości dziesiętnej liczb zapisanych w innych systemach Aby odczytać wartość dziesiętną liczby zapisanej w systemie o danej podstawie postępujemy w następujący sposób: 2 5 2 4 2 3 2 2 2 1 2 0 1 0 1 0 0 1 (2) zatem: 101001 (2) = 1*2 0 + 0*2 1 + 0*2 2 +1*2 3 + 0*2 4 + 1*2 5 = 1 + 1*8+ 1*32 = 41 Ćw 1. Wyznaczyć wartość dziesiętną liczb dwójkowych (11101011) 2, (101011) 2, (10000) 2. Ćw 2. Jaka jest największa liczba binarna zapisana na czterech bitach, ośmiu bitach, n bitach? Podać wzór ogólny.

Obliczanie wartości dziesiętnej liczb przy pomocy schematu Hornera Zauważmy, że obliczenie wartości dziesiętnej liczby zapisanej w systemie o podstawie p jest równoważne z obliczeniem wartości następującego wielomianu w punkcie p: c n-1 p n-1 + c n-2 p n-2 +... + c 2 p 2 + c 1 p + c 0 = (...((c n-1 p + c n-2 )p + c n-3 )... +c 1 )p +c 0 Zatem możemy skorzystać ze schematu Hornera: Schemat Hornera b n-1 = c n-1 b k = b k+1.p + c k, (k = n-2,...,0) Przykład x=(11001111) 2 c 7 c 6 c 5 c 4 c 3 c 2 c 1 c 0 c k 1 1 0 0 1 1 1 1 p=2 b k 1 3 6 12 25 51 103 207 Stąd (11001111) 2 =(207) 10 10

11 System szesnastkowy (heksadecymalny) Zamiana systemu dwójkowego na szesnastkowy Aby zamienić liczbę o podstawie 2 na liczbę o podstawie 16 grupujemy od prawej po 4 bity rozwinięcia binarnego, odczytujemy wartość dziesiętna każdej grupy bitów i podstawiamy odpowiednią cyfrę z systemu szesnastkowego: 101111010110 (2) = 1011 1101 0110 = BD6 (16) =11=B =13=D =6 Zamiana systemu szesnastkowego na dwójkowy Aby zamienić liczbę o podstawie 16 na liczbę o podstawie 2 każdą cyfrę szesnastkową zapisujemy na 4 bitach uzupełniając o ile jest taka potrzeba z przodu odpowiednia ilością zer: BD6 (16) = 1011 1101 0110 = 101111010110 (2) =11=B =13=D =6 Pamiętajmy o konieczności zapisania każdej cyfry szesnastkowej dokładnie na 4 bitach, czyli o uzupełnieniu z przodu o ile zachodzi taka potrzeba odpowiednią ilością zer (tak jak to miało miejsce w powyższym przykładzie dla cyfry 6 która zapisaliśmy jako 0110)

12 Arytmetyka binarna Ćw 3. Liczby 0101 2, 0110 2, 1011 2, 11110011 2, 100111010100 2 zapisać w postaci szesnastkowej Ćw 4. Liczby A1C2D6, F3E5, 2018 zapisać w postaci binarnej. Ćw 5. Liczbę 255 zapisać: bezpośrednio w postaci szesnastkowej, zamienić na postać binarną, a następnie na szesnastkową. Działania na liczbach binarnych 0+0=0 1 0=1 1+0=1 0 0=0 1+1=10 10 1=1 1101 + 101 10010 1+1= 2 czyli w systemie binarnym jest to 0 i 1 na pozycji o jeden wyższej jest to analogia przy dodawaniu dziesiętnym np. 7+6=13 czyli 3 i 1 na pozycji o jeden wyższej (tzw. jeden dalej )

13 Reprezentacja uzupełnieniowa Reprezentacja uzupełnieniowa służy do zapisu liczb całkowitych (dodatnich i ujemnych). Pierwszy bit od lewej jest bitem znaku (0 liczba dodatnia, 1 liczba ujemna), pozostałych n 1 bitów, to liczba zapisana w postaci binarnej, przy czym dla liczb ujemnych przechowuje się reprezentację binarną liczby x uz = 2 n - x (x) u2 = (x) 2 dla 0 <= x <= 2 n-1 1 (2 n x ) 2 dla 2 n-1 <= x < 0 W ten sposób po prawej stronie definicji mamy reprezentacje liczb nieujemnych, które umiemy już liczyć. 221 1 Przykłady 110 0 a) Wyznaczmy reprezentacje liczby -35 na 8 bitach. 55 1 Aby znaleźć reprezentację uzupełnieniową liczby -35 musimy wyznaczyć reprezentację binarną liczby 2 8 - -35 = 2 8 35= 256-35 = 221. Zatem na podstawie algorytmu Euklidesa dla liczby 221 otrzymujemy -35=(11011101) u2 27 1 13 1 6 0 3 1 1 1 0

14 Reprezentacja uzupełnieniowa b) Wyznaczmy reprezentację liczby -1 na 8 bitach. 2 8 - -1 = 2 8 1= 256-1 = 255 255=(11111111) u2 =-1 Sprawdźmy, że -1+1=0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 + 1 nadmiar 1 0 0 0 0 0 0 0 0 c) Liczba 128 na 8 bitach x =128 x uz =2 8 128 = 128 =2 7, po zamianie na postać binarną: x uz =10000000 Ćw 6. Podać 8-bitową reprezentację uzupełnieniową liczb 122, 5 korzystając z definicji.

Reprezentacja uzupełnieniowa - metoda negacji bitów 15 Liczby ujemne możemy reprezentować binarnie tylko przy ustalonej z góry ilości bitów. Najprostszą metodą zamiany jest metoda "negacji bitów" Metoda negacji bitów (dla liczb ujemnych) 35 1 1) wyznaczyć n-bitową reprezentację binarną liczby x 17 1 2) w uzyskanej reprezentacji zamienić 0 na 1 i 1 na 0 8 0 3) do wyniku dodać 1 Przykład Przedstawmy reprezentacje liczby -35 na 8 bitach. Najpierw tworzymy w znany już sposób reprezentacje binarną liczby -35 =35 = 100011 teraz uzupełniamy zerami od lewej tą reprezentację do 8-u bitów 00100011 4 0 2 0 1 1 0 następnie dokonujemy negacji bitów 0<->1 0 0 1 0 0 0 1 1 1 1 0 1 1 1 0 0

Reprezentacja uzupełnieniowa - metoda negacji bitów 16 do takiej reprezentacji dodajemy 1 : 1 1 0 1 1 1 0 0 + 1 1 1 0 1 1 1 0 1 w wyniku czego otrzymujemy reprezentacje uzupełnieniową liczby -35 na 8 bitach 11011101. Ćw 7.Wyznaczyć 16-bitowe reprezentacje uzupełnieniowe liczb -128, -1, -55, -44. Zamiana liczb ujemnych zapisanych w reprezentacji uzupełnieniowej na liczbę dziesiętną Na podstawie definicji x uz =2 n - x Zatem dla liczb ujemnych x=-2 n +x uz. Ponieważ liczby ujemne na najstarszym bicie mają 1 i -2 n +2 n-1 =-2 n-1, to wartość liczby o reprezentacji uzupełnieniowej (c n 1, c n 2,..., c 1, c 0 ) u2 jest równa x = c n 1 2 n 1 +(c n-2 2 n-2 +...+ c 1 2 1 +c 0 ) Czyli najstarszy bit n-bitowej reprezentacji traktujemy jako -2 n-1, a pozostałe tradycyjnie jako wartości, kolejno 2 n-2,,2 0.

Wyznaczanie wartości dziesiętnej liczb w notacji uzupełnieniowej 17 Przykład. Wyznaczyć wartość dziesiętną liczby 11011101uz -2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 1 1 0 1 1 1 0 1 11011101 uz = -1* 2 8-1 + 1*2 6 + 1*2 4 + 1*2 3 + 1*2 2 + 1= = -128 + (64+16+8+4+1) = -128 + 93 = -35 (liczba 8 bitowa) Podsumowując aby podać wartość dziesiętną liczby zapisanej w notacji uzupełnieniowej podnosimy 2 do potęgi o jeden niższej niż ilość bitów (8-1), tą wartość przemnażamy przez pierwszy bit od lewej ze znakiem minus. Z pozostałych bitów (w tym przypadku 1011101) odczytujemy wartość dziesiętna tak jak dla liczb dodatnich i wartość tą dodajemy do wcześniej otrzymanej potęgi dwójki. Zauważmy, że jeżeli pierwszy bit od lewej jest równy 0, to mamy reprezentacje liczby dodatniej, w pozostałych przypadkach zawsze będzie to liczba ujemna. Ćw 7. Podać wartość dziesiętną liczby x uz =10011001

Algorytm Hornera dla reprezentacji uzupełnieniowej Algorytm Hornera dla reprezentacji uzupełnieniowej (zamiana na wartość dziesiętną) Ponieważ z definicji wynika, że x = c n 1 2 n 1 +(c n-2 2 n-2 +...+ c 1 2 1 +c 0 ) zatem przed najstarszą cyfrą c n-1 stawiamy znak minus i postępujemy tak jak poprzednio w algorytmie Hornera: b n-1 = - c n-1 b k = b k+1.p + c k, (k = n-2,...,0) Przykład. Zapisać w postaci dziesiętnej liczbę 10111110 zapisaną w reprezentacji uzupełnieniowej korzystając z algorytmu Hornera. c 7 c 6 c 5 c 4 c 3 c 2 c 1 c 0 1 0 1 1 1 1 1 0 p=2-1 -2-3 -5-9 -17-33 -66 Zatem ( 10111110) u2 =-66. 18

Reprezentacja liczb rzeczywistych stałopozycyjna 19 Ułamek to liczba postaci 0.c 1 c 2...c k Zamiana ułamka dziesiętnego na binarny polega na mnożeniu liczby przez 2 i wypisywaniu kolejnych cyfr przed kropką, tj. ułamek mnożymy przez 2, jeżeli otrzymujemy liczbę mniejsza od 1, to po prawej stronie piszemy 0, a wynik przepisujemy pod spód, jeżeli wynik jest większy od 1 to po prawej stronie piszemy jeden, a część ułamkową z wyniku przepisujemy na dół, jeżeli wynik jest równy 1 to jedynkę przepisujemy po prawej stronie i kończymy procedurę przeliczania. Przykład Przedstawmy reprezentacje liczby 0,125 0.125 0 bo 0.125*2=0.25 0.25 0 bo 0.25*2=0.5 0.5 1 bo 0.5*2=1.0 1 0 STOP Aby przedstawić reprezentację liczby rzeczywistej piszemy po 0. wszystkie bity od góry do dołu. Zatem 0.125 = (0.001) 2

Zapis ułamków w systemie binarnym Przykład Przedstawmy reprezentacje liczby 0,3 0.3 0 0.6 1 0.2 0 0.4 0 0.8 1 0.6 1 0.2 0 Stąd 0.3 = (0.0100110...) 2 Zauważmy, że czasami dostaniemy rozwinięcie skończone np. 0.25 = (0.01) 2 ; nieskończone np. 0.137 lub okresowe np. 0.3 = 0.0(1001) 2 Obliczanie wartości dziesiętnej ułamków binarnych Zapisać w postaci ułamka zwykłego 0.110 2 0. 2-1 2-2 2-3 0. 1 1 0 (0.110) 2 = 1*2 1 + 1*2 2 + 0*2 3 = 0.5 + 0.25 + 0 = 0.75 20

Zaokrąglenie ułamków 21 Jeżeli chcemy zaokrąglić ułamek na k-tej pozycji, to patrzymy się na k+1 cyfrę i jeśli jest ona zerem, to po prostu cały ogon odrzucamy (zaokrąglenie w dół), a jeśli jest jedynką, to dodajemy ją do uciętego na k-tym miejscu przybliżenia (zaokrąglenie w górę) Przykład. Zaokrąglić ułamek 1/10 do czterech miejsc po przecinku Wiemy, że 1/10=0.0(0011) Zapisujemy ułamek z dokładnością do 5 cyfr po przecinku 0.00011 i dodajemy 1. 0.00011 + 1 0.00100 Następnie obcinamy do 4-ch miejsc zatem 1/10 = 0.0010 z dokładnością do 4-ch miejsc po przecinku.