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

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

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

Podstawy Informatyki

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

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

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

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

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

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

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

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

Pracownia Komputerowa wykład VI

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

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

Metoda znak-moduł (ZM)

Naturalny kod binarny (NKB)

ARCHITEKTURA KOMPUTERÓW Liczby zmiennoprzecinkowe

Systemy zapisu liczb.

Kod IEEE754. IEEE754 (1985) - norma dotycząca zapisu binarnego liczb zmiennopozycyjnych (pojedynczej precyzji) Liczbę binarną o postaci

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

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

Arytmetyka binarna - wykład 6

Arytmetyka stało i zmiennoprzecinkowa

Technologie Informacyjne

BŁĘDY OBLICZEŃ NUMERYCZNYCH

Teoretyczne Podstawy Informatyki

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

Pracownia Komputerowa wyk ad VI

Technologie Informacyjne Wykład 4

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Podstawy Informatyki. Metalurgia, I rok. Wykład 3 Liczby w komputerze

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

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

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

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.

Reprezentacja stałoprzecinkowa. Reprezentacja zmiennoprzecinkowa zapis zmiennoprzecinkowy liczby rzeczywistej

Wprowadzenie do informatyki - ć wiczenia

Liczby zmiennoprzecinkowe i błędy

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

1.1. Pozycyjne systemy liczbowe

Pozycyjny system liczbowy

Podstawy Informatyki. Wykład 2. Reprezentacja liczb w komputerze

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

Stan wysoki (H) i stan niski (L)

architektura komputerów w. 2

Pracownia Komputerowa wykład V

Architektura komputerów

Architektura komputerów Reprezentacja liczb. Kodowanie rozkazów.

Kodowanie informacji. Kody liczbowe

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

Prefiksy binarne. kibibit (Kibit) mebibit (Mibit) gibibit (Gibit) tebibit (Tibit) pebibit (Pibit) exbibit (Eibit) zebibit (Zibit) yobibit (Yibit)

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

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

Zapis liczb binarnych ze znakiem

Pracownia Komputerowa wykład IV

Adam Korzeniewski p Katedra Systemów Multimedialnych

Zwykle liczby rzeczywiste przedstawia się w notacji naukowej :

LICZBY ZMIENNOPRZECINKOWE

Wstęp do informatyki- wykład 2

Architektura komputerów

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

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

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

Obliczenia Naukowe. O arytmetyce komputerów, Czyli jak nie dać się zaskoczyć. Bartek Wilczyński 29.

Adam Korzeniewski p Katedra Systemów Multimedialnych

Podstawy Informatyki Maszyna Turinga

Wstęp do Informatyki. Reprezentacja liczb w komputerze Arytmetyka stało- i zmiennoprzecinkowa Przechowywanie danych pliki i foldery

Dodatek do Wykładu 01: Kodowanie liczb w komputerze

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

Wprowadzenie do informatyki - ć wiczenia

REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Wprowadzenie do informatyki - ć wiczenia

4 Standardy reprezentacji znaków. 5 Przechowywanie danych w pamięci. 6 Literatura

Podstawy Informatyki dla Nauczyciela

LICZBY ZMIENNOPRZECINKOWE

METODY NUMERYCZNE. Po co wprowadzamy liczby w formacie zmiennoprzecinkowym (floating point)?

Kod U2 Opracował: Andrzej Nowak

Materiały laboratoryjne. Kodowanie i liczby. dr inż. Zbigniew Zakrzewski. Z.Z. Podstawy informatyki

Arytmetyka stało- i zmiennoprzecinkowa. 1. Informacje wstępne

Pracownia Komputerowa wyk ad IV

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

Cyfrowy zapis informacji

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

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

Wstęp do informatyki- wykład 1

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

W jaki sposób użyć tych n bitów do reprezentacji liczb całkowitych

Wstęp do Informatyki

Informatyka 1. Wykład nr 5 ( ) Politechnika Białostocka. - Wydział Elektryczny. dr inŝ. Jarosław Forenc

Podstawy Informatyki

PODSTAWY INFORMATYKI. Informatyka? - definicja

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

Metody numeryczne. Postać zmiennoprzecinkowa liczby. dr Artur Woike. Arytmetyka zmiennoprzecinkowa. Uwarunkowanie zadania.

Architektura komputerów

Arytmetyka liczb binarnych

ZADANIE 1. Rozwiązanie:

Algorytmy i struktury danych

Techniki multimedialne

Transkrypt:

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

