dr inż. Jarosław Forenc

Podobne dokumenty
dr inż. Jarosław Forenc

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

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc

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

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

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

dr inż. Jarosław Forenc

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

Pracownia Komputerowa wyk ad VII

Komunikacja człowiek-komputer

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

dr inż. Jarosław Forenc

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

Kodowanie informacji. Przygotował: Ryszard Kijanka

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

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

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

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

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

Podstawy informatyki. Reprezentacja danych w systemach cyfrowych

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

dr inż. Paweł Myszkowski

Kody liczbowe - Naturalny Kod Binarny (NKB) Kody liczbowe - Kod BCD. Kody liczbowe - Przechowywanie liczb w kodzie BCD

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

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

Kody liczbowe - Naturalny Kod Binarny (NKB) Kody liczbowe - Kod BCD. Kody liczbowe - Przechowywanie liczb w kodzie BCD

Techniki multimedialne

PODSTAWY INFORMATYKI. Informatyka? - definicja

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

konsultacje: dr inŝ. Jarosław Forenc Dydaktyka - slajdy prezentowane na wykładzie

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:

Pracownia komputerowa. Dariusz Wardecki, wyk. VIII

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

Kodowanie informacji. Kody liczbowe

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

DZIESIĘTNY SYSTEM LICZBOWY

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

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

Teoretyczne Podstawy Informatyki

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

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

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

1.1. Pozycyjne systemy liczbowe

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

Kodowanie liczb całkowitych w systemach komputerowych

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

Naturalny kod binarny (NKB)

Stan wysoki (H) i stan niski (L)

Technologie Informacyjne

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. Pojęcie liczebności. Liczenie bez liczebników. Podstawy arytmetyki komputerowej. Cezary Bolek

Arytmetyka binarna - wykład 6

Pracownia Komputerowa wykład IV

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

Pracownia Komputerowa wykład V

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

SYSTEMY LICZBOWE 275,538 =

Reprezentacja stałoprzecinkowa. Reprezentacja zmiennoprzecinkowa zapis zmiennoprzecinkowy liczby rzeczywistej

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

Architektura komputerów

Cyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2

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

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

Pracownia Komputerowa wykład VI

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

Pracownia Komputerowa wyk ad IV

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

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

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

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

Programowanie Niskopoziomowe

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

Zapis liczb binarnych ze znakiem

ARCHITEKTURA KOMPUTERÓW. Reprezentacja danych w komputerach

Wstęp do Informatyki

Podstawy Informatyki dla Nauczyciela

Podstawy Informatyki

Podstawy programowania w C++

Arytmetyka komputera

Technika Cyfrowa i Mikroprocesorowa

Architektura komputerów

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

Cyfrowy zapis informacji

Podstawy informatyki (2)

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Dodatek Technologie internetowe 1. UTF-8 wg 2. Adresy URL

L6.1 Systemy liczenia stosowane w informatyce

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

Architektura komputerów

O oszczędnym dziennikarzu, czyli czym jest

Pracownia Komputerowa wyk ad V

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

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

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

Pracownia Komputerowa wyk ad VI

Transkrypt:

Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2013/2014 Wykład nr 2 (24.03.2014)

Rok akademicki 2013/2014, Wykład nr 2 2/78 Plan wykładu nr 2 Jednostki informacji cyfrowej bit, bajt, słowo, FLOPS Kodowanie znaków ASCII, ISO/IEC 646, ISO 8859, EBCDIC, Unicode Kodowanie liczb NKB, BCD, 2 z 5, Graya Reprezentacja liczb w systemach komputerowych Reprezentacja stałoprzecinkowa reprezentacja liczb bez znaku reprezentacja liczb ze znakiem (ZM, U1, U2)

Rok akademicki 2013/2014, Wykład nr 2 3/78 Jednostki informacji - bit Bit (ang. binary digit) - podstawowa jednostka informacji stosowana w informatyce i telekomunikacji Określa najmniejszą ilość informacji potrzebną do stwierdzenia, który z dwóch możliwych stanów przyjął układ 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: standard IEEE 1541 (2002) - mała litera b standard IEC 60027 - bit

Rok akademicki 2013/2014, Wykład nr 2 4/78 Jednostki informacji - bit Wielokrotności bitów: Przedrostki binarne - wprowadzone w 1998 roku w celu odróżnienia przedrostków o mnożniku 1000 (10 3 ) od przedrostków o mnożniku 1024 (2 10 )

Rok akademicki 2013/2014, Wykład nr 2 5/78 Jednostki informacji - bajt Bajt (ang. byte) - 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 Za pomocą jednego bajtu można zapisać 2 8 =256 różnych wartości: 0000 0000 0 0000 0001 1 1111 1101 253 0000 0010 2 1111 1110 254 1111 1111 255

Rok akademicki 2013/2014, Wykład nr 2 6/78 Jednostki informacji - bajt W pierwszych komputerach bajt mógł mieć inną liczbę bitów: 4, 6, 7, 9, 12 8-bitowy bajt: koniec 1956 r. - pierwsze zastosowanie 1964 r. - uznanie za standard (IBM System/360) Inna nazwa 8-bitowego bajtu - oktet Najczęściej stosowanym skrótem dla bajtu jest wielka litera B B używane jest także do oznaczania bela - jednostki miary wielkości ilorazowych zamiast bela częściej używa się jednostki podwielokrotnej - decybela (db) więc nie ma problemu z rozróżnieniem obu jednostek

