21
Kody binarne M@rek Pudełko Urządzenia Techniki Komputerowej

Kody binarne

  • Upload
    minowa

  • View
    76

  • Download
    1

Embed Size (px)

DESCRIPTION

Kody binarne. M@rek Pudełko Urządzenia Techniki Komputerowej. Kod liczbowy. Kodem liczbowym to kod, który liczbom dowolnego systemu będzie przyporządkowywał słowa kodowe w postaci zerojedynkowej. Przykłady Naturalny kod binarny Kody BCD Kody alfanumeryczne ASCII EBCDEC Unicode. - PowerPoint PPT Presentation

Citation preview

Page 1: Kody binarne

Kody binarne

M@rek PudełkoUrządzenia Techniki Komputerowej

Page 2: Kody binarne

Kod liczbowy• Kodem liczbowym to kod, który liczbom

dowolnego systemu będzie przyporządkowywał słowa kodowe w postaci zerojedynkowej.

• Przykłady– Naturalny kod binarny– Kody BCD– Kody alfanumeryczne

• ASCII• EBCDEC• Unicode

2

Page 3: Kody binarne

Wprowadzenie

• Dwójkowy system liczbowy oraz kody - reprezentują informacje w układach cyfrowych

• Proces przekształcania informacji jednego rodzaju postaci na inną postać nazywamy kodowaniem.

3

Page 4: Kody binarne

• Kodowanie to przyporządkowanie poszczególnym obiektom zbioru kodowanego, odpowiadających im elementów zwanych słowami kodowanymi.

• Każdemu słowu kodowanemu musi odpowiadać dokładnie jeden element kodowany.

A

B

C

111

010

100

001

Zbór (obiektów) elementówkodowanych

Zbór słówkodowanych

reprezentowanie

• Literze C mogą odpowiadać dwa słowa kodowe. Nie przeszkadza to w poprawnym przetwarzaniu inf. (choć stanowi pewne utrudnienie procesu kodowania).

• Sytuacja odwrotna jest niedopuszczalna, bo uzyskane w procesie kodowania słowo kodowe 001 byłoby niejasne - nie wiadomo byłoby, czy wynik odpowiada np. literze A czy B.

Page 5: Kody binarne

5

Sposoby opisywania kodów

Opis słowny Wzór Tabelka przekodowująca

Ciąg znaków

Postacie informacji kodowanej

Tekst(ciąg znaków)

Wartości logiczne lub liczby

Polecenia do wykonania przez komputer (instrukcje dla procesora)

Page 6: Kody binarne

Porównanie systemów 2,8,10,16System dziesiętny System szesnastkowy System binarny System ósemkowy

0 0 0000 00

1 1 0001 01

2 2 0010 02

3 3 0011 03

4 4 0100 04

5 5 0101 05

6 6 0110 06

7 7 0111 07

8 8 1000 10

9 9 1001 11

10 A 1010 12

11 B 1011 13

12 C 1100 14

13 D 1101 15

14 E 1110 16

15 F 1111 17 6

Page 7: Kody binarne

Kod 1 z n• Kod 1 z n to kod gdzie w słowie o długości n bitów tylko

jeden bit jest wyróżniony.• O wartości liczby decyduje pozycja wyróżnionego bitu.• Kod 1 z n jest kodem pozycyjnym, bezwagowym.• Stosuje się dwa sposoby wyróżniania:

– bit wyróżniony to 1 (reszta ustawiona na 0)– bit wyróżniony to 0 (reszta ustawiona na 1) –tzw. negacja

kodu 1 z n.

7

Page 8: Kody binarne

Kod 1 z 10Wartość dziesiętna Wartość binarna Kod 1 z 10 Negacja kodu 1 z 10

0 0000 0000000001 1111111110

1 0001 0000000010 1111111101

2 0010 0000000100 1111111011

3 0011 0000001000 1111110111

4 0100 0000010000 1111101111

5 0101 0000100000 1111011111

6 0110 0001000000 1110111111

7 0111 0010000000 1101111111

8 1000 0100000000 1011111111

9 1001 1000000000 0111111111

8

Page 9: Kody binarne

Kod BCD• Kod BCD (Binary-Coded Decimal czyli dziesiętny

zakodowany dwójkowo) to sposób zapisu cyfr dziesiętnych przy użyciu 4 bitów.

• Liczbę dziesiętną rozbijamy na cyfry i każdą z nich zamieniamy oddzielnie na kod BCD.

• Kod BCD jest obecnie stosowany głównie w urządzeniach elektronicznych z wyświetlaczem cyfrowym (np. w kalkulatorach, miernikach cyfrowych) i w zastosowaniach finansowych informatyki (ujednoznacznia zapis części ułamkowych kwot i ułatwia dziesiętne zaokrąglanie).

9

Page 10: Kody binarne

Kod BCD – zestawienie cyfrWartość dziesiętna Wartość binarna

0 0000

1 0001

2 0010

3 0011

4 0100