Wprowadzenie, liczby naturalne Komputer to podstawowe narzędzie do wykonywania obliczeń Jeden bajt reprezentuje 0 oraz liczby naturalne od 1 do 255 2 bajty: 2 0 + 2 1 + 2 2 + 2 3 + 2 4 + 2 5 + 2 6 + 2 7 + 2 8 + 2 9 + 2 10 + 2 11 + 2 12 + 2 13 + 2 14 + 2 15 =65535 Ogólny wzór: 2 0 + 2 1 +...+ 2 n = 2 n+1-1 (2 16-1=65535) 4 bajty: 2 32-1= 4 294 967 296,00 (ponad 4 miliardy) Im więcej bajtów tym większa wartość - tania pamięć nie ma problemu ver. 2.2 Wielkości liczbowe (2/11)

Liczby całkowite Konieczne jest wprowadzenie umowy dotyczącej kodowania znaku liczny, np. znak-moduł : 1 bit oznacza znak liczby. 1 +, 0 -. Dla 1 bajta mamy 127 do +127 Bit 7 6 5 4 3 2 1 0 Znaczenie Znak 64 32 16 8 4 2 1 Wada: liczba 0000 0000 oznacza +0, liczba 0000 0001 ozn. -0 Inny sposób kodowania system uzupełnieniowy Bit 7 6 5 4 3 2 1 0 Znaczenie 128-64 -32-16 -8-4 -2-1 Liczby z zakresu od 127 do 128 (brak symetrii), 00000000 0 00000010-2 10000000 128 11111111 1 00000001-1 00000011-3 01111111-127 11111110 2 ver. 2.2 Wielkości liczbowe (3/11)

Liczby całkowite, cd Przy użyciu kodu uzupełnieniowego można uzyskać każdą liczbę z zakresu od 127 do 128 dla 1 bajta liczbę z zakresu od 16383 do 16384 dla 2 bajtów Otrzymane wartości są dokładne Zawsze istnieje górne i dolne ograniczenie zakresu liczb zależy to od liczby bajtów Jest to system stałoprzecinkowy przecinek leży za prawym skrajnym znakiem Tylko w takim systemie otrzymamy w pełni dokładne wartości Liczby rzeczywiste zawsze dają wyniki z pewnym błędem ver. 2.2 Wielkości liczbowe (4/11)

Liczby rzeczywiste Posiadają część całkowitą i ułamkową. Przecinek nie może zajmować skrajnych pozycji (albo sam ułamek, albo tylko część całkowita). Liczba dodatnia zapisana w 2 bajtach, przecinek w środku: 1 1 1 1 1 1 1 1, 1 1 1 1 1 1 1 1 Bajt z lewej pozwala zapisać liczby do 255, a bajt z prawej liczby do 255/256 (1/2+1/4+1/8+...+1/256 = 255/256 = 0,99609375 Liczba większa niż 255 nie mieści się, bity z prawej strony są puste Zapis ułamka ½ to: 00000000,10000000 dużo zmarnowanego miejsca Zapis bardzo małej liczby 00000000,00000001 obcięcie mniejszych wartości i zmarnowanie miejsca po prawej stronie znaczenie ma 1 bit z 16 bitów ver. 2.2 Wielkości liczbowe (5/11)

Dokładność obliczeń, błędy Wielkość błędu powinna być znana i niezależna od wartości biorących udział w obliczeniach. Porównajmy błąd dla kilku liczb w formacie stałoprzecinkowym: 1) 10000000,00000001 1 2) 00000001,00000001 1 3) 00000000,00000001 1 We wszystkich przypadkach odcięto wartość 2-9 = 1/512 = 0.001953125. Jest to tzw. błąd bezwzględny. Taką wartość tracimy ponieważ brakuje miejsca. Dla 1) ma małe znaczenie, dla 3) to jest połowa pozostałej wartości liczby. Błąd względny= =(błąd bezwzględny/wartość liczby)*100% -takie obliczenia są niewiarygodne -nie można porównać ze sobą wyników, które są obarczone różnym błędem -stałe położenie przecinka wyklucza możliwość zastosowania tego zapisu 0,001953152 *100% 50,00% 0,00390625 ver. 2.2 Wielkości liczbowe (6/11) 1) 2) 3) 0,001953152 128,00390625 *100% 0,001526% 0,001953152 *100% 0,194552% 1,00390625

