dr inż. Jarosław Forenc

Podobne dokumenty
Jednostki informacji - bit. Kodowanie znaków: ASCII, ISO 8859, Unicode liczb: NKB (BCN), U2, BCD. Liczby zmiennoprzecinkowe standard IEEE 754

Ochrona danych osobowych. Pozycyjne systemy liczbowe. Jednostki informacji. Kodowanie znaków ASCII, ISO 8859, Unicode. Kodowanie liczb NKB, U2, BCD

Reprezentacja stałoprzecinkowa. Reprezentacja zmiennoprzecinkowa zapis zmiennoprzecinkowy liczby rzeczywistej

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

Pracownia Komputerowa wykład VI

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

Kodowanie liczb. Reprezentacja liczb całkowitych. Standard IEEE 754. dr inż. Jarosław Forenc

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

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

Politechnika Białostocka, Wydział Elektryczny, Katedra Elektrotechniki Teoretycznej i Metrologii ul. Wiejska 45D, Białystok

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

dr inż. Jarosław Forenc

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

Pracownia Komputerowa wyk ad VI

Teoretyczne Podstawy Informatyki

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

Sposób reprezentacji informacji w systemie. Reprezentacja informacji. Dzięki kodowaniu informacji.

kodowanie informacji Autor prezentacji: 1 prof. dr hab. Maria Hilczer

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc

Kodowanie informacji. Przygotował: Ryszard Kijanka

Jednostki informacji cyfrowej. Kodowanie znaków. Kodowanie liczb. dr inż. Jarosław Forenc

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

Podstawy Informatyki

Informatyka 1. Wykład nr 4 ( ) Plan wykładu nr 4. Politechnika Białostocka. - Wydział Elektryczny

Architektura komputerów

Technologie Informacyjne

Jednostki informacji cyfrowej. Kodowanie znaków. Kodowanie liczb. Reprezentacja liczb w systemach komputerowych. Reprezentacja stałoprzecinkowa

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

Pracownia Komputerowa wyk ad VII

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

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

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

dr inż. Jarosław Forenc

Techniki multimedialne

Podstawy informatyki. Reprezentacja danych w systemach cyfrowych

Arytmetyka binarna - wykład 6

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

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

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

Kodowanie liczb. Kodowanie znaków. Reprezentacja liczb w systemach komputerowych Reprezentacja stałoprzecinkowa. dr inŝ.

Stan wysoki (H) i stan niski (L)

dr inż. Jarosław Forenc

Wstęp do Informatyki

Pracownia Komputerowa wykład V

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

Komputerowa reprezentacja znaków i liczb. dr inż. Izabela Szczęch Politechnika Poznańska Podstawy informatyki

PODSTAWY INFORMATYKI. Informatyka? - definicja

Naturalny kod binarny (NKB)

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

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

Architektura systemów komputerowych Laboratorium 5 Kodowanie liczb i tekstów

LICZBY ZMIENNOPRZECINKOWE

Architektura komputerów

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

Pracownia Komputerowa wykład IV

Architektura komputerów

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

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

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

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

Politechnika Białostocka, Wydział Elektryczny, Katedra Elektrotechniki Teoretycznej i Metrologii ul. Wiejska 45D, Białystok

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

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

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

Kodowanie liczb całkowitych w systemach komputerowych

architektura komputerów w. 2

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

Pracownia Komputerowa wyk ad IV

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

Pozycyjny system liczbowy

Podstawy informatyki. Izabela Szczęch. Politechnika Poznańska

Cyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2

Mikroinformatyka. Koprocesory arytmetyczne 8087, 80187, 80287, i387

Temat 4. Kodowanie liczb

Arytmetyka stało i zmiennoprzecinkowa

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

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

dr inż. Jarosław Forenc

Systemy pozycyjne. Systemy niepozycyjne. Kodowanie liczb. Kodowanie znaków. dr inż. Jarosław Forenc

Zapis liczb binarnych ze znakiem

Podstawy informatyki (2)

Pracownia Komputerowa wyk ad V

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

Technologie Informacyjne Wykład 4

Arytmetyka komputera

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

Jednostki informacji cyfrowej. Kodowanie znaków. Język C. dr inż. Jarosław Forenc. FLOPS (FLoating point Operations Per Second)

