Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia (zaoczne) Rok akademicki 2007/2008 Wykład nr 3 (30.03.2008)
Rok akademicki 2007/2008, Wykład nr 3 2/42 Plan wykładu nr 3 Kodowanie liczb naturalny kod binarny (NKB) kod BCD kod 1 z N (pierścieniowy) kod 2 z 5 kod kołowy (Johnsona) kod Graya (refleksyjny) Kodowanie znaków kod ASCII kod ISO/IEC 646 kod ISO/IEC 8859 kod EBCDIC
Rok akademicki 2007/2008, Wykład nr 3 3/42 Kodowanie Informacje przetwarzane przez komputer to liczby, ale takŝe inne obiekty, takie jak litery, wartości logiczne, obrazy, itp. KaŜda informacja przetwarzana przez komputer musi być reprezentowana za pomocą tylko za pomocą dwóch stanów: wysokiego (1 - jedynka) i niskiego (0 - zero) Konieczne są zatem reguły przekształcania róŝnych postaci informacji na informację binarną (zero-jedynkową) Proces przekształcania jednego rodzaju postaci informacji na inną postać nazywamy kodowaniem Podział kodów: liczbowe: NKB (Naturalny Kod Binarny, BCN), U2, BCD, 1 z N, 2 z 5 alfanumeryczne: ASCII, ISO-8859, Unicode inne: Graya, Morse a Inny podział kodów: proste i detekcyjne (2 z 5, 1 z N, Graya)
Rok akademicki 2007/2008, Wykład nr 3 4/42 Kody liczbowe - Naturalny Kod Binarny (NKB) JeŜeli dowolnej liczbie dziesiętnej przyporządkujemy odpowiadającą jej liczbę binarną, to otrzymamy naturalny kod binarny (NKB)
Rok akademicki 2007/2008, Wykład nr 3 5/42 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 Przykład (największe liczby dwójkowe): 1 bit 2 bity 3 bity L 1 (2) 11 (2) 111 (2) = = = 2 2 2 1 2 3 1 1 1 = = = 1 3 7 8 bitów 10 bitów 16 bitów 32 bity 11111111 (2) 1111111111 (2) 11111111 11111111 (2) 11111111K 11111111 (2) = = = = 2 2 2 2 8 10 16 32 1 1 1 1 = = = = 255 65 1 023 535 4 294 967 295
Rok akademicki 2007/2008, Wykład nr 3 6/42 Kody liczbowe - Kod BCD Binary-Coded Decimal - dziesiętny zakodowany dwójkowo BCD - sposób zapisu liczb polegający na zakodowaniu kolejnych cyfr dziesiętnych liczby dwójkowo (NKB) przy uŝyciu czterech bitów Liczba dziesiętna BCD Liczba dziesiętna BCD 0 0000 5 0101 1 0001 6 0110 2 0010 7 0111 3 0011 8 1000 4 0100 9 1001 W ogólnym przypadku kodowane są tylko znaki 0 9, zaś pozostałe kombinacje bitowe są czasem stosowane do kodowania znaku liczby lub innych znaczników
Rok akademicki 2007/2008, Wykład nr 3 7/42 Kody liczbowe - Kod BCD Kod BCD umoŝliwia łatwą konwersję liczby do i z systemu dziesiętnego Przykład: 168 } 1 } 6 } 8 0001 0110 1000 168 =? (BCD) = 0001 0110 1000 (BCD) 1001 0101 1001 { 0101 { 0011 { 9 5 1001 0101 0011 3 0011 (BCD) (BCD) =? = 953 Obecnie kod BCD stosowany jest głównie: w urządzeniach elektronicznych z wyświetlaczem cyfrowym (np. kalkulatory) w wielu komputerach BIOS przechowuje datę i czas w formacie BCD w zastosowaniach finansowych informatyki (zapis części ułamkowych kwot)
Rok akademicki 2007/2008, Wykład nr 3 8/42 Kody liczbowe - Przechowywanie liczb w kodzie BCD 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 (ang. packed 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 (-) Przykład: 127 127 = 0001 = 0001 0010 0010 0111 0111 1100 1101 (127C (127D (16) (16) ) )
Rok akademicki 2007/2008, Wykład nr 3 9/42 Kody liczbowe - Kod BCD Arytmetyka w kodzie BCD: liczby w BCD nie są naturalnymi liczbami dwójkowymi, zatem nie moŝna nad nimi wykonywać normalnych działań arytmetycznych dodawanie liczb polega na wykonaniu zwykłego binarnego dodawania, a następnie jeśli otrzymany wynik jest większy od 9, to naleŝy skorygować go poprzez dodanie liczby 6 = 0110 (2) w przypadku odejmowania odpowiednia korekcja jest realizowana poprzez odjęcie od wyniku liczby 6 = 0110 (2) Przykład: 9 + 5 = 14 = [1001] + [0101] = [1110] [ 0000 1110] + [0000 0110] = [0001 { 0100 { ] 1 4
Rok akademicki 2007/2008, Wykład nr 3 10/42 Kody liczbowe - Wady i zalety BCD w stosunku do NKB Zalety: Wady: liczenie oraz zaokrąglanie liczb w systemie o podstawie dziesięć jest łatwiejsze prostsze wyrównywanie liczb dziesiętnych przed wykonaniem operacji (np. 1.7 + 21.03) prostsza konwersja do postaci dogodnej do wyświetlenia (np. dla wyświetlacza 7-segmentowego), konwersja ta moŝe być wykonana w czasie liniowym niektóre wartości niecałkowite (np. 0.2) mają w kodzie BCD, w przeciwieństwie do NKB, skończoną reprezentację, dzięki temu system BCD wprowadza mniejsze błędy obliczeń operacje arytmetyczne w kodzie BCD (dodawanie, mnoŝenie) są bardziej skomplikowane w implementacji niŝ w NKB nadmiarowość - na 4 bitach moŝna zapisać 16 róŝnych wartości, a BCD wykorzystuje tylko 10 z nich operacje wykonywane w praktycznie istniejących implementacjach BCD są wolniejsze niŝ NKB
Rok akademicki 2007/2008, Wykład nr 3 11/42 Kody liczbowe - Kod BCD Kod BCD ma kilka wariantów Na poprzednich slajdach przedstawiono jego podstawową postać nazywaną BCD 8421 lub SBCD (Simple Binary - Coded Decimal) W pozostałych wariantach poszczególne cyfry są kodowane w inny sposób
Rok akademicki 2007/2008, Wykład nr 3 12/42 Kody liczbowe - Kod Excess-3 Kod Excess-3 (XS-3, z nadmiarem 3) powstaje poprzez dodanie wartości 3 do cyfry dziesiętnej i zapisanie jej w kodzie BCD Cyfry 5-9 są lustrzanym odbiciem cyfr 0-4 z zanegowanymi bitami Porównanie zapisu liczb: 168 168 = 0001 0110 1000 = 0011 1001 1011 (BCD8421) (Excess 3)
Rok akademicki 2007/2008, Wykład nr 3 13/42 Kody liczbowe - Kod Excess-3 Zaletą tego sposobu kodowania jest regularność algorytmów dodawania i odejmowania, gdyŝ wynik jest korygowany w kaŝdym przypadku przy dodawaniu dwóch liczb w kodzie Excess-3 otrzymany wynik nie jest liczbą w kodzie Excess-3 po zakończeniu dodawania, jeśli otrzymana liczba jest mniejsza niŝ 10 naleŝy odjąć 3 = 11 (2), natomiast jeśli otrzymana liczba jest większa lub równa 10, to naleŝy dodać 3 = 11 (2) Przykład: 2 0101 1100 + 4 (XS 3) = 6 + 0111 (XS 3) 3 1001(XS 3) 14243 6 = 1100 { 9
Rok akademicki 2007/2008, Wykład nr 3 14/42 Kody liczbowe - Kod BCD 2421 (Aikena( Aikena) Kod Aikena jest kodem wagowym BCD o wagach 2,4,2,1 W kodzie Aikena cyfry od 0 do 4 koduje się z wyzerowanym najstarszym bitem, natomiast cyfry od 5 do 9 z ustawionym najstarszym bitem Cyfry 5-9 są lustrzanym odbiciem cyfr 0-4 z zanegowanymi bitami Porównanie zapisu liczb: 168 168 = 0001 0110 1000 = 0001 1100 1110 (BCD8421) (BCD2421)
Rok akademicki 2007/2008, Wykład nr 3 15/42 Kody liczbowe - Kod BCD 84-2-1 Cyfry 5-9 są lustrzanym odbiciem cyfr 0-4 z zanegowanymi bitami Kod 84-2-1 jest kodem samouzupełnieniowym Porównanie zapisu liczb: 168 168 = 0001 0110 1000 = 0111 1010 1000 (BCD8421) (BCD84 2 1)
Rok akademicki 2007/2008, Wykład nr 3 16/42 Kody liczbowe - Kod BCD Przykład zastosowania: zegar w BCD8421 h m s
Rok akademicki 2007/2008, Wykład nr 3 17/42 Kody liczbowe - Kod 1 z N (pierścieniowy) W kodzie 1 z N długość słowa jest równa N czyli liczbie kodowanych słów Najbardziej jest rozpowszechniony kod 1 z 10 Kod 1 z 10 jest kodem wagowym o wagach 9876543210 Kod 1 z N jest kodem detekcyjnym W kodzie tym moŝna w czasie wykonywania operacji kontrolować liczbę jedynek - wykrycie braku jedynki lub wykrycie dwóch lub więcej jedynek wskazuje na błąd
Rok akademicki 2007/2008, Wykład nr 3 18/42 Kody liczbowe - Kod 2 z 5 Właściwości: 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, zaleŝnie od przyjętych wag, np. 01236, 01234, 74210 kod detekcyjny, kod 2 z 5 jest stosowany przede wszystkim w kodach kreskowych
Rok akademicki 2007/2008, Wykład nr 3 19/42 Kody liczbowe - Kod kołowy owy (Johnsona) W kodzie kołowym zwiększa się liczba stanów 1 (począwszy od najmniej znaczącego bitu) aŝ do wszystkich bitów równych 1 Następnie stanów 1 zaczyna ubywać (począwszy od najmniej znaczącego bitu) aŝ do osiągnięcia wartości 10000 Kolejną wartością po 10000 będzie ponownie 00000 5-bitowy kod kołowy nazywany jest kodem Johnsona Kod kołowy stosowany jest w przetwornikach jako pośredni do otrzymania kodu binarnego (NKB) na wyjściu
Rok akademicki 2007/2008, Wykład nr 3 20/42 Kody liczbowe - Kod Graya (refleksyjny) Kod dwójkowy bezwagowy, niepozycyjny, charakteryzujący się tym, Ŝe dwa kolejne słowa kodowe róŝnią się tylko stanem jednego bitu Kod cykliczny - ostatni i pierwszy wyraz tego kodu równieŝ spełniają powyŝszą zasadę Konstrukcja kodu Graya: dopisz te same słowa kodowe, ale w odwrotnej kolejności (lustrzane odbicie) do początkowych wyrazów dopisz bit o wartości 0, natomiast do odbitych lustrzanie bit o wartości 1
Rok akademicki 2007/2008, Wykład nr 3 21/42 Kody liczbowe - Kod Graya (refleksyjny) Konwersja z kodu binarnego NKB na kod Graya przesunąć liczbę w postaci binarnej (NKB) o jeden bit w prawo (podzielić przez 2) wykonać operację XOR na bitach liczby w postaci binarnej (NKB) i wyniku dzielenia liczby przez 2 Przykład: 9 = 1001 (2) =? (GRAY) 1001 >> 1 0100 XOR 1001 0100 1101 (GRAY)
Rok akademicki 2007/2008, Wykład nr 3 22/42 Kody liczbowe - Kod Graya (refleksyjny) Konwersja z kodu Graya na kod binarny NKB przyjmij pierwszą cyfrę kodu NKB równą pierwszej cyfrze (od lewej) kodu Graya kaŝdą kolejną cyfrę oblicz jako róŝnicę symetryczną (XOR) odpowiedniej cyfry kodu Graya i poprzednio wyznaczonej cyfry kodu NKB Przykład: Gray XOR NKB 1101 1101 1 1 1 xor 1 0 1 10 1101 1101 0 1 xor xor 0 0 0 1 100 1001
Rok akademicki 2007/2008, Wykład nr 3 23/42 Kody liczbowe - Kod Graya Zastosowania: w przetwornikach analogowo-cyfrowych, szczególnie w systemach, gdzie występują po sobie kolejne wartości, np. mechaniczne przetworniki kąt-cyfra (dekoder kąta obrotu wału)
Rok akademicki 2007/2008, Wykład nr 3 24/42 Kody liczbowe - Kod Graya Zastosowania: kod Graya stosowany jest do etykietowania pojedynczych procesorów w sieci będącej hiperkostką etykiety sąsiednich procesorów róŝnią się tylko jednym bitem 0 1
Rok akademicki 2007/2008, Wykład nr 3 25/42 Kod ASCII ASCII - 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 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
Rok akademicki 2007/2008, Wykład nr 3 26/42 Kod ASCII - Kody sterujące Kody sterujące - 33 kody (0-31, 127) Dec Hex Char 0 0 NUL 1 1 SOH 2 2 STX 3 3 ETX 4 4 EOT 5 5 ENQ 6 6 ACK 7 7 BEL 8 8 BS 9 9 TAB 10 A LF 11 B VT 12 C FF 13 D CR 14 E SO 15 F SI (null) (start of heading) (start of text) (end of text) (end of tramsmission) (enquiry) (acknowledge) (bell) (backspace) (horizontal tab) (NL line feed, new line) (vertical tab) (NP form feed, new page) (carriage return) (shift out) (shift in) Dec Hex Char 16 10 DLE 17 11 DC1 18 12 DC2 19 13 DC3 20 14 DC4 21 15 NAK 22 16 SYN 23 17 ETB 24 18 CAN 25 19 EM 26 1A SUB 27 1B ESC 28 1C FS 29 1D GS 30 1E RS 31 1F US 127 7F DEL (data link escape) (device control 1) (device control 2) (device control 3) (device control 4) (negative acknowlege) (synchronous idle) (end of trans. block) (cancel) (end of medium) (subtitute) (escape) (file separator) (group separator) (record separator) (unit separator)
Rok akademicki 2007/2008, Wykład nr 3 27/42 Kod ASCII - Kody sterujące a język j C 0 = 0 (16) NUL - koniec łańcucha znaków, zapis: \0 7 = 7 (16) BEL - alarm, dźwięk głośniczka, zapis: \a 8 = 8 (16) BS - klawisz Backspace 9 = 9 (16) TAB - tabulacja (odstęp), zapis: \t 10 = A (16) LF - przejście do nowego wiersza, zapis: \n 13 = D (16) CR - powrót na początek wiersza, zapis: \r 27 = 1B (16) ESC - klawisz Escape 127 = 7F (16) DEL - klawisz Delete
Rok akademicki 2007/2008, Wykład nr 3 28/42 Kod ASCII - Pliki tekstowe elementami pliku tekstowego są wiersze, mogą one mieć róŝną długość w systemie DOS/Windows kaŝdy wiersz pliku zakończony jest parą znaków: CR, ang. carriage return - powrót karetki, kod ASCII - 13 = 0D (16) LF, ang. line feed - przesunięcie o wiersz, kod ASCII - 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) i znaki odpowiadające tym wartościom (traktując wartości jako kody ASCII)
Rok akademicki 2007/2008, Wykład nr 3 29/42 Kod ASCII - Pliki tekstowe 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> 10 A int main() { printf("%d %X\n", \n, \n ); } 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 2007/2008, Wykład nr 3 30/42 Kod ASCII - Pliki tekstowe w systemie Linux znakiem końca wiersza jest tylko LF o kodzie ASCII - 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 DOS/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 2007/2008, Wykład nr 3 31/42 ISO/IEC 646 ISO/IEC 646 - norma definiująca modyfikację 7-bitowego kodowania ASCII W normie określono 10 pozycji, na których mogły być umieszczane 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 Kodowanie to stosowano w latach 70-tych i 80-tych
Rok akademicki 2007/2008, Wykład nr 3 32/42 ISO/IEC 646 - odmiany narodowe
Rok akademicki 2007/2008, Wykład nr 3 33/42 Rozszerzenia ASCII - strony kodowe PoniewaŜ kod ASCII jest w podstawowej wersji 7-bitowy, a większość komputerów pracuje na 8-bitowych bajtach, to dodatkowy bit jest wykorzystywany do powiększenia zbioru kodowanych znaków Powstało wiele róŝnych rozszerzeń ASCII wykorzystujących ósmy bit, nazywanych stronami kodowymi Strona kodowa - sposób na przypisanie poszczególnym kodom binarnym róŝnych znaków pisarskich róŝne strony kodowe mogą przyjąć odmienne znaki dla tego samego kodu róŝne strony kodowe mogą róŝnić się wyborem znaków duŝa liczba dostępnych stron kodowych wynika z faktu, iŝ na 8 bitach moŝna zakodować tylko 256 róŝnych znaków, co jest niewystarczające do zmieszczenia w jednym zestawie znaków wszystkich alfabetów problem stron kodowych został rozwiązany po wprowadzeniu Unicode
Rok akademicki 2007/2008, Wykład nr 3 34/42 ISO/IEC 8859 ISO/IEC 8859 - zestaw standardów słuŝących do kodowania znaków za pomocą 8-bitów Standardy te zostały utworzone przez European Computer Manufacturers Association w połowie lat 80-tych, po czym zostały uznane przez ISO Wszystkie zestawy ISO 8859 mają znaki 0-127 (00 (16) -7F (16) ) takie same jak w kodzie ASCII Pozycjom 128-159 (80 (16) -9F (16) ) przypisane są dodatkowe kody sterujące, tzw. C1 (obecnie nie są uŝywane) W czerwcu 2004 roku, grupa robocza odpowiedzialna za utrzymanie zestawów znaków kodowanych ośmiobitowo została rozwiązana, a co za tym idzie, wstrzymane zostały prace związane z ISO 8859, a skoncentrowano się na uniwersalnym zestawie znaków (UCS-2) i Unicode
Rok akademicki 2007/2008, Wykład nr 3 35/42 ISO/IEC 8859 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-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 8859-9 (Latin-5) ISO 8859-10 (Latin-6) ISO 8859-11 (Thai) - dla alfabetu tajskiego ISO 8859-12 - brak ISO 8859-13 (Latin-7) ISO 8859-14 (Latin-8) ISO 8859-15 (Latin-9) ISO 8859-16 (Latin-10) - łaciński dla Europy środkowej
Rok akademicki 2007/2008, Wykład nr 3 36/42 ISO/IEC 8859-1 ISO/IEC 8859-1, Latin-1 - pierwsza część standard ISO/IEC 8859 kodowania znaków ( 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 składa się ze 191 znaków łacińskiego pisma po rozszerzeniu o dodatkowe przypisania znaków jest podstawą dla dwóch mapowań znaków ISO-8859-1 i Windows-1252 SP - spacja NBSP - twarda spacja SHY - miękki dywiz (myślnik)
Rok akademicki 2007/2008, Wykład nr 3 37/42 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 składa się ze 191 znaków łacińskiego pisma zapisywanych na 8-bitach kody z przedziałów 00 (16) -1F (16) oraz 7F (16) -9F (16) nie są uŝywane w ISO-8859-2 kodowanie to jest zgodne z Polską Normą SP - spacja NBSP - twarda spacja SHY - miękki dywiz (myślnik)
Rok akademicki 2007/2008, Wykład nr 3 38/42 ISO/IEC 8859-2 - Kodowanie polskich znaków 18 znaków: Ą - ą Ć - ć Ę - ę Ł - ł Ń - ń Ó - ó Ś - ś Ź - ź ś - Ŝ
Rok akademicki 2007/2008, Wykład nr 3 39/42 ISO/IEC 8859-1 1 i ISO/IEC 8859-2 - porównanie
Rok akademicki 2007/2008, Wykład nr 3 40/42 EBCDIC EBCDIC - Extended Binary Coded Decimal Interchange Code 8-bitowe kodowanie znaków stworzone jako rozszerzenie kodowania BCD umoŝliwia zapisanie do 256 róŝnych symboli pojedynczy znak zapisywany jest na 8-bitach podzielonych na dwie części pierwsze 4 bity oznaczają grupę do jakiej dany znak naleŝy ostatnie 4 bity identyfikują konkretny znak kody EBCDIC nie są zgodne z ASCII EBCDIC występowało w wielu wersjach, odmiennych dla róŝnych państw większość stron kodowych EBCDIC dopuszczała stosowanie tylko dwóch języków (angielski + dodatkowy)
Rok akademicki 2007/2008, Wykład nr 3 41/42 EBCDIC kodowanie EBCDIC było uŝywane głównie w systemach IBM (komputery: z/os, VM, OS/390, systemy operacyjne: OS/400, i5/os) w latach 60-tych XX wieku ułatwiało wprowadzanie danych do komputera przy uŝyciu kart perforowanych (dziurkowanych) nie ma szczególnej przewagi nad systemami kodowania wywodzącymi się z ASCII (ISO 8859, Unicode), a wręcz czasem sprawia problemy brak zachowania kolejności liter zgodnie z kolejnością kodów, np. po R nie ma S na rysunku przedstawiony jest jeden z wariantów EBCDIC - CCSID 500
Rok akademicki 2007/2008, Wykład nr 3 42/42 Kodowanie EBCDIC oraz ISO 8859-1 - porównanie