Zapis zmiennoprzecinkowy Służy do zapisu liczb rzeczywistych z ustalonym błędem: M mantysa, [0.1, 1) L=M*N E N podstawa systemu zgodnie z zapisem pozycyjnym E cecha czyli wykładnik potęgi tak przesuwa przecinek, aby utworzyć mantysę zgodnie z definicją, np.. Liczby dziesiętne zapisane w postaci cecha-mantysa: 2340,23 = 0,234023*10 4 Cecha = 4 2,7363 = 0,27363*10 1 Cecha = 1 0,15934 = 0,15934*10 0 Cecha = 0 0,000243 = 0,243*10-3 Cecha = -3 ver. 2.2 Wielkości liczbowe (7/11)

Zapis zmiennoprzecinkowy, c.d. W systemie binarnym znormalizowana mantysa ma po przecinku zawsze wartość 1, np. 0 0 0 0 0 0 1 1, 1 0 1 0 0 0 0 0 Cecha Mantysa Najczęściej na cechę przeznaczamy 1 bajt, na mantysę min. 3 bajty Przy obliczaniu błędu wartość cechy nie ma znaczenia: Dla każdej liczby bajtów można obliczyć maksymalny błąd C blad * N liczba * N C *100% blad liczba *100% ver. 2.2 Wielkości liczbowe (8/11)

Zapis zmiennoprzecinkowy, c.d. Najmniejsza możliwa mantysa to (0,10000000) 2 czyli (0,5) 10 Największy możliwy błąd wystąpi wtedy, gdy po prawej stronie będą same jedynki: 1/512+1/1024+1/2048+1/4096 +... = =(1/512)/(1-1/2)=2/512=1/256=0,00390625 Korzystano ze wzoru na sumę nieskończonego ciągu geometrycznego S=a o /(1-q), a o =1/512, q=1/2 Maksymalny błąd względny wynosi: (0,00390625/0,5)*100%=0,78125% Im więcej bajtów tym większa dokładność, dla 1 bajta na mantysę max błąd względny nie przekracza 0,8% - możemy określić dokładność obl. Dla liczb ujemnych ta sama zasada zmniejszy się dokładność (7 bitów) Ten zapis zapewnia porównywalną dokładność wszystkich obliczeń. Dokładność zależy od ilości bajtów przeznaczonych na liczbę Za dokładność zapisu odpowiada mantysa gdy chcemy zwiększyć dokładność dodajemy bajt do mantysy za zakres reprezentowanych liczb odpowiada cecha - gdy chcemy zwiększyć zakres dodajemy bajt do cechy ver. 2.2 Wielkości liczbowe (9/11)

Zapis zmiennoprzecinkowy, c.d. Dla liczb rzeczywistych największa cecha zajmująca 1 bajt, reprezentująca wartości dodatnie i ujemne to 128, czyli maksymalna liczba to 2 128 (ok. 3,4*10 38 ). Dla liczb ujemnych to 127, czyli najmniejsza liczba to 2-127 (ok. 5,8*10-39 ), liczby mniejsze są tożsame z zerem. Często stosuje się kod uzupełnieniowy, w którym cecha należy [-128, 127] Zwiększenie liczby bajtów przeznaczonych na cechę do dwóch zwiększa zakres cyfr do ogromnych wartości i zwykle wystarcza do najbardziej skomplikowanych obliczeń ver. 2.2 Wielkości liczbowe (10/11)

Standard zapisu liczb zmienno przecinkowych Norma IEEE (standard 754), wprowadzona przez amerykańskie stowarzyszenie inżynierów elektryków definiująca kodowanie liczb zmienno przecinkowych Liczba rzeczywista 4 bajty, liczba podwójnej precyzji 8 bajtów Kolejne bity (od lewej) Liczba rzeczywista Znaczenie 1 Znak mantysy 2-9 (osiem) Cecha 10-32 (dwadzieścia trzy) Mantysa Dla mantysy 23 bitowej dokładność liczby wynosi 7 pozycji dziesiętnych Liczba podwójnej precyzji Kolejne bity (od lewej) Znaczenie 1 Znak mantysy 2-12 (jedenaście) Cecha 13-64 (pięćdziesiąt dwa) Mantysa Dla mantysy 52 bitowej dokładność liczby wynosi 15 pozycji dziesiętnych W mantysie l. ujemne kodowane są w systemie znak-moduł, w cesze w systemie uzupełnieniowym. W standardzie nie koduje się cechy i mantysy na pełnych bajtach, a jedynie na poszczególnych bitach ver. 2.2 Wielkości liczbowe (11/11)