Zwykle liczby rzeczywiste przedstawia się w notacji naukowej :

1.1. Pozycyjne systemy liczbowe

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

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

Metoda znak-moduł (ZM)

Liczby całkowite. Wstęp do Informatyki Podstawy arytmetyki komputerowej c.d. Kod BCD (Binary Coded Decimal) Arytmetyka liczb całkowitych

Dodatek do Wykładu 01: Kodowanie liczb w komputerze

L6.1 Systemy liczenia stosowane w informatyce

Wprowadzenie do informatyki - ć wiczenia

Pracownia komputerowa. Dariusz Wardecki, wyk. VIII

Cel wykładu. Cel wykładu. Cel wykładu, cd. Cel wykładu, cd. Cel wykładu, cd. Z. Postawa, "Podstawy Informatyki II" Strona: 1 z 6

Transkrypt:

Technologie informacyjne Politechnika Białostocka - Wydział Elektryczny semestr I, studia stacjonarne I stopnia Rok akademicki 2014/2015 Pracownia nr 2 (08.10.2014) dr inż. Jarosław Forenc

Rok akademicki 2014/2015, Pracownia nr 2 2/30 Pracownia nr 2 Jednostki informacji bit, bajt Kodowanie znaków: ASCII, ISO 8859, Unicode liczb: NKB (BCN), U2, BCD Liczby zmiennoprzecinkowe standard IEEE 754

Rok akademicki 2014/2015, Pracownia nr 2 3/30 Jednostki informacji - bit Bit (ang. binary digit) -podstawowa jednostka informacji stosowana w informatyce i telekomunikacji Bit przyjmuje jedną z dwóch wartości: 0(zero) 1(jeden) Bit jest tożsamy z cyfrą w systemie dwójkowym Oznaczenia bitów: b -zalecenie standardu IEEE 1541 z 2002 roku bit - zalecenie standardu IEC 60027

Rok akademicki 2014/2015, Pracownia nr 2 4/30 Jednostki informacji - bit Wielokrotności bitów: Przedrostkibinarne zostały wprowadzone w 1998 roku w celu odróżnienia przedrostków o mnożniku 1000 od przedrostków o mnożniku 1024

Rok akademicki 2014/2015, Pracownia nr 2 5/30 Jednostki informacji - bajt Bajt(ang. byte) -najmniejsza adresowalnajednostka informacji pamięci komputerowej składająca się z bitów W praktyce przyjmuje się, że jeden bajt to 8 bitów (choć nie wynika to z powyższej definicji) Za pomocą jednego bajtu można zapisać 256 różnych wartości: 0000 0000 0 0000 0001 1 1111 1110 254 1111 1111 255

Rok akademicki 2014/2015, Pracownia nr 2 6/30 Jednostki informacji - bajt Aby uniknąć niejednoznaczności, 8-bitowy bajt nazywany jest także oktetem Bajt 8-bitowy można podzielić na dwie połówki 4-bitowe nazywane tetradami(ang. nibbles) Najczęściej stosowanym skrótem dla bajtujest wielka litera B (uwaga: Boznacza też bela, ale częściej używa się db-decybel)

Rok akademicki 2014/2015, Pracownia nr 2 7/30 Jednostki informacji - bajt Wielokrotności bajtów: Przedrostki binarne (dwójkowe) nie zostały przyjęte przez wszystkie środowiska zajmujące się informatyką

Rok akademicki 2014/2015, Pracownia nr 2 8/30 Kodowanie Kodowanie-proces przekształcania jednego rodzaju postaci informacji na inną postać Kody Alfanumeryczne Liczbowe Inne ASCII ISO 646 ISO 8859 EBCDIC Unicode NKB BCD 1 z N 2 z 5 U2 Graya Morse a

Rok akademicki 2014/2015, Pracownia nr 2 9/30 ASCII ASCII -American Standard Code for Information Interchange 7-bitowy kod przypisujący liczby z zakresu 0-127: - literom (alfabet angielski) - cyfrom - znakom przestankowym - innym symbolom - poleceniom sterującym kody 0-31, 127-33 kody sterujące służące do sterowania urządzeniami typu drukarka czy terminal kody 32-126 -95 kodów tworzących zbiór znaków ASCII

