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

Podobne dokumenty
dr inż. Jarosław Forenc

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

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

Pracownia Komputerowa wykład VI

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

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

Teoretyczne Podstawy Informatyki

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

Pracownia Komputerowa wyk ad VI

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

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

dr inż. Jarosław Forenc

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

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

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

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

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

dr inż. Jarosław Forenc

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

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

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

Technologie Informacyjne

Architektura komputerów

dr inż. Jarosław Forenc

Podstawy Informatyki

Podstawy informatyki. Reprezentacja danych w systemach cyfrowych

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

Kodowanie informacji. Przygotował: Ryszard Kijanka

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

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

Techniki multimedialne

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

Pracownia Komputerowa wyk ad VII

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

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

PODSTAWY INFORMATYKI. Informatyka? - definicja

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

Stan wysoki (H) i stan niski (L)

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 - wykład 6

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

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

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc

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

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

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

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

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Naturalny kod binarny (NKB)

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

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

LICZBY ZMIENNOPRZECINKOWE

Wstęp do Informatyki

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

Architektura komputerów

Architektura komputerów

Pracownia Komputerowa wykład V

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

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

Kodowanie liczb całkowitych w systemach komputerowych

architektura komputerów w. 2

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

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

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

Pracownia Komputerowa wykład IV

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

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

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

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

Podstawy informatyki (2)

Mikroinformatyka. Koprocesory arytmetyczne 8087, 80187, 80287, i387

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

Pozycyjny system liczbowy

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

Temat 4. Kodowanie liczb

Cyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2

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

1.1. Pozycyjne systemy liczbowe

Arytmetyka komputera

Arytmetyka stało i zmiennoprzecinkowa

Pracownia Komputerowa wyk ad IV

Metoda znak-moduł (ZM)

Reprezentacja symboli w komputerze. Liczby całkowite i zmiennoprzecinkowe. Programowanie Proceduralne 1

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

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

dr inż. Jarosław Forenc

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

L6.1 Systemy liczenia stosowane w informatyce

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

Zapis liczb binarnych ze znakiem

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

Technologie Informacyjne Wykład 4

Dodatek do Wykładu 01: Kodowanie liczb w komputerze

Zwykle liczby rzeczywiste przedstawia się w notacji naukowej :

Pracownia komputerowa. Dariusz Wardecki, wyk. VI

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

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

Transkrypt:

Rok akademicki 06/07, Pracownia nr /33 Pracownia nr Technologie informacyjne Politechnika Białostocka - Wydział Elektryczny semestr I, studia stacjonarne I stopnia Rok akademicki 06/07 Jednostki informacji bit, bajt Kodowanie znaków: ASCII, ISO 8859, liczb: NKB (BCN), U, BCD Liczby zmiennoprzecinkowe standard IEEE 754 Pracownia nr (03.0.06) dr inż. Jarosław Forenc Rok akademicki 06/07, Pracownia nr 3/33 Rok akademicki 06/07, Pracownia nr 4/33 Jednostki informacji - bit Jednostki informacji - bit Bit (ang. binary digit) -podstawowa jednostka informacji stosowana w informatyce i telekomunikacji Wielokrotności bitów: Bit przyjmuje jedną z dwóch wartości: 0(zero) (jeden) Bit jest tożsamy z cyfrą w systemie dwójkowym Oznaczenia bitów: b -zalecenie standardu IEEE 54 z 00 roku bit - zalecenie standardu IEC 6007 Przedrostkibinarne zostały wprowadzone w 998 roku w celu odróżnienia przedrostków o mnożniku 000 od przedrostków o mnożniku 04