Rok akademicki 2013/2014, Wykład nr 2 7/78 Jednostki informacji - tetrada Bajt 8-bitowy można podzielić na dwie połówki 4-bitowe nazywane tetradami (ang. nibbles) Rozróżniamy bardziej znaczącą (górną) i mniej znaczącą (dolną) tetradę Spotyka się też określenie strefa i cyfra

Rok akademicki 2013/2014, Wykład nr 2 8/78 Jednostki informacji - bajt Wielokrotności bajtów:

Rok akademicki 2013/2014, Wykład nr 2 9/78 Jednostki informacji - bajt Przedrostki binarne (dwójkowe) nie zostały przyjęte przez wszystkie środowiska zajmujące się informatyką Producenci nośników pamięci korzystają z przedrostków dziesiętnych Z ulotki Dysk Desktop HDD - zestawienie danych, Seagate: w przypadku oznaczania pojemności dysków, jeden gigabajt (oznaczany także jako GB ) jest równy jednemu miliardowi bajtów, a jeden terabajt (oznaczany także jako TB ) jest równy jednemu bilionowi bajtów

Rok akademicki 2013/2014, Wykład nr 2 10/78 Jednostki informacji - bajt Seagate ST1000DM003 (1 TB) Drive specification: formatted capacity: 1000 GB (1 TB) guaranteed sectors: 1,953,525,168 bytes per sector: 4096 (4K physical emulated at 512-byte sectors) Pojemność dysku: 1.953.525.168 512 = 1.000.204.886.016 bajtów 1.000.204.886.016 / (1024) = 976.762.584 kb 1.000.204.886.016 / (1024 1024) = 953.870 MB 1.000.204.886.016 / (1024 1024 1024) = 931,5 GB

Rok akademicki 2013/2014, Wykład nr 2 11/78 Słowo maszynowe (słowo) Słowo maszynowe (słowo - ang. word) - jednostka danych używana przez określony komputer (określoną architekturę) Słowo składa się odgórnie określonej liczby bitów, nazywanej długością lub szerokością słowa (najczęściej jest to potęga 2, np. 8, 16, 32, 64 bity) Zazwyczaj wielkość słowa określa: rozmiar rejestrów procesora rozmiar szyny danych i szyny adresowej Architektury: 8-bitowa: Intel 8080, Z80, Motorola 6800, Intel 8051 16-bitowa: Intel 8086, Intel 80286 32-bitowa: Intel od 80386 do i7, AMD od 5x86 do Athlona, ARM 64-bitowa: Intel Itanium, Pentium 4/EM64T, Core 2, Core i7 AMD Opteron, Athlon 64, Athlon II

Rok akademicki 2013/2014, Wykład nr 2 12/78 FLOPS FLOPS (FLoating point Operations Per Second) liczba operacji zmiennoprzecinkowych na sekundę jednostka wydajności układów zmiennoprzecinkowych Przykłady wydajności procesorów (teoretyczne): Intel Core i7 975 3,46 GHz - 55,36 GFlops Intel Core2 Quad Q9650 3,00 GHz - 48 GFlops Intel Core2 Duo E8400 3,00 GHz - 24 GFlops najszybszy system równoległy na świecie: Tianhe-2 (MilkyWay-2), China Chinese National University of Defense Technology (NUDT) 32.000 Intel Xeon E5-2600 v2 processors 48.000 Intel Xeon Phi 31S1P processors 3.120.000 cores, Linux www.top500.org - 33.862.700 GFlops

Rok akademicki 2013/2014, Wykład nr 2 13/78 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 2013/2014, Wykład nr 2 14/78 Kod 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 2013/2014, Wykład nr 2 15/78 Kod ASCII - Kody sterujące a język C 0 (10) = 0 (16) NUL - koniec łańcucha znaków, zapis: \0 7 (10) = 7 (16) BEL - alarm, dźwięk głośniczka, zapis: \a 8 (10) = 8 (16) BS - klawisz Backspace, zapis: \b 9 (10) = 9 (16) TAB - tabulacja (odstęp), zapis: \t 10 (10) = A (16) LF - przejście do nowego wiersza, zapis: \n 13 (10) = D (16) CR - powrót na początek wiersza, zapis: \r 27 (10) = 1B (16) ESC - klawisz Escape 127 (10) = 7F (16) DEL - klawisz Delete

Rok akademicki 2013/2014, Wykład nr 2 16/78 Kod ASCII - Pliki tekstowe (Windows/DOS) Elementami pliku tekstowego są wiersze, mogą one mieć różną długość W systemie Windows każdy wiersz pliku zakończony jest parą znaków: CR, ang. carriage return - powrót karetki, kod ASCII - 13 (10) = 0D (16) LF, ang. line feed - przesunięcie o wiersz, kod ASCII - 10 (10) = 0A (16) Załóżmy, że plik tekstowy ma postać: Rzeczywista zawartość pliku jest następująca: Wydruk zawiera: przesunięcie od początku pliku (szesnastkowo) wartości poszczególnych bajtów pliku (szesnastkowo) znaki odpowiadające bajtom pliku (traktując bajty jako kody ASCII)

