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



Podobne dokumenty
Podstawy informatyki. Reprezentacja danych w systemach cyfrowych

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

Techniki multimedialne

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

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

Pracownia Komputerowa wyk ad VII

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

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

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

Teoretyczne Podstawy Informatyki

Technologie Informacyjne

Pracownia Komputerowa wykład VI

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

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

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

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

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

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

Arytmetyka komputera

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

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

Stan wysoki (H) i stan niski (L)

Cyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2

Pracownia Komputerowa wykład V

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

Systemy zapisu liczb.

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

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

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

PODSTAWY INFORMATYKI. Informatyka? - definicja

Podstawy Informatyki

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

Kodowanie informacji. Przygotował: Ryszard Kijanka

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

L6.1 Systemy liczenia stosowane w informatyce

Podstawy informatyki (2)

Metoda znak-moduł (ZM)

Pracownia Komputerowa wyk ad VI

Pracownia Komputerowa wykład IV

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

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

Architektura komputerów

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

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

DZIESIĘTNY SYSTEM LICZBOWY

Naturalny kod binarny (NKB)

Architektura komputerów

Kod U2 Opracował: Andrzej Nowak

Pracownia Komputerowa wyk ad IV

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

Arytmetyka binarna - wykład 6

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

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

Kodowanie informacji. Kody liczbowe

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

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

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

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

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

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

Pracownia Komputerowa wyk ad V

System Liczbowe. Szesnastkowy ( heksadecymalny)

Wstęp do Informatyki

Reprezentacja stałoprzecinkowa. Reprezentacja zmiennoprzecinkowa zapis zmiennoprzecinkowy liczby rzeczywistej

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

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

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

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

architektura komputerów w. 2

Systemy liczbowe używane w technice komputerowej

Zapis liczb binarnych ze znakiem

Pracownia komputerowa. Dariusz Wardecki, wyk. VIII

Moduł 2 Zastosowanie systemów liczbowych w informacji cyfrowej

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

Architektura komputerów

Wstęp do informatyki- wykład 1

dr inż. Jarosław Forenc

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. Reprezentacja liczb w komputerze Arytmetyka stało- i zmiennoprzecinkowa Przechowywanie danych pliki i foldery

Podstawy Informatyki dla Nauczyciela

1.1. Pozycyjne systemy liczbowe

ARCHITEKTURA KOMPUTERÓW Liczby zmiennoprzecinkowe

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

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

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

Pracownia komputerowa. Dariusz Wardecki, wyk. V

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

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

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

Podstawy Systemów Liczbowych

Architektura systemów komputerowych. Arytmetyka maszyn cyfrowych

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

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

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

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Podstawy informatyki (2)

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

Podstawy Informatyki

Pozycyjny system liczbowy

Transkrypt:

Reprezentacja danych w systemach komputerowych

Kod (łac. codex - spis), ciąg składników sygnału (kombinacji sygnałów elementarnych, np. kropek i kresek, impulsów prądu, symboli) oraz reguła ich przyporządkowania składnikom wiadomości (np. znakom pisma); w niektórych zastosowaniach, gł. przy przesyłaniu informacji podlegających utajnieniu, zw. szyfrem; kody są stosowane m.in. w telegrafii, w technice cyfrowej; np. k. binarny, k. ASCII, k. sygnałowy. Kodowanie (ang. Encoding) proces przetwarzania danych źródłowych do innej postaci. Dekodowanie (ang. Decoding) proces odtwarzania danych. zakodowanych Kodek jest skrótem od "koder/dekoder", co oznacza urządzenie lub program zdolny do przekształcania strumienia danych lub sygnału. Kodeki mogą zmienić strumień danych w formę zakodowaną (często w celu transmisji, składowania lub zaszyfrowania) lub odzyskać (odkodować) strumień danych z formy zakodowanej, by umożliwić ich odtwarzanie bądź obróbkę.

Kodowanie znakowe polega na stworzeniu sekwencji par znak liczba naturalna w celu zapisania tak zakodowanych danych w systemach komputerowych lub w celu transmisji.