Rok akademicki 06/07, Pracownia nr 5/33 Rok akademicki 06/07, Pracownia nr 6/33 Jednostki informacji - bajt 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) 8-bitowy bajt nazywany jest także oktetem Bajt można podzielić na dwie połówki 4-bitowe nazywane tetradami(ang. nibbles) Za pomocą jednego bajtu można zapisać 56 różnych wartości: 0000 0000 0 0000 000 0 54 55 Najczęściej stosowanym skrótem dla bajtujest wielka litera B (uwaga: Boznacza też bela, ale częściej używa się db-decybel) Rok akademicki 06/07, Pracownia nr 7/33 Rok akademicki 06/07, Pracownia nr 8/33 Jednostki informacji - bajt Jednostki informacji - przykłady Wielokrotności bajtów: Stosujemy mnożnik używany w informatyce (04) kb B: kb 04 B MB B: MB 04 04 048 576 B GB B: GB 04 04 04 073 74 84 B MB kb: MB 04 048 kb GB kb: 3 GB 3 04 04 3 45 78 kb TB kb: 4 MB 4 04 04 04 4 94 967 96 kb Przedrostki binarne (dwójkowe) nie zostały przyjęte przez wszystkie środowiska zajmujące się informatyką

Rok akademicki 06/07, Pracownia nr 9/33 Rok akademicki 06/07, Pracownia nr 0/33 Kodowanie ASCII Kodowanie-proces przekształcania jednego rodzaju postaci informacji na inną postać Alfanumeryczne ASCII ISO 646 ISO 8859 Kody Liczbowe NKB BCD z N Inne Graya Morse a ASCII -American Standard Code for Information Interchange 7-bitowy kod przypisujący liczby z zakresu 0-7: - literom (alfabet angielski) - cyfrom - znakom przestankowym - innym symbolom - poleceniom sterującym kody 0-3, 7-33 kody sterujące służące do sterowania urządzeniami typu drukarka czy terminal EBCDIC z 5 U kody 3-6 -95 kodów tworzących zbiór znaków ASCII Rok akademicki 06/07, Pracownia nr /33 Rok akademicki 06/07, Pracownia nr /33 ISO/IEC 8859 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-7 takie same jak ASCII, zaś pozycjom 8-59 przypisane są dodatkowe kody sterujące, tzw. C (nieużywane)... ISO 8859- (Latin-) - alfabet łaciński dla Europy zachodniej ISO 8859- (Latin-) - ł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 ISO/IEC 8859-, Latin- ( środkowo, wschodnioeuropejskie ) przykład: A -kod: 4 (6) 40 (6) + (6) Ę -kod: CA (6) C0 (6) + A (6) 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 9 znaków łacińskiego pisma kodowanie zgodne z Polską Normą SP -spacja NBSP - twarda spacja SHY - miękki dywiz (myślnik)

Rok akademicki 06/07, Pracownia nr 3/33 Rok akademicki 06/07, Pracownia nr 4/33 -komputerowy zestaw znaków mający obejmować wszystkie pisma i inne znaki (symbole muzyczne, techniczne, wymowy) używane na świecie przypisuje unikalny numerkażdemu znakowi, niezależny od używanej platformy, programu czy języka Konsorcjum: http://www.unicode.org Pierwsza wersja:.0(0.99) Ostatnia wersja: 9.0( czerwca 06) The Consortium. The Standard, Version 9.0.0, (Mountain View, CA: The Consortium, 06) http://www.unicode.org/versions/9.0.0 Koduje 8.7 znaków - Zakresy Zakres: Znaczenie: 0000-007F Basic Latin (to samo co w ASCII) 0080-00FF Latin- Supplement (to samo co w ISO/IEC 8859-) 000-07F Latin Extended-A 080-04F Latin Extended-B 050-0AF IPA Extensions 0B0-0FF Spacing Modifiers Letters... 0370-03FF Greek 0400-04FF Cyrillic... D00 - D7F Phonetic Extensions D80 - DBF Phonetic Extensions Supplement E00 - EFF Latin Extended Additional F00 - FFF Greek Extended... Rok akademicki 06/07, Pracownia nr 5/33 Rok akademicki 06/07, Pracownia nr 6/33 Istnieją trzy metody kodowania (zapisu binarnego) różniące się liczbą bajtów przeznaczonych do opisania kodu znaku źródło: The Consortium. The Standard, Version 5..0