5 0101

6 0110

7 0111

8 1000

9 1001

10

Page 11: Kody binarne

Kod BCD – ilość cyfr

• 10 cyfr możemy zapisać za pomocą 4 bitów.

11

• Tak naprawdę wystarczyłoby 3,3 bita.

• W praktyce mamy ogromna ilość potencjalnych kodów BCD.

Page 12: Kody binarne

Zapis kodu BCD w arytmetyce komputerowej

12

Użycie czterech najmłodszych bitów

Spakowane BCD

4 starsze są wtedy ustawiane na jakąś konkretną wartość (np. 1111 jak w EBCDIC, 0011 jak w ASCII, czy 0000),

zapis dwóch cyfr w każdym bajcie (starsza na starszej jego połówce, a młodsza na młodszej)

1111ABCD A1B1C1D1A2B2C2D2

• Większe bezpieczeństwo tak przechowywanych liczb

• Możliwość oznaczenia sposobu kodowania i znaku liczby

• Większa pojemność danych• Wiele mikroprocesorów (w tym rodzina

Intel 8080) może dodać i odjąć liczby BCD w wersji spakowanej

Page 13: Kody binarne

Kody binarne

13

Page 14: Kody binarne

Kod Graya

• Kod Graya jest kodem refleksyjnym tzn. dwie kolejne liczby różnią się tylko jednym bitem.

• Jest również kodem cyklicznym, gdyż ostatni i pierwszy wyraz tego kodu także spełniają tę zasadę.

• Używa się go w przetwornikach analogowo-cyfrowych, szczególnie w systemach gdzie występują po sobie kolejne wartości np. czujniki położenia/obrotu.

14

Page 15: Kody binarne

Rozbudowa kodu Graya• Rozszerzanie kodu Graya o 1 bit przeprowadza się wg algorytmu:1. Dopisz te same słowa kodowe, ale w odwrotnej kolejności (odbicie lustrzane)2. Do początkowych wyrazów dopisz bit o wartości zero, natomiast do odbitych

lustrzanie bit o wartości 1.

• Konwersja z kodu binarnego na kod Graya1. przesunąć liczbę w postaci binarnej o jeden bit w prawo (podzielić przez 2)2. wykonać operację XOR na odpowiednich bitach liczby i wyniku dzielenia przez 2.

• Konwersja z kodu Graya na kod binarny1. Kolejne cyfry naturalnego kodu binarnego wyznacza się iteracyjnie, od

najbardziej znaczącej, w oparciu o odpowiednią cyfrę kodu Graya i poprzednio wyznaczoną cyfrę kodu naturalnego:

2. przyjmij pierwszą (najbardziej znaczącą) cyfrę kodu naturalnego równą pierwszej cyfrze kodu Graya

3. każdą kolejną cyfrę oblicz jako różnicę symetryczną (XOR) odpowiedniej cyfry kodu Graya i poprzednio wyznaczonej cyfry kodu naturalnego.

15

Page 16: Kody binarne

Porównanie kodów z kodem GrayaSystem dziesiętny Kod binarny Kod Graya

0 0000 0000

1 0001 0001

2 0010 0011

3 0011 0010

4 0100 0110

5 0101 0111

6 0110 0101

7 0111 0100

8 1000 1100

9 1001 1101

10 1010 1111

11 1011 1110

12 1100 1010

13 1101 1011

14 1110 1001

15 1111 1000 16

Page 17: Kody binarne

17

Page 18: Kody binarne

18

Page 19: Kody binarne

2. • Kod ASCII (Amerykański standardowy kod dla

wymiany informacji)Jest to kod służący do kodowania tekstów i przesyłania ich pomiędzy urządzeniami. Koduje on oprócz znaków alfa numerycznych tak zwane znaki sterujące do sterowania transmisją i pracą drukarki. Kod ten jest w postaci tabeli zawierającej kodowane obiekty i odpowiadające im słowa kodowane.

Page 20: Kody binarne

Znaki w PC jak i większości komputerów zapisane są jednym Bajtem, co oznacza że może ich być aż 256.

Właściwe ASCII (techniczne) składa się z 128 znaków od 0 do 127, a znaki od 128 do 255 nazywane sąrozszerzonymi znakami ASCII, stanowią pewienNieoficjalny standard, zwane znakami IBM (istniejąurządzenia nie obsługujące drugiej polówki)Zestaw znaków ASCII o kodach od 0 do 127 dzielisię na dwie części pierwsza o kodach od 0 do 32, druga od 32 do 127 są to litery i znaki przestankoweOd 0 do 32 znajdują się znaki sterujące, majaspecjalne znaczenie, kiedy komp. porozumiewa sięZ drukarką musi jej powiedzieć co i jak ma wydrukować (kiedy kończy się wiersz, a kiedy strona)

Page 21: Kody binarne

Pierwsze 32 kody nie są używane do przekazywania danych, zapewniają natomiast polecenia, sygnały kontrolne i sterujące.