Rok akademicki 2013/2014, Wykład nr 2 17/78 Kod ASCII - Pliki tekstowe (Windows/DOS) W czasie wczytywania tekstu z pliku do pamięci komputera znaki CR i LF zastępowane są jednym znakiem - LF Znak LF w języku C reprezentowany jest przez \n, zaś CR - przez \r #include <stdio.h> int main() { printf("\\n --> %d %X\n",'\n','\n'); printf("\\r --> %d %X\n",'\r','\r'); \n --> 10 A \r --> 13 D } return 0; Przy zapisywaniu łańcucha znaków do pliku tekstowego mamy sytuację odwrotną - znak LF zastępowany jest parą CR i LF

Rok akademicki 2013/2014, Wykład nr 2 18/78 Kod ASCII - Pliki tekstowe (Linux) W systemie Linux znakiem końca wiersza jest tylko LF o kodzie ASCII - 10 (10) = 0A (16) Załóżmy, że plik tekstowy ma postać: Rzeczywista zawartość pliku jest następująca: Podczas przesyłania pliku tekstowego (np. przez protokół ftp) z systemu Linux do systemu Windows pojedynczy znak LF zamieniany jest automatycznie na parę znaków CR i LF Błędne przesłanie pliku tekstowego (w trybie binarnym) powoduje nieprawidłowe jego wyświetlanie:

Rok akademicki 2013/2014, Wykład nr 2 19/78 ISO/IEC 646 ISO/IEC 646 - norma definiująca modyfikację 7-bitowego kodowania ASCII, stosowana w latach 70-tych i 80-tych W normie określono 10 pozycji na znaki w języku kraju, który przyjął tę normę oraz 2 pozycje na znaki walut 0 1 2 3 4 5 6 7 8 9 A B C D E F 00 10 20 30 40 50 60 70 Znaki kontrolne SP! " # $ % & ( ) * +, -. / 0 1 2 3 4 5 6 7 8 9 : ; < = >? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { } ~ żółty - znaki narodowe niebieski - znaki walut Wszystkie pozostałe znaki są zgodne z ASCII

Rok akademicki 2013/2014, Wykład nr 2 20/78 ISO/IEC 646 - odmiany narodowe Norma: BN-74/3101-01

Rok akademicki 2013/2014, Wykład nr 2 21/78 ISO/IEC 8859 ISO/IEC 8859 - zestaw standardów służących do kodowania znaków za pomocą 8-bitów Wszystkie zestawy ISO 8859 mają znaki 0 (10) -127 (10) (00 (16) -7F (16) ) takie same jak w kodzie ASCII Pozycje 128 (10) -159 (10) (80 (16) -9F (16) ) nie są używane (kody C1) Od czerwcu 2004 roku ISO 8859 nie jest rozwijane Stosowane standardy ISO 8859: ISO 8859-1 (Latin-1) - alfabet łaciński dla Europy zachodniej ISO 8859-2 (Latin-2) - łaciński dla Europy środkowej i wschodniej ISO 8859-3 (Latin-3) - łaciński dla Europy południowej ISO 8859-4 (Latin-4) - łaciński dla Europy północnej ISO 8859-14 (Latin-8) - zawiera polskie znaki ISO 8859-16 (Latin-10) - łaciński dla Europy środkowej, zawiera polskie znaki

Rok akademicki 2013/2014, Wykład nr 2 22/78 ISO/IEC 8859-1 ISO/IEC 8859-1, Latin-1 ( zachodnioeuropejskie ) kodowanie używane w Amerykach, Europie Zachodniej, Oceanii i większej części Afryki dostępne języki: albański, angielski, baskijski, duński, estoński, fiński, francuski, hiszpański, irlandzki, islandzki, kataloński, łaciński, niderlandzki, niemiecki, norweski, portugalski, retoromański, szkocki, szwedzki, włoski 191 znaków łacińskiego pisma. SP - spacja NBSP - twarda spacja SHY - miękki dywiz (myślnik)

Rok akademicki 2013/2014, Wykład nr 2 23/78 ISO/IEC 8859-2 ISO/IEC 8859-2, Latin-2 ( środkowo, wschodnioeuropejskie ) 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 kody z przedziałów 00 (16) -1F (16) oraz 7F (16) -9F (16) nie są używane w ISO-8859-2 kodowanie zgodne z Polską Normą. SP - spacja NBSP - twarda spacja SHY - miękki dywiz (myślnik)

Rok akademicki 2013/2014, Wykład nr 2 24/78 ISO/IEC 8859-2 - Kodowanie polskich znaków 18 znaków: Ą - ą Ć - ć Ę - ę Ł - ł Ń - ń Ó - ó Ś - ś Ź - ź Ż - ż

Rok akademicki 2013/2014, Wykład nr 2 25/78 ISO/IEC 8859-1 i ISO/IEC 8859-2 - porównanie

Rok akademicki 2013/2014, Wykład nr 2 26/78 EBCDIC EBCDIC - Extended Binary Coded Decimal Interchange Code 8-bitowe kodowanie znaków stworzone jako rozszerzenie kodowania BCD używane głównie w systemach IBM w latach 60-tych XX wieku umożliwia zapisanie do 256 różnych symboli brak zachowania kolejności liter zgodnie z kolejnością kodów, np. po R nie ma S kody EBCDIC nie są zgodne z ASCII.

Rok akademicki 2013/2014, Wykład nr 2 27/78 EBCDIC i ISO 8859-1 - porównanie