Rok akademicki 06/07, Pracownia nr 7/33 Rok akademicki 06/07, Pracownia nr 8/33 Kody alfanumeryczne - przykład Tekst: Sala WE-0 Kody alfanumeryczne - przykład Tekst: Żółty wąż S a l a W E - 0 ASCII ISO 8859-53 6 6c 6 0 57 45 d 3 3 30 53 6 6c 6 0 57 45 d 3 3 30 53 6 6c 6 0 57 45 d 3 3 30 system szesnastkowy ASCII ISO 8859-83 97 08 97 3 87 69 45 49 49 48 83 97 08 97 3 87 69 45 49 49 48 83 97 08 97 3 87 69 45 49 49 48 system dziesiętny Rok akademicki 06/07, Pracownia nr 9/33 Rok akademicki 06/07, Pracownia nr 0/33 NKB (BCN) - liczby całkowite bez znaku U - liczby całkowite ze znakiem Zapis liczby w systemie dwójkowym: ZU, uzupełnień do dwóch, two s complement Używając n-bitów można zapisać liczbę z zakresu: Najstarszy bit jest bitem znaku liczby: 0 -dodatnia, - ujemna n X( ) 0, 8 bitów 6 bitów 3 bity 64 bity 0... 55 0... 65 535 0... 4 94 967 95 0... 8 446 744 073 709 55 65 Wartość liczby: X 0 n x + x + x +... + x 0 n + x n ( n ) 8 trylionów 446 biliardów 744 biliony 73 miliardy 709 milionów 55 tysięcy 65