Rok akademicki 2014/2015, Pracownia nr 2 10/30 ISO/IEC 8859 ISO/IEC 8859to zestaw standardów służących do kodowania znaków za pomocą 8 bitów Wszystkie zestawy ISO 8859 mają znaki 0-127 takie same jak ASCII, zaś pozycjom 128-159 przypisane są dodatkowe kody sterujące, tzw. C1 (nieużywane)... ISO 8859-1 (Latin-1) - alfabet łaciński dla Europy zachodniej ISO 8859-2 (Latin-2) - łaciński dla Europy środkowej i wschodniej (Polska Norma) ISO 8859-3 (Latin-3) - łaciński dla Europy południowej ISO 8859-4 (Latin-4) - łaciński dla Europy północnej ISO 8859-5 (Cyrillic) - dla cyrylicy ISO 8859-6 (Arabic) - dla alfabetu arabskiego ISO 8859-7 (Greek)- dla alfabetu greckiego ISO 8859-8 (Hebrew)- dla alfabetu hebrajskiego

Rok akademicki 2014/2015, Pracownia nr 2 11/30 ISO/IEC 8859-2 ISO/IEC 8859-2, Latin-2 ( środkowo, wschodnioeuropejskie ) przykład: A -kod: 41 (16) = 40 (16) + 1 (16) Ę -kod: CA (16) = C0 (16) + A (16) dostępne języki: bośniacki, chorwacki, czeski, węgierski, polski, rumuński, serbski, serbsko-chorwacki, słowacki, słoweński, górno- i dolnołużycki możliwość przedstawienia znaków w języku niemieckim i angielskim 191 znaków łacińskiego pisma kodowanie zgodne z Polską Normą SP -spacja NBSP - twarda spacja SHY - miękki dywiz (myślnik)

Rok akademicki 2014/2015, Pracownia nr 2 12/30 Unicode Unicode-komputerowy zestaw znaków mający obejmować wszystkie pisma i inne znaki (symbole muzyczne, techniczne, wymowy) używane na świecie Unicodeprzypisuje unikalny numerkażdemu znakowi, niezależny od używanej platformy, programu czy języka Konsorcjum: http://www.unicode.org Pierwsza wersja: Unicode1.0(10.1991) Ostatnia wersja: Unicode7.0.0(16 czerwca 2014) The Unicode Consortium. The Unicode Standard, Version 7.0.0, (Mountain View, CA: The Unicode Consortium, 2014) http://www.unicode.org/versions/unicode7.0.0/ Koduje ponad 110.000 znaków

Rok akademicki 2014/2015, Pracownia nr 2 13/30 Unicode - Zakresy Zakres: Znaczenie: 0000-007F Basic Latin (to samo co w ASCII) 0080-00FF Latin-1 Supplement (to samo co w ISO/IEC 8859-1) 0100-017F Latin Extended-A 0180-024F Latin Extended-B 0250-02AF IPA Extensions 02B0-02FF Spacing Modifiers Letters... 0370-03FF Greek 0400-04FF Cyrillic... 1D00-1D7F Phonetic Extensions 1D80-1DBF Phonetic Extensions Supplement 1E00-1EFF Latin Extended Additional 1F00-1FFF Greek Extended...

Rok akademicki 2014/2015, Pracownia nr 2 14/30 Unicode Istnieją trzy metody kodowania (zapisu binarnego) różniące się liczbą bajtów przeznaczonych do opisania kodu znaku źródło: The Unicode Consortium. The Unicode Standard, Version 5.2.0

Rok akademicki 2014/2015, Pracownia nr 2 15/30 Unicode

Rok akademicki 2014/2015, Pracownia nr 2 16/30 NKB (BCN) - liczby całkowite bez znaku Zapis liczby w systemie dwójkowym: Używając n-bitów można zapisać liczbę z zakresu: n X( 2) = 0, 2 1 8 bitów 16 bitów 32 bity 64 bity 0... 255 0... 65 535 0... 4 294 967 295 0... 18 446 744 073 709 551 615 18 trylionów 446 biliardów 744 biliony 73 miliardy 709 milionów 551 tysięcy 615