Rok akademicki 2013/2014, Wykład nr 2 28/78 Windows-1250 Windows-1250 (CP-1250) - strona kodowa używana przez system Microsoft Windows do reprezentacji tekstów w językach środkowoeuropejskich używających alfabetu łacińskiego Obsługiwane języki: albański, chorwacki, czeski, polski, rumuński, słowacki, słoweński, węgierski (ale także niemiecki) Windows-1250 jest podobny do ISO 8859-2 - posiada wszystkie jego drukowalne znaki (a także kilka dodatkowych), lecz kilka z nich zajmuje inne miejsca.

Rok akademicki 2013/2014, Wykład nr 2 29/78 ISO 8859-2 i Windows-1250 - porównanie

Rok akademicki 2013/2014, Wykład nr 2 30/78 Problem kodowania polskich znaków Problem z wyświetlaniem polskich znaków Tekst zapisany w standardzie ISO-8859-2: Ą Ć Ę Ł Ń Ó Ś Ź Ż ą ć ę ł ń ó ś ź ż Tekst wyświetlony w Notatniku systemu Windows (Windows-1250): ˇ Ć Ę Ł Ń Ó Ż ± ć ę ł ń ó Ľ ż

Rok akademicki 2013/2014, Wykład nr 2 31/78 Problem kodowania polskich znaków W Polsce stosowanych było ok. 20 standardów kodowania polskich liter Dodatkowe informacje: http://www.ogonki.agh.edu.pl Próby wprowadzania standardu: Mazovia - promowany przez społeczność informatyczną (nie był pełną stroną kodową, ale określał sposób kodowania polskich liter) IBM-Latin-2 (CP-852) - wprowadzony przez IBM i Microsoft, stosowany w DOS, OS/2 i części systemu Microsoft Windows CP-1250 (Windows-1250) - wprowadzony w Microsoft Windows PL ISO-Latin-2 (ISO 8859-2) - stosowany w Internecie ISO 8859-2 jest zgodny z Polską Normą PN-93 T-42118 Technika informatyczna. Znormalizowane zbiory znaków graficznych przeznaczone do stosowania w kodach 8-bitowych (1993 rok)

Rok akademicki 2013/2014, Wykład nr 2 32/78 Unicode (Unikod) Unicode - komputerowy zestaw znaków mający obejmować wszystkie pisma i inne znaki (symbole muzyczne, techniczne, wymowy) używane na świecie Unicode przypisuje unikalny numer każdemu znakowi, niezależny od używanej platformy, programu czy języka Reprezentuje znaki w postaci abstrakcyjnej pozostawiając postać wizualną (rozmiar, kształt, czcionkę, styl) innemu oprogramowaniu Definiowany przez dwa standardy, w których znaki są identyczne: Unicode i ISO/IEC 10646.

Rok akademicki 2013/2014, Wykład nr 2 33/78 Unicode Rozwijany przez konsorcjum utworzone przez firmy komputerowe, producentów oprogramowania oraz grupy użytkowników Konsorcjum: http://www.unicode.org Pierwsza wersja: Unicode 1.0 (10.1991) Ostatnia wersja: Unicode 6.3.0 (09.2013) The Unicode Consortium. The Unicode Standard, Version 6.2.0, (Mountain View, CA: The Unicode Consortium, 2012) - Core Specification - PDF, 11 MB, 690 str. (wersja 6.2.0) - Code Charts - PDF, 92 MB, 2100 str. (wersja 6.2.0) http://www.unicode.org/versions/unicode6.2.0/ koduje 110.187 znaków Polska strona o Unikodzie: http://www.unikod.pl

Rok akademicki 2013/2014, Wykład nr 2 34/78 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 2013/2014, Wykład nr 2 35/78 Unicode Standard Unicode definiuje kody numeryczne przypisane poszczególnym znakom, nie określa natomiast sposobu bajtowego kodowania znaków Kodowanie określa sposób w jaki znaki ze zbioru mają być zapisane w postaci binarnej Istnieją trzy podstawowe metody kodowania: 32-bitowe: UTF-32 16-bitowe: UTF-16 8-bitowe: UTF-8 UTF - UCS Transformation Format UCS - Universal Character Set Wszystkie metody obejmują wszystkie kodowane znaki w Unicode.

Rok akademicki 2013/2014, Wykład nr 2 36/78 Unicode - kodowanie UTF-32 UTF-32 - sposób kodowania standardu Unicode wymagający użycia 32-bitowych słów Kod znaku ma zawsze stałą długość 4 bajtów i przedstawia numer znaku w tabeli Unikodu Kody obejmują zakres od 0 do 0x10FFFF (od 0 do 1114111) Kodowanie to jest jednak bardzo nieefektywne - zakodowane ciągi znaków są 2-4 razy dłuższe niż ciągi tych samych znaków zapisanych w innych kodowaniach.

Rok akademicki 2013/2014, Wykład nr 2 37/78 Unicode - kodowanie UTF-16 UTF-16 - sposób kodowania standardu Unicode wymagający użycia 16-bitowych słów Dla znaków z przedziału od 0 do 0xFFFF używane jest jedno słowo, którego wartość jest jednocześnie kodem znaku w Unicode Dla znaków z wyższych pozycji używa się dwóch słów: pierwsze słowo należy do przedziału: 0xD800-0xDBFF drugie słowo należy do przedziału: 0xDC00-0xDFFF.