ASCII (ang. American Standard Code for Information Interchange) - 7-bitowy kod przyporządkowujący liczby z zakresu 0-127 literom (alfabetu angielskiego), cyfrom, znakom przestankowym i innym symbolom oraz poleceniom sterującym. Przykładowo litera "a" jest kodowana liczbą 97, a polecenie "powrót karetki" liczbą 13. Litery, cyfry oraz inne znaki drukowane tworzą zbiór znaków ASCII. Jest to 95 znaków o kodach 32-126. Pozostałe 33 kody (0-31 i 127) to tzw. kody sterujące służące do sterowania urządzeniem odbierającym komunikat, np. drukarką czy terminalem. Kod ASCII został po raz pierwszy opublikowany w formie normy w 1967, a jego ostatnia modyfikacja była w 1986. Ponieważ kod ASCII jest 7-bitowy, a większość komputerów operuje na 8-bitowych bajtach, dodatkowy bit można wykorzystać na powiększenie zbioru kodowanych znaków. Powstało wiele różnych rozszerzeń ASCII wykorzystujących ósmy bit (np. norma ISO 8859, rozszerzenia firm IBM lub Microsoft), nazywanych stronami kodowymi.

Unicode (zwany czasem po polsku Unikod) komputerowy zestaw znaków mający w zamierzeniu obejmować wszystkie pisma używane na świecie. Definiują go dwa standardy - Unicode oraz ISO 10646. Znaki obu standardów są identyczne. Standardy te różnią się w drobnych kwestiach, m.in. Unicode określa sposób składu. Rozwijany jest przez konsorcjum, w którego skład wchodzą ważne firmy komputerowe, producenci oprogramowania, instytuty naukowe, agencje międzynarodowe oraz grupy zainteresowanych użytkowników. Konsorcjum współpracuje z organizacją ISO.

Bit (skrót od ang. binary digit) najmniejsza ilość informacji potrzebna do określenia, który z dwóch równie prawdopodobnych stanów przyjął układ. Jednostka logiczna. Jest to również najmniejsza jednostka informacji używana w odniesieniu do sprzętu komputerowego a oznaczana jest za pomocą b. Bajt najmniejsza adresowalna jednostka informacji pamięci komputerowej, składająca się z bitów. W praktyce przyjmuje się, że jeden bajt to 8 bitów.

Dla oznaczenia większych grup danych stosuje się przedrostki oparte o wielokrotność liczby 1024. Przedrostki binarne (IEC 60027-2) Nazwa Symbol Mnożnik kibibajt KiB 2 10 =1024 mebibajt MiB 2 20 =1024 2 gibibajt GiB 2 30 =1024 3 tebibajt TiB 2 40 =1024 4 pebibajt PiB 2 50 =1024 5 eksbibajt EiB 2 60 =1024 6 zebibajt ZiB 2 70 =1024 7 jobibajt YiB 2 80 =1024 8

Systemy liczbowe: Dwójkowy (binarny) system liczbowy to pozycyjny system liczbowy, w którym podstawą jest liczba 2. Do zapisu liczb potrzebne są więc tylko dwie cyfry: 0 i 1. 0b11001001 = 11001001 2 Dziesiętny (decymalny) system w którym podstawą jest liczba 10. Do zapisu wykorzystuje się cyfry: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. 201 = 201 10 Szesnastkowy (heksadecymalny) system w którym podstawą jest liczba 16. Do zapisu wykorzystuje się znaki: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. 0xC9 = C9 16

Konwersja z systemu binarnego: 11001001 2 0 * 2 + 1 = 1 1 * 2 + 1 = 3 3 * 2 + 0 = 6 6 * 2 + 0 = 12 12 * 2 + 1 = 25 25 * 2 + 0 = 50 50 * 2 + 0 = 100 100 * 2 + 1 = 201 201 10 11001001 2 16318421 2426 8 128 + 64 + 8 + 1 201 10