Rok akademicki 06/07, Pracownia nr /33 Rok akademicki 06/07, Pracownia nr /33 U - zamiana na liczbę przeciwną BCD Krok : inwersja (negacja) wszystkich bitów modułu liczby, tj. zamiana 0 na i na 0 Krok : zwiększenie wyniku o 75? 000 ( 0)?(U) ( U)? 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 68 } } 6 } 8 000 00 000 68? (BCD) 00000000 (BCD) 75 ( 0) 000(U) 000( U) 75 00 00 00 { 00 { 00 { 9 000000 5 00 3 (BCD) (BCD)? 953 Rok akademicki 06/07, Pracownia nr 3/33 Rok akademicki 06/07, Pracownia nr 4/33 Zapis zmiennoprzecinkowy liczby rzeczywistej Postać znormalizowana zapisu liczby Postać zmiennoprzecinkowa umożliwia zapis bardzo dużych lub bardzo małych liczb w prostszej i wygodniejszej formie 000000000000, 0 3-30000000000000000000 -3,0 0 9 Tę samą liczbę można zapisać w różnych sposób 43 0 4,3 0,43 0 3 0,43 0 4 W postaci znormalizowanej mantysa spełnia nierówność: 0,00000000000,0 0 - B > M Zapis liczby zmiennoprzecinkowej ma postać gdzie: S E L ( ) M B S - znak liczby (ang. sign), przyjmuje wartość 0 lub M - mantysa (ang. mantissa), liczba ułamkowa B - podstawa systemu liczbowego (ang. base) E - wykładnik (ang. exponent), cecha, liczba całkowita,43 0 3 -to jest postać znormalizowana, gdyż: 0>,43 0,43 0 4 -to nie jest postać znormalizowana 4,3 0 -to nie jest postać znormalizowana

Rok akademicki 06/07, Pracownia nr 5/33 Rok akademicki 06/07, Pracownia nr 6/33 Liczby zmiennoprzecinkowe w systemie binarnym Standard IEEE 754 Liczba bitów przeznaczonych na mantysę i wykładnik jest ograniczona Standard opracowany w celu ujednolicenia operacji na liczbach zmiennoprzecinkowych na różnych platformach sprzętowych IEEE Std. 754-008 - IEEE Standard for Floating-Point Arithmetic W systemie binarnym podstawa systemu jest stała: B L ( ) M S E Wykładnik jest zapisywany jako wartość przesunięta o pewną stałą (ang. biased exponent) - zapis z przesuniętym wykładnikiem S L ( ) M E BIAS Wartości przesunięcia: 7(format 3-bit.), 03(format 64-bit.) Precyzja Pojedyncza (Single Precision, binary3) Pojedyncza rozszerzona (Single Extended) Podwójna (Double Precision, binary64) Podwójna rozszerzona (Double Extended) Długość słowa [bity] Znak [bity] Długość [bity] Wykładnik Zakres Długość [bity] Mantysa Cyfry znaczące 3 8 ±7 0 ±38 3 7 43 ±03 0 ±308 3 0 64 ±03 0 ±308 5 6 79 5 ±6383 0 ±493 63 9 Rok akademicki 06/07, Pracownia nr 7/33 Rok akademicki 06/07, Pracownia nr 8/33 Standard IEEE 754 - liczby 3-bitowe Standard IEEE 754 - liczby 3-bitowe Liczba pojedynczej precyzji przechowywana jest na 3 bitach: Przykład: 3 S E E E E E E E E MM znak wykładnik (8 bitów) 4 3 6 5 8 7 0 MMMMMMMMMMMMMMMMMMMMM mantysa (3 bity) Bit znaku:0 - liczba dodatnia, - liczba ujemna Wykładnikzapisywany jest na z nadmiarem o wartości 7 i przyjmuje wartości od -7 do 8 Mantysa w większości przypadków jest znormalizowana Mantysa zawiera się w przedziale i, jej pierwszy bit jest zawsze równy i nie jest zapamiętywany Bit ten jest automatycznie uwzględniany podczas wykonywania obliczeń obliczmy wartość dziesiętną liczby zmiennoprzecinkowej 000000000000000000000000000 (? dzielimy liczbę na części określamy znak liczby IEEE754) 0{ 00000 443 000000000000000000000 44444 444443 S bit znaku S 0 E wykladnik liczba dodatnia M mantysa (tylko czesc ulamkowa) obliczamy wykładnik pamiętając, że w reprezentacji 3-bitowej nadmiar wynosi 7 E 00000 ( ) 8 + 4 + 33 7 { 6 nadmiar

Rok akademicki 06/07, Pracownia nr 9/33 Rok akademicki 06/07, Pracownia nr 30/33 Standard IEEE 754 - liczby 3-bitowe Standard IEEE 754 - zero Przykład (cd.): wyznaczamy mantysędopisując na początku ( -część całkowita) i stawiając przecinek M,000000000000000000000 0 4 + + + 0,5 + 0,065,565 - zero dodatnie - zero ujemne wartość dziesiętną liczby zmiennoprzecinkowej obliczamy według wzoru: S E L ( ) M podstawiając otrzymujemy: S 0, E 6( 0), M, 565 0 6 L ( ),565 00 bit znaku może przyjmować dowolną wartość przy porównaniach zero dodatnie i ujemne są traktowane jako równe sobie 000000000000000000000000000 ( 00 IEEE754) Rok akademicki 06/07, Pracownia nr 3/33 Rok akademicki 06/07, Pracownia nr 3/33 Standard IEEE 754 - nieskończoność - nieskończoność dodatnia Standard IEEE 754 - liczba zdenormalizowana 0 0 0... 0 0 0 x x x x x x x x x x x x 0... znak wykładnik mantysa - nieskończoność ujemna 0 0... 0 0 0 x x x x x x x x x x x x 0... znak wykładnik mantysa 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 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, tzn. reprezentuje liczbę o postaci 0,xxx xxx, a nie,xxx xxx

Rok akademicki 06/07, Pracownia nr 33/33 Standard IEEE 754 - nieliczby... x 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 x 0 x x x x x... x x x x x znak wykładnik mantysa SNaN(Signaling NaN) głośne nieliczby powodują powstanie wyjątków w operacjach arytmetycznych i przerwanie wykonywania programu najczęściej oznaczają wartość niedozwoloną