Rok akademicki 2013/2014, Wykład nr 2 38/78 Unicode - kodowanie UTF-8 UTF-8 - kodowanie ze zmienną długością reprezentacji znaku wymagające użycia 8-bitowych słów Znaki Unikodu są mapowane na ciągi bajtów 0x00 do 0x7F - bity 0xxxxxxx 0x80 do 0x7FF - bity 110xxxxx 10xxxxxx 0x800 do 0xFFFF - bity 1110xxxx 10xxxxxx 10xxxxxx 0x10000 do 0x1FFFFF - bity 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 0x200000 do 0x3FFFFFF - bity 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 0x4000000 do 0x7FFFFFFF- bity 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx

Rok akademicki 2013/2014, Wykład nr 2 39/78 Unicode

Rok akademicki 2013/2014, Wykład nr 2 40/78 Unicode

Rok akademicki 2013/2014, Wykład nr 2 41/78 Kody liczbowe - Naturalny Kod Binarny (NKB) Jeżeli dowolnej liczbie dziesiętnej przypiszemy odpowiadającą jej liczbę binarną, to otrzymamy naturalny kod binarny (NKB)

Rok akademicki 2013/2014, Wykład nr 2 42/78 Kody liczbowe - Naturalny Kod Binarny (NKB) W naturalnym kodzie binarnym za pomocą n-bitów można zapisać liczbę dwójkową z zakresu: n X( 2) = 0, 2 1 Największe liczby dwójkowe: 1 bit 2 bity 3 bity L 8 bitów 10 bitów 16 bitów 32 bity 1 (2) 11 (2) 111 (2) 11111111 (2) 1111111111 (2) 11111111 11111111 (2) 11111111K 11111111 (2) = = = = = = = 2 2 2 2 2 2 2 1 2 3 8 10 16 32 1 1 1 1 1 1 1 = = = = = = = 1 3 7 (10) (10) 65 (10) 255 (10) 1 023 (10) 535 (10) 4 294 967 295 (10)

Rok akademicki 2013/2014, Wykład nr 2 43/78 Kody liczbowe - Kod 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) W ogólnym przypadku kodowane są tylko znaki 0 9 Pozostałe kombinacje bitowe mogą być stosowane do kodowania znaku liczby lub innych znaczników.