Technologie informacyjne, studia stacjonarne I stopnia dr inż. Jarosław Forenc Rok akademicki 2014/2015, Pracownia nr 2 17/30 U2 U2 - liczby całkowite ze znakiem liczby całkowite ze znakiem ZU2, uzupełnień do dwóch, two s complement Najstarszy bit jest bitem znaku liczby: 0 -dodatnia, 1 - ujemna Wartość liczby: ) 2 ( x 2 x... 2 x 2 x 2 x X 1 n 1 n 2 n 2 n 2 2 1 1 0 0 (10) + + + + + =

Rok akademicki 2014/2015, Pracownia nr 2 18/30 U2 - zamiana na liczbę przeciwną Krok 1: inwersja (negacja) wszystkich bitów modułu liczby, tj. zamiana 0 na 1 i 1 na 0 Krok 2: zwiększenie wyniku o 1 75 =? 10110101 = ( 10)?(U2) ( U2)?(10) 75 = ( 10) 10110101(U2) 10110101 ( U2) = 75(10)

Rok akademicki 2014/2015, Pracownia nr 2 19/30 BCD Binary-Coded Decimal - dziesiętny zakodowany dwójkowo BCD-sposób zapisu liczb polegający na zakodowaniu kolejnych cyfr liczby dziesiętnej w 4-bitowym systemie dwójkowym (NKB) Istnieje kilka wariantów kodu BCD 168 (10) } 1 } 6 } 8 0001 0110 1000 168 (10) =? (BCD) = 000101101000 (BCD) 1001 0101 1001 { 0101 { 0011 { 9 100101010011 5 0011 3 (BCD) (BCD) =? = 953 (10) (10)

Rok akademicki 2014/2015, Pracownia nr 2 20/30 Zapis zmiennoprzecinkowy liczby rzeczywistej Postać zmiennoprzecinkowa umożliwia zapis bardzo dużych lub bardzo małych liczb w prostszej i wygodniejszej formie 12000000000000 = 1,2 10 13-30000000000000000000 = -3,0 10 19 0,000000000001 = 1,0 10-12 Zapis liczby zmiennoprzecinkowej ma postać gdzie: L = ( 1) S M B S - znak liczby (ang. sign), przyjmuje wartość 0 lub 1 M - mantysa (ang. mantissa), liczba ułamkowa B - podstawa systemu liczbowego (ang. base) E - wykładnik (ang. exponent), cecha, liczba całkowita E

Rok akademicki 2014/2015, Pracownia nr 2 21/30 Postać znormalizowana zapisu liczby Tę samą liczbę można zapisać w różnych sposób 243 10 1 = 24,3 10 2 = 2,43 10 3 = 0,243 10 4 W postaci znormalizowanej mantysa spełnia nierówność: B > M 1 2,43 10 3 -to jest postać znormalizowana, gdyż: 10> 2,43 1 0,243 10 4 -to nie jest postać znormalizowana 24,3 10 2 -to nie jest postać znormalizowana

Rok akademicki 2014/2015, Pracownia nr 2 22/30 Liczby zmiennoprzecinkowe w systemie binarnym Liczba bitów przeznaczonych na mantysę i wykładnik jest ograniczona W systemie binarnym podstawa systemu jest stała: B = 2 L = ( 1) M S 2 E Wykładnik jest zapisywany jako wartość przesunięta o pewną stałą (ang. biased exponent) - zapis z przesuniętym wykładnikiem L = ( 1) S M 2 E BIAS Wartości przesunięcia: 127(format 32-bit.), 1023(format 64-bit.)

Rok akademicki 2014/2015, Pracownia nr 2 23/30 Standard IEEE 754 Standard opracowany w celu ujednolicenia operacji na liczbach zmiennoprzecinkowych na różnych platformach sprzętowych IEEE Std. 754-2008 - IEEE Standard for Floating-Point Arithmetic Precyzja Długość słowa [bity] Znak [bity] Długość [bity] Wykładnik Zakres Długość [bity] Mantysa Cyfry znaczące Pojedyncza (ang. single) Pojedyncza rozszerzona (ang. single extended) Podwójna (ang. double) Podwójna rozszerzona (ang. double extended) 32 1 8 2 ±127 10 ±38 23 7 43 1 11 2 ±1023 10 ±308 31 10 64 1 11 2 ±1023 10 ±308 52 16 79 1 15 2 ±16383 10 ±4932 63 19

Rok akademicki 2014/2015, Pracownia nr 2 24/30 Standard IEEE 754 - liczby 32-bitowe Liczba pojedynczej precyzji przechowywana jest na 32 bitach: 31 S E 24 23 16 15 8 7 0 E E E E E E E MMMMMMMMMMMMMM MMMMM MMMM znak wykładnik (8 bitów) mantysa (23 bity) Bit znaku:0 - liczba dodatnia, 1 - liczba ujemna Wykładnikzapisywany jest na z nadmiarem o wartości 127 i przyjmuje wartości od -127 do 128 Mantysa w większości przypadków jest znormalizowana Mantysa zawiera się w przedziale 1i 2, jej pierwszy bit jest zawsze równy 1 i nie jest zapamiętywany Bit ten jest automatycznie uwzględniany podczas wykonywania obliczeń

Rok akademicki 2014/2015, Pracownia nr 2 25/30 Standard IEEE 754 - liczby 32-bitowe Przykład: obliczmy wartość dziesiętną liczby zmiennoprzecinkowej 01000010110010000000000000000000 ( =? IEEE754) (10) dzielimy liczbę na części 0{ 10000101 14243 10010000000000000000000 144444 2444443 S bit znaku E wykladnik M mantysa (tylko czesc ulamkowa) określamy znak liczby S = 0 liczba dodatnia obliczamy wykładnik pamiętając, że w reprezentacji 32-bitowej nadmiar wynosi 127 E = 10000101 = ( 2) = 128 + 4 + 1 = 133 127 { 6(10) nadmiar

Rok akademicki 2014/2015, Pracownia nr 2 26/30 Standard IEEE 754 - liczby 32-bitowe Przykład (cd.): wyznaczamy mantysędopisując na początku 1 (1 -część całkowita) i stawiając przecinek M = 1,10010000000000000000000 = = 0 1 4 1 2 + 1 2 + 1 2 = 1 + 0,5 + 0,0625 = 1,5625 wartość dziesiętną liczby zmiennoprzecinkowej obliczamy według wzoru: S E L = ( 1) M 2 podstawiając otrzymujemy: S = 0, E = 6 = 0 6 L = ( 1) 1,5625 2 = ( 10), M 1, 5625(10) 100 (10) (10) 01000010110010000000000000000000 ( = 100 IEEE754) (10)

Rok akademicki 2014/2015, Pracownia nr 2 27/30 Standard IEEE 754 - zero - zero dodatnie - zero ujemne bit znaku może przyjmować dowolną wartość przy porównaniach zero dodatnie i ujemne są traktowane jako równe sobie

Rok akademicki 2014/2015, Pracownia nr 2 28/30 Standard IEEE 754 - nieskończoność - nieskończoność dodatnia - nieskończoność ujemna bit znaku określa czy mamy nieskończoność dodatnią czy ujemną nieskończoność występuje w przypadku wystąpienia nadmiaru (przepełnienia) oraz przy dzieleniu przez zero

Rok akademicki 2014/2015, Pracownia nr 2 29/30 Standard IEEE 754 - liczba zdenormalizowana 0 0 0 0... 0 0 0 x x x x x x... x x x x x x znak wykładnik mantysa 1 0 0 0... 0 0 0 x x x x x x... x x x x x x znak wykładnik mantysa pojawia się, gdy występuje niedomiar (ang. underflow), ale wynik operacji można jeszcze zapisać denormalizując mantysę wtedy mantysa nie posiada domyślnej części całkowitej równej 1, tzn. reprezentuje liczbę o postaci 0,xxx xxx, a nie 1,xxx xxx

Rok akademicki 2014/2015, Pracownia nr 2 30/30 Standard IEEE 754 - nieliczby x 1 1 1... 1 1 1 1 x x x x x... x x x x x x znak wykładnik mantysa QNaN(Quiet NaN) ciche nieliczby ciche nieliczby przechodzą przez działania arytmetyczne (ich wystąpienie nie powoduje przerwania wykonywania programu) najczęściej oznaczają wartość niezdefiniowaną x 1 1 1... 1 1 1 0 x x x x x... x x x x x x SNaN(Signaling NaN) głośne nieliczby znak wykładnik mantysa powodują powstanie wyjątków w operacjach arytmetycznych i przerwanie wykonywania programu najczęściej oznaczają wartość niedozwoloną