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

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

Podstawy Informatyki

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

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

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

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

Pracownia Komputerowa wykład VI

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

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

Metoda znak-moduł (ZM)

Naturalny kod binarny (NKB)

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

Systemy zapisu liczb.

ARCHITEKTURA KOMPUTERÓW Liczby zmiennoprzecinkowe

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

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

Arytmetyka stało i zmiennoprzecinkowa

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

BŁĘDY OBLICZEŃ NUMERYCZNYCH

Teoretyczne Podstawy Informatyki

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

Arytmetyka binarna - wykład 6

Pracownia Komputerowa wyk ad VI

Technologie Informacyjne

Technologie Informacyjne Wykład 4

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

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

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

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

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

Stan wysoki (H) i stan niski (L)

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

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

Liczby zmiennoprzecinkowe i błędy

1.1. Pozycyjne systemy liczbowe

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

Pozycyjny system liczbowy

architektura komputerów w. 2

Reprezentacja stałoprzecinkowa. Reprezentacja zmiennoprzecinkowa zapis zmiennoprzecinkowy liczby rzeczywistej

Wprowadzenie do informatyki - ć wiczenia

Zapis liczb binarnych ze znakiem

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

Kodowanie informacji. Kody liczbowe

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

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

Architektura komputerów

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

Architektura komputerów

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

Adam Korzeniewski p Katedra Systemów Multimedialnych

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

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

Pracownia Komputerowa wykład V

Pracownia Komputerowa wykład IV

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

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

Zwykle liczby rzeczywiste przedstawia się w notacji naukowej :

Wstęp do informatyki- wykład 2

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

Adam Korzeniewski p Katedra Systemów Multimedialnych

LICZBY ZMIENNOPRZECINKOWE

Dodatek do Wykładu 01: Kodowanie liczb w komputerze

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

REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH

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

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

Podstawy Informatyki Maszyna Turinga

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

Podstawy Informatyki dla Nauczyciela

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

Wprowadzenie do informatyki - ć wiczenia

Kod U2 Opracował: Andrzej Nowak

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

LICZBY ZMIENNOPRZECINKOWE

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

Wstęp do Informatyki

Pracownia Komputerowa wyk ad IV

Wprowadzenie do informatyki - ć wiczenia

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

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

Podstawy Informatyki

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

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

Cyfrowy zapis informacji

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

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

Arytmetyka liczb binarnych

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

ZADANIE 1. Rozwiązanie:

PODSTAWY INFORMATYKI. Informatyka? - definicja

Algorytmy i struktury danych

Techniki multimedialne

METODY NUMERYCZNE. Wykład 2. Analiza błędów w metodach numerycznych. Met.Numer. wykład 2 1

Transkrypt:

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

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

Liczby całkowite Konieczne jest wprowadzenie umowy dotyczącej kodowania znaku liczny, np. znak-moduł : bit oznacza znak liczby. +, -. Dla bajta mamy 27 do +27 Bit 7 6 5 4 3 2 Znaczenie Znak 64 32 6 8 4 2 Wada: liczba oznacza +, liczba ozn. - Inny sposób kodowania system uzupełnieniowy Bit Znaczenie 7 28 6-64 -32-6 Liczby z zakresu od 27 do 28 (brak symetrii), 5 4 3-8 2-4 -2 - -2 28 - -3-27 2 ver. 2.2 Wielkości liczbowe (3/)

Liczby całkowite, cd Przy użyciu kodu uzupełnionego można uzyskać każdą liczbę z zakresu od 27 do 28 dla bajta liczbę z zakresu od 6383 do 6384 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/)

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:, Bajt z lewej pozwala zapisać liczby do 255, a bajt z prawej liczby do 255/256 (/2+/4+/8+...+/256 = 255/256 =,9969375 Liczba większa niż 255 nie mieści się, bity z prawej strony są puste Zapis ułamka ½ to:, dużo zmarnowanego miejsca Zapis bardzo małej liczby, obcięcie mniejszych wartości i zmarnowanie miejsca po prawej stronie znaczenie ma bit z 6 bitów ver. 2.2 Wielkości liczbowe (5/)

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: ), 2), 3), We wszystkich przypadkach odcięto wartość 2-9 = /52 =.95325. Jest to tzw. błąd bezwzględny. Taką wartość tracimy ponieważ brakuje miejsca. Dla ) 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)*% -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,95352 *% = 5,%,39625 ver. 2.2 Wielkości liczbowe (6/) ) 2) 3),95352 28,39625 *% =,526%,95352 *% =,94552%,39625

Zapis zmiennoprzecinkowy Służy do zapisu liczb rzeczywistych z ustalonym błędem: M mantysa, [., ) 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: 234,23 =,23423* 4 Cecha = 4 2,7363 =,27363*,5934 =,5934* Cecha = Cecha =,243 =,243* -3 Cecha = -3 ver. 2.2 Wielkości liczbowe (7/)

Zapis zmiennoprzecinkowy, c.d. W systemie binarnym znormalizowana mantysa ma po przecinku zawsze wartość, np., Cecha Mantysa Najczęściej na cechę przeznaczamy 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 *% = blad liczba *% ver. 2.2 Wielkości liczbowe (8/)

Zapis zmiennoprzecinkowy, c.d. Najmniejsza możliwa mantysa to (,) 2 czyli (,5) Największy możliwy błąd wystąpi wtedy, gdy po prawej stronie będą same jedynki: /52+/24+/248+/496 +... = =(/52)/(-/2)=2/52=/256=,39625 Korzystano ze wzoru na sumę nieskończonego ciągu geometrycznego S=a o /(-q), a o =/52, q=/2 Maksymalny błąd względny wynosi: (,39625/,5)*%=,7825% Im więcej bajtów tym większa dokładność, dla bajta na mantysę max błąd względny nie przekracza,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/)

Zapis zmiennoprzecinkowy, c.d. Dla liczb rzeczywistych największa cecha zajmująca bajt, reprezentująca wartości dodatnie i ujemne to 28, czyli maksymalna liczba to 2 28 (ok. 3,4* 38 ). Dla liczb ujemnych to 27, czyli najmniejsza liczba to 2-27 (ok. 5,8* -39 ), liczby mniejsze są tożsame z zerem. Często stosuje się kod uzupełnieniowy, w którym cecha należy [-28, 27] 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 (/)

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) 2-9 (osiem) Liczba rzeczywista -32 (dwadzieścia trzy) Znaczenie Znak mantysy Cecha Mantysa Dla mantysy 23 bitowej dokładność liczby wynosi 7 pozycji dziesiętnych Liczba podwójnej precyzji Kolejne bity (od lewej) 2-2 (jedenaście) 3-64 (pięćdziesiąt dwa) Znak mantysy Cecha Mantysa Dla mantysy 52 bitowej dokładność liczby wynosi 5 pozycji dziesiętnych ver. 2.2 Wielkości liczbowe (/) Znaczenie 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