Rok akademicki 2013/2014, Wykład nr 2 44/78 Kody liczbowe - Kod BCD Przykład: 168 =? (10) (BCD) 1 } } 6 } 8 0001 0110 1000 168 ( 10) = 000101101000 (BCD) 1001 0101 1001 { 0101 { 0011 { 9 5 0011 3 (BCD) =? 100101010011 11 ( = 953 BCD) (10) (10) Zastosowania: urządzenia elektroniczne z wyświetlaczem cyfrowym (np. kalkulatory, mierniki cyfrowe, kasy sklepowe, wagi) przechowywania daty i czasu w BIOSie komputerów (także wczesne modele PlayStation 3) zapis części ułamkowych kwot (systemy bankowe).

Rok akademicki 2013/2014, Wykład nr 2 45/78 Kody liczbowe - Kod BCD: przechowywanie liczb Użycie 4 najmłodszych bitów jednego bajta, 4 starsze bity są ustawiane na jakąś konkretną wartość: 0000 1111 (np. kod EBCDIC, liczby F0 (16) F9 (16) ) 0011 (tak jak w ASCII, liczby 30 (16) 39 (16) ) Zapis dwóch cyfr w każdym bajcie (starsza na starszej połówce, młodsza na młodszej połówce) - jest to tzw. spakowane BCD w przypadku liczby zapisanej na kilku bajtach, najmniej znacząca tetrada (4 bity) używane są jako flaga znaku standardowo przyjmuje się 1100 (C (16) ) dla znaku plus (+) i 1101 (D (16) ) dla znaku minus (-), np. 127 127 (10) (10) = 0001 = 0001 0010 0010 0111 0111 1100 1101 (127C (127D (16) (16) ) )

Rok akademicki 2013/2014, Wykład nr 2 46/78 Kody liczbowe - Kod BCD Na poprzednich slajdach przedstawiono podstawową postać kodu BCD - BCD 8421 lub SBCD (Simple Binary - Coded Decimal) Istnieją inne warianty kodu BCD, w których poszczególne cyfry są kodowane w inny sposób Cyfra dziesiętna BCD 8421 Excess-3 BCD 2421 BCD 84-2-1 IBM 1401 BCD 8421 0 0000 0011 0000 0000 1010 1 0001 0100 0001 0111 0001 2 0010 0101 0010 0110 0010 3 0011 0110 0011 0101 0011 4 0100 0111 0100 0100 0100 5 0101 1000 1011 1011 0101 6 0110 1001 1100 1010 0110 7 0111 1010 1101 1001 0111 8 1000 1011 1110 1000 1000 9 1001 1100 1111 1111 1001

Rok akademicki 2013/2014, Wykład nr 2 47/78 Kody liczbowe - Kod 2 z 5 Kod 5-bitowy - jeden znak kodowany jest na 5 bitach (2 bity są zawsze równe jeden, a 3 bity są zawsze równe zeru) Można zakodować 10 znaków, koduje cyfry dziesiętne, kody nie są wzajemnie jednoznaczne (ta sama wartość może być zakodowana w różny sposób) Kod stałowagowy, występuje w wielu wersjach, np. 01236, 01234, 74210 Kod detekcyjny Stosowany przede wszystkim w kodach kreskowych.

Rok akademicki 2013/2014, Wykład nr 2 48/78 Kody liczbowe - Kod 2 z 5 Industrial (1960 r.) Jednowymiarowy kod kreskowy kodujący cyfry: 0 9 Każdy znak składa się z 5 pasków (2 szerokich i 3 wąskich), odstępy pełnią rolę separatorów Szeroki pasek jest wielokrotnością wąskiego, szerokości muszą być takie same dla całego kodu Struktura kodu: start: 11011010 numer stop: 11010110

Rok akademicki 2013/2014, Wykład nr 2 49/78 Kod Graya (refleksyjny) Kod dwójkowy, bezwagowy, niepozycyjny Dwa kolejne słowa kodowe różnią się stanem jednego bitu Kod cykliczny - ostatni i pierwszy wyraz również różnią się stanem jednego bitu

Rok akademicki 2013/2014, Wykład nr 2 50/78 Kod Graya Stosowany w przetwornikach analogowo-cyfrowych, do cyfrowego pomiaru analogowych wielkości mechanicznych (przesuw liniowy, kąt obrotu) http://tams-www.informatik.uni-hamburg.de /applets/hades/webdemos/10-gates/15-graycode/dual2gray.html

Rok akademicki 2013/2014, Wykład nr 2 51/78 Kod Graya Stosowany w przetwornikach analogowo-cyfrowych, do cyfrowego pomiaru analogowych wielkości mechanicznych (przesuw liniowy, kąt obrotu) 1001 1000 0000 0001 1011 0011 1010 0010 1110 0110 1111 0111 1101 0101 1100 0100 kod NKB kod Graya

Rok akademicki 2013/2014, Wykład nr 2 52/78 Reprezentacja liczb w systemach komputerowych

Rok akademicki 2013/2014, Wykład nr 2 53/78 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

Rok akademicki 2013/2014, Wykład nr 2 54/78 Liczby całkowite bez znaku w języku C Typy zmiennych całkowitych bez znaku stosowane w języku C: Nazwa typu Rozmiar (bajty) Zakres wartości unsigned char 1 bajt 0 255 unsigned short int 2 bajty 0 65 535 unsigned int 4 bajty 0 4 294 967 295 unsigned long int 4 bajty 0 4 294 967 295 unsigned long long int 8 bajtów 0 18 446 744 073 709 551 615 W nazwach typów short i long można pominąć słowo int: unsigned short int unsigned short unsigned long int unsigned long unsigned long long int unsigned long long

Rok akademicki 2013/2014, Wykład nr 2 55/78 Liczby całkowite bez znaku w języku C Typ unsigned char (1 bajt): MSB (Most Significant Bit) - najbardziej znaczący bit, największa waga LSB (Least Significant Bit) - najmniej znaczący bit, najmniejsza waga Zakres wartości: dolna granica: 00000000 (2) = 0 (10) górna granica: 11111111 (2) = 255 (10)

Rok akademicki 2013/2014, Wykład nr 2 56/78 Liczby całkowite bez znaku w języku C Typ unsigned short int (2 bajty): Zakres wartości: dolna granica: 00000000 00000000 (2) = 0 (10) górna granica: 11111111 11111111 (2) = 65 535 (10)

Rok akademicki 2013/2014, Wykład nr 2 57/78 Liczby całkowite bez znaku w języku C Typy unsigned int (4 bajty) i unsigned long int (4 bajty): Zakres wartości: dolna granica: 00000000 00000000 00000000 00000000 (2) = 0 (10) górna granica: 11111111 11111111 11111111 11111111 (2) = 4 294 967 295 (10)

Rok akademicki 2013/2014, Wykład nr 2 58/78 Liczby całkowite bez znaku w języku C Typ unsigned long long int (8 bajtów): Zakres wartości: dolna granica: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 (2) = 0 (10) górna granica: 11111111 11111111 11111111 11111111 11111111 11111111 11111111 11111111 (2) = 18 446 744 073 709 551 615 (10)

Rok akademicki 2013/2014, Wykład nr 2 59/78 Liczby całkowite bez znaku w języku C #include <stdio.h> unsigned short int: 65535 0 1 unsigned int: 4294967295 0 1 unsigned long int: 4294967295 0 1 unsigned long long int: 18446744073709551615 0 1 int main() { unsigned short int usi = 65535; unsigned int ui = 4294967295; unsigned long int uli = 4294967295; unsigned long long int ulli = 18446744073709551615; } printf("unsigned short int: %hu %hu %hu\n",usi,usi+1,usi+2); printf("unsigned int: %u %u %u\n",ui,ui+1,ui+2); printf("unsigned long int: %lu %lu %lu\n",uli,uli+1,uli+2); printf("unsigned long long int: %llu %llu %llu\n", ulli,ulli+1,ulli+2); return 0;

Rok akademicki 2013/2014, Wykład nr 2 60/78 Liczby całkowite ze znakiem - kod znak-moduł Inne nazwy: ZM, Z-M, SM (Signed Magnitude), S+M Wszystkie bity liczby, poza najstarszym, mają takie same znaczenie jak w NKB: Najstarszy bit jest bitem znaku liczby: 0 - dodatnia, 1 - ujemna Wartość liczby: X n 2 0 1 2 n 2 xn 1 xn 1 i ( 10) = ( x0 2 + x1 2 + x2 2 +... + x n 2 2 ) ( 1) = ( 1) xi 2 i= 0 moduł znak

Rok akademicki 2013/2014, Wykład nr 2 61/78 Liczby całkowite ze znakiem - kod znak-moduł Liczby 4-bitowe (1 bit - znak, 3 bity - moduł) w kodzie Z-M: dwie reprezentacje zera + 0 0 (0000 ZM ) ( 1000 ) ZM Zakres liczb dla n-bitów: n 1 n 1 X ( 10) = 2 + 1, 2 1 dla 8 bitów : dla 16 bitów: 127... 127 32767... 32767

Rok akademicki 2013/2014, Wykład nr 2 62/78 Liczby całkowite ze znakiem - kod znak-moduł Zamiana liczby dziesiętnej na kod Z-M: liczba dodatnia 93 = ( 10)?(ZM) zamieniamy liczbę na NKB 93 = ( 10) 1011101(NKB) dodajemy bit znaku 93 = ( 10) 01011101(ZM) liczba ujemna 93 = ( 10)?(ZM) zamieniamy moduł liczby na NKB 93 = ( 10) = 93(10) 1011101(NKB) dodajemy bit znaku 93 = ( 10) 11011101(ZM)

Rok akademicki 2013/2014, Wykład nr 2 63/78 Liczby całkowite ze znakiem - kod U1 Inne nazwy: U1, ZU1, uzupełnień do jedności Wszystkie bity liczby posiadają takie same wagi jak w NKB, oprócz pierwszego bitu, który ma wagę -2 n-1 + 1 Najstarszy bit jest bitem znaku liczby: 0 - dodatnia, 1 - ujemna Wartość liczby: 0 1 2 n 2 n 1 X( 10) = x 0 2 + x1 2 + x 2 2 +... + x n 2 2 + x n 1 ( 2 + 1)

Rok akademicki 2013/2014, Wykład nr 2 64/78 Liczby całkowite ze znakiem - kod U1 Liczby 4-bitowe (1 bit - znak, 3 bity - moduł) w kodzie U1: liczby dodatnie zapisywane są tak samo jak w NKB liczby ujemne otrzymywane są poprzez bitową negację dwie reprezentacje zera Zakres liczb dla n-bitów: n 1 n 1 X ( 10) = 2 + 1, 2 1 dla 8 bitów : dla 16 bitów: 127... 127 32767... 32767

Rok akademicki 2013/2014, Wykład nr 2 65/78 Liczby całkowite ze znakiem - kod U1 Zamiana liczby dziesiętnej na kod U1: liczba dodatnia 93 = ( 10)?(U1) zamieniamy liczbę na NKB 93 = ( 10) 1011101(NKB) dodajemy bit znaku: 0 93 = ( 10) 01011101(U1) liczba ujemna 93 = ( 10)?(U1) zamieniamy moduł liczby na NKB 93 = ( 10) = 93(10) 1011101(NKB) negujemy bity i dodajemy bit znaku: 1 93 = ( 10) 10100010(U1)

Rok akademicki 2013/2014, Wykład nr 2 66/78 Liczby całkowite ze znakiem - kod U2 Inne nazwy: ZU2, uzupełnień do dwóch, two s complement Najstarszy bit jest bitem znaku liczby: 0 - dodatnia, 1 - ujemna Wartość liczby: X (10) = x 0 2 0 + x 1 2 1 + x 2 2 2 +... + x n 2 2 n 2 + x n 1 ( 2 n 1 ) Kod U2 jest obecnie stosowany we wszystkich komputerach PC

Rok akademicki 2013/2014, Wykład nr 2 67/78 Liczby całkowite ze znakiem - kod U2 Liczby 4-bitowe (1 bit - znak, 3 bity - moduł) w kodzie U2: brak podwójnej reprezentacji zera liczb ujemnych jest o jeden więcej niż dodatnich 00...000 zawsze oznacza 0 (10) 11...111 zawsze oznacza -1 (10) Zakres liczb dla n-bitów: n 1 n 1 X ( 10) = 2, 2 1 dla 8 bitów : dla 16 bitów: 128... 127 32768... 32767 Dolna i górna granica zakresu liczb są niesymetryczne

Rok akademicki 2013/2014, Wykład nr 2 68/78 Liczby całkowite ze znakiem - kod U2 Zamiana liczby na 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 = ( 10)?(U2) 10110101 = ( U2)?(10) 75 = ( 10) 10110101(U2) 10110101 ( U2) = 75(10)

Rok akademicki 2013/2014, Wykład nr 2 69/78 Liczby całkowite ze znakiem - kod U2 Obliczenie wartości dziesiętnej liczby w kodzie U2: 10110101 = ( U2)?(10) bit znaku, 1 - liczba ujemna 7 6 5 4 3 2 1 10110101(U2) = 1 ( 2 ) + 0 2 + 1 2 + 1 2 + 0 2 + 1 2 + 0 2 + 1 10110101 (U2) 10110101 = 128 + 32 + 16 + 4 + 1 (U2) = 75 (10) 2 0 01011100 = ( U2)?(10) bit znaku, 0 - liczba dodatnia 01011100 (U2) = 0 ( 2 7 ) + 1 2 6 01011100 + 0 2 (U2) 01011100 5 = 64 + 16 + 8 + 4 (U2) + 1 2 4 = 92 + 1 2 (10) 3 + 1 2 2 + 0 2 1 + 0 2 0

Rok akademicki 2013/2014, Wykład nr 2 70/78 Liczby całkowite ze znakiem - kod U2 w języku C Typy zmiennych całkowitych ze znakiem stosowane w języku C: Nazwa typu Rozmiar (bajty) Zakres wartości char 1 bajt -128 127 short int 2 bajty -32 768 32 767 int 4 bajty -2 147483648 2 147483647 long int 4 bajty -2 147483648 2 147483647 long long int 8 bajtów -9 223 372 036 854 775 808-9 223 372 036 854 775 807 Przed nazwą każdego z powyższych typów można dodać signed signed char, signed short int, signed int W nazwach typów short i long można pominąć słowo int: short int short, long int long, long long int long long

Rok akademicki 2013/2014, Wykład nr 2 71/78 Liczby całkowite ze znakiem - kod U2 w języku C Typ char / signed char (1 bajt): Zakres wartości: dolna granica: 1.0000000 (2) = -128 (10) górna granica: 0.1111111 (2) = 127 (10) Uwaga: kropka oznacza oddzielenie znaku liczby od jej wartości inne wartości: 1.1111111 (2) = -1 (10) 0.0000000 (2) = 0 (10)

Rok akademicki 2013/2014, Wykład nr 2 72/78 Liczby całkowite ze znakiem - kod U2 w języku C Typ short / signed short int (2 bajty): Zakres wartości: dolna granica: 1.0000000 00000000 (2) = -32 768 (10) górna granica: 0.1111111 11111111 (2) = 32 767 (10)

Rok akademicki 2013/2014, Wykład nr 2 73/78 Liczby całkowite ze znakiem - kod U2 w języku C Typy int / signed int (4 bajty) i long / signed long int (4 bajty): 2 15 2 14 2 13 2 12 2 11 2 10 2 9 2 8 2 7 0 2 6 2 5 2 4 2 3 2 2 2 1 2 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 15 14 13 12 11 10 9 8 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 7 6 5 4 3 2 1 0 LSB Zakres wartości: dolna granica: 1.0000000 00000000 00000000 00000000 (2) = -2 147 483 648 (10) górna granica: 0.1111111 11111111 11111111 11111111 (2) = 2 147 483 647 (10)

Rok akademicki 2013/2014, Wykład nr 2 74/78 Liczby całkowite ze znakiem - kod U2 w języku C Typ long long int / signed long long int (8 bajtów): Zakres wartości: dolna granica: 1.0000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 (2) = -9 223 372 036 854 775 808 (10) górna granica: 0.1111111 11111111 11111111 11111111 11111111 11111111 11111111 11111111 (2) = 9 223 372 036 854 775 807 (10)

Rok akademicki 2013/2014, Wykład nr 2 75/78 Liczby całkowite ze znakiem - kod U2 w języku C #include <stdio.h> short int: 32767-32768 -32767 int: 2147483647-2147483648 -2147483647 long int: 2147483647-2147483648 -2147483647 long long int: 9223372036854775807-9223372036854775808 int main() { short int si = 32767; int i = 2147483647; long int li = 2147483647; long long int lli = 9223372036854775807; printf("short int: %hd %hd %hd\n",si,si+1,si+2); printf("int: %d %d %d\n",i,i+1,i+2); printf("long int: %ld %ld %ld\n",li,li+1,li+2); printf("long long int: %lld %lld\n",lli,lli+1); } return 0;

Rok akademicki 2013/2014, Wykład nr 2 76/78 Zadania (1/2) 1. Podaj ile różnych wartości można zapisać za pomocą 1, 4, 8, 16, 32 i 64 bitów oraz 1, 2, 4 i 8 bajtów. 2. Podaj zapisane w systemie szesnastkowym kody: ASCII, ISO 646, ISO 8859-1, ISO 8859-2, EBCDIC, Windows-1250, Unicode odpowiadające Twojemu imieniu i nazwisku. Czy we wszystkich kodach udało się zapisać wszystkie litery? Jak duże są różnice w zapisie w poszczególnych kodach? 3. Na bardzo starej dyskietce znaleziono plik, którego kolejne bajty przedstawione są poniżej (system szesnastkowy). Odczytaj tekst wiedząc, że może on być zapisany w języku polskim w jednym z kodów: ASCII, ISO 646, ISO 8859-1, ISO 8859-2, EBCDIC, Windows-1250, Unicode. 53-74-72-75-9C-20-64-9F-67-6E-B9-B3-20-E6-6D-EA-2E 4. Zapisz liczby 2014 (10) i 4789 (10) w kodzie BCD. Zamień liczby z kodu BCD 8421 na system dziesiętny: 1001001010000011 (BCD), 0001011000110100 (BCD). 5. Podaj postać 4-bitowego kodu Graya (napisz kolejne słowa kodowe).

Rok akademicki 2013/2014, Wykład nr 2 77/78 Zadania (2/2) 6. Dana jest liczba w systemie dwójkowym: 10110110 (2). Podaj wartość tej liczby w systemie dziesiętnym jeśli jest ona zapisana jako liczba bez znaku, liczba ze znakiem w kodach ZM, U1, U2. 7. Zapisz liczbę -120 (10) w systemie dwójkowym w kodach ZM, U1, U2.

Rok akademicki 2013/2014, Wykład nr 2 78/78 Koniec wykładu nr 2 Dziękuję za uwagę!