Konwersja na system binarny: 201 10 201 / 2 = 100 R 1 100 / 2 = 50 R 0 50 / 2 = 25 R 0 25 / 2 = 12 R 1 12 / 2 = 6 R 0 6 / 2 = 3 R 0 3 / 2 = 1 R 1 1 / 2 = 0 R 1 11001001 2

Konwersja z systemu szesnastkowego: C9 16 0 * 16 + 12(C) = 12 12 * 16 + 9(9) = 201 C9 16 11 6 16 * 12(C) + 1 * 9 201 10 201 10

Konwersja na system szesnastkowy: 201 10 201 / 16 = 12 R 9 12 / 16 = 0 R 12 C9 16

Konwersja binarny szesnastkowy: 11001001 2 1100 1001 C 9 C9 16

Kod uzupełnień do dwóch: Kod uzupełnień do dwóch (w skrócie U2 lub ZU2) jest obecnie najpopularniejszym sposobem zapisu liczb całkowitych na bitach. Jego popularność wynika z faktu, że operacje dodawania i odejmowania są w nim wykonywane tak samo jak dla liczb binarnych bez znaku. Z tego też powodu oszczędza się na kodach rozkazów procesora. W dwójkowym systemie liczbowym najstarszy bit liczby n-cyfrowej ma wagę 2 n 1. Jedyną różnicą, jaką wprowadza tu kod U2, jest zmiana wagi tego bitu na przeciwną ( 2 n 1 ). Bit ten jest nazywany bitem znaku, ponieważ świadczy o znaku całej liczby jeśli jest ustawiony (=1) cała liczba jest ujemna, jeśli jest skasowany (=0) liczba jest dodatnia lub równa 0. Zwiększając obszar zajmowany przez liczbę w kodzie U2 (np. z jednego bajta na dwa), dodawany obszar wypełnia się bitem znaku.

Kod uzupełnień do dwóch: Reprezentacja liczby -111 10 : -111 10 = NOT (111 10 ) 111 / 2 = 55 R 1 55 / 2 = 27 R 1 27 / 2 = 13 R 1 13 / 2 = 6 R 1 6 / 2 = 3 R 0 3 / 2 = 1 R 1 1 / 2 = 0 R 1 Reprezentacja liczby 11111010 2 : 11111010 2 = NOT (101 2 ) 0 * 2 + 1 = 1 1 * 2 + 0 = 2 2 * 2 + 1 = 5 NOT (5) = 5 NOT (1101111 2 ) = 10010000 2

Kod U2 może być połączony z kodem stałopozycyjnym w celu umożliwienia zapisu liczb niecałkowitych. Liczby takie można traktować jako liczby całkowite przy dodawaniu i odejmowaniu. Przy mnożeniu i dzieleniu wymagane są korekty, jeśli wynik ma mieć w tym samym miejscu przecinek. Zapis stałoprzecinkowy albo stałopozycyjny jeden ze sposobów zapisu liczb ułamkowych stosowanych w informatyce. Do zapisu liczby stałoprzecinkowej przeznaczona jest z góry określona ilość cyfr dwójkowych (bitów), a pozycję przecinka ustala się arbitralnie, w zależności od wymaganej dokładności. Np.. 0.625 10 = 1*0.5 + 0*0.25 + 1*0.125 = 1*2-1 + 0*2-2 + 1*2-3 = 101 2

Liczba zmiennoprzecinkowa jest komputerową reprezentacją liczb rzeczywistych zapisanych w postaci wykładniczej (zwanej też notacją naukową). Ze względu na wygodę operowania na takich liczbach przyjmuje się ograniczony zakres na mantysę i cechę: - mantysa K-bitowy ułamek M 2, - cecha L-bitowy wykładnik całkowity W 2 x M 10 W 102 10 gdzie M10 i W10 są dziesiętnymi odpowiednikami M 2 and W 2 Powoduje to, że reprezentacja jest tylko przybliżona a jedna liczba zmiennoprzecinkowa może reprezentować różne liczby rzeczywiste z pewnego odcinka.