Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙...

33
Wst ˛ ep do Informatyki Bo˙ zena Wo´ zna-Szcze´ sniak [email protected] Jan Dlugosz University, Poland Wyklad 4 Bo˙ zena Wo´ zna-Szcze´ sniak (AJD) Wst ˛ ep do Informatyki Wyklad 4 1/1

Transcript of Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙...

Page 1: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Wstep do Informatyki

Bozena [email protected]

Jan Długosz University, Poland

Wykład 4

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 1 / 1

Page 2: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

DZIELENIE LICZB BINARNYCH

Dzielenie mozna przeprowadzic wykorzystujac nastepujace metody:

metoda porównawcza,

metoda nierestytucyjna,

metoda restytucyjna.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 2 / 1

Page 3: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

DZIELENIE LICZB BINARNYCH - metodaporównawcza

Metoda porównawcza jest stosowana w zapisie znak moduł (ZM) i gdyjest spełniony warunek A < B, gdzie:

A - dzielna,

B - dzielnik.

Niech:

r0 - reszta poczatkowa

Rn = rn · 2−n - reszta z dzielenia

rn - n-ta reszta czesciowa

Q - iloraz uzyskany w algorytmie o bitach qi .

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 3 / 1

Page 4: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

DZIELENIE LICZB BINARNYCH - metodaporównawcza

Polega na porównywaniu dzielnika z n–ta reszta.

1.Jezeli przesunieta reszta czesciowa jest wieksza lub równa oddzielnika (r >= B), to:

– kolejny bit ilorazu qi ustawiamy na 1 (tj. qi = 1),

– odejmujemy dzielnik od tej reszty.

2.Jezeli przesunieta reszta czesciowa jest mniejsza od dzielnika(r < B), to kolejny bit ilorazu qi = 0.

3.Dokonujemy przesuniecia otrzymanego wyniku o jedno miejsce wlewo i przechodzimy do punktu pierwszego.

Wynikiem dzielenia jest iloraz Q o bitach q0q1...qi .

W pierwszym kroku porównujemy reszte poczatkowa r0 (tzn. Azapisana na tylu pozycjach co B) z dzielnikiem.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 4 / 1

Page 5: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA PORÓWNAWCZA – przykład 1

PodzielicA = − 25

128= 1.0011001(ZM)

przez

B =516

= 0.0101(ZM).

Warunek A < B jest spełniony.

Porównujemy kolejne reszty czesciowe z modułem dzielnika.

Oczekiwany wynik:

− 25128

:5

16= − 25

128· 16

5= −5

8= 1.101(ZM)

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 5 / 1

Page 6: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA PORÓWNAWCZA – przykład 1

⇐ r0 .0011001

r1 .011001

r1 > B r1 − B q1 = 1

.011001

− .010100

⇐ .000101

r2 .00101

⇐ r2 < B .00101 q2 = 0

r3 .0101

r3 = B r3 − B q3 = 1

.0101

− .0101

.0000

r4 .0000

A = 1.0011001(ZM)

B = 0.0101(ZM)

Bit znaku:

q0 = a0 ⊕ b0

q0 = 1

Q = q0.q1q2q3

AB

= 1.101

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 6 / 1

Page 7: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA PORÓWNAWCZA – przykład 2

PodzielicA = − 3

128= 1.0000011(ZM)

przez

B =916

= 0.1001(ZM).

Warunek A < B jest spełniony.

Porównujemy kolejne reszty czesciowe z modułem dzielnika.

Oczekiwany wynik:

− 3128

:9

16= − 3

128· 16

9= − 1

24≈ 1.00001(ZM)

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 7 / 1

Page 8: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA PORÓWNAWCZA – przykład 2⇐ r0 .0000011

r1 .0000110

r1 < B q1 = 0

⇐ r2 .0001100

r2 < B q2 = 0

⇐ r3 .0011000

r3 < B q3 = 0

⇐ r4 .0110000

r4 < B q4 = 0

⇐ r5 .1100000

r5 ≥ B r5 − B q5 = 1

.11000− .10010= .00110

⇐ r6 .0110

A = 1.0000011(ZM)

B = 0.1001(ZM)

Bit znaku:

q0 = a0 ⊕ b0

q0 = 1

Q = q0.q1q2q3q4q5

AB

= 1.00001

Reszta : 0.011 · 2−6

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 8 / 1

Page 9: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA NIERESTYTUCYJNA

Jest to metoda dzielenia dwóch liczb zapisanych w kodzie U2.

Aby mozna było ja zastosowac, moduł dzielnej musi byc mniejszy odmodułu dzielnika (|A| < |B|)

1. Metoda ta polega na badaniu znaku dzielnika i kolejnej resztyczesciowej. Pierwsza reszta czesciowa jest równa dzielnej.

Jezeli znaki sa zgodne to odejmujemy dzielnik od przesunietej wlewo kolejnej reszty czesciowej; kolejny bit ilorazu qi = 1.

Jezeli znaki sa rózne to dodajemy dzielnik do przesunietej w lewokolejnej reszty czesciowej; kolejny bit ilorazu qi = 0.

2. Powtarzamy punkt 1, az do momentu, gdy kolejna reszta czesciowabedzie równa 0.

3. Do otrzymanego wyniku dodajemy poprawke równa: −1 + 2−n,gdzie n oznacza n–ta reszte z dzielenia.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 9 / 1

Page 10: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA NIERESTYTUCYJNA - przykład 1

Podziel A przez B, gdzie

A = − 15128

= 1.1110001(U2)

B =38= 0.011(U2)

Warunek |A| < |B| jest spełniony.

Oczekiwany wynik:

− 15128

:38= − 15

128· 8

3= − 5

16

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 10 / 1

Page 11: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA NIERESTYTUCYJNA – przykład 1

r0 1.1110001⇐ r0 r1 1.110001

B(+); r1(−) r1 + B q1 = 01.110001 + 0.011000

r2 0.001001⇐ r2 r3 0.01001

B(+); r3(+) r3 − B q2 = 10.01001 + 1.10100

r4 1.11101⇐ r4 r5 1.1101

B(+); r5(−) r5 + B q3 = 01.1101 + 0.0110

r6 0.0011⇐ r6 r7 0.011

B(+); r7(+) r7 − B q4 = 10.011− 0.011

r8 0.000

A = 1.1110001(U2)B = 0.0011(U2)

Bit znaku: q1 = 0

Pseudo iloraz:Q = q1.q2q3q4 == 0.101(U2)

Poprawka:−1 + 2−4 = −15

16 == 1.0001(U2)

Ostatecznie:0.101 + 1.0001 == 1.1011

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 11 / 1

Page 12: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA NIERESTYTUCYJNA - przykład 2

Podziel A przez B, gdzie

A = − 15128

= 1.1100111(U2)

B = −58= 1.0110000(U2)

Warunek |A| < |B| jest spełniony.

Oczekiwany wynik:

− 25128

: (−58) =

25128· 8

5=

516

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 12 / 1

Page 13: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

METODA NIERESTYTUCYJNA – przykład 2

r0 1.1100111⇐ r0 r1 1.1001110

B(−); r1(−) r1 + (−B) q1 = 11.100111 + 0.1010

r2 0.001111⇐ r2 r3 0.011110

B(−); r3(+) r3 + B q2 = 00.011110 + 1.0110

r4 1.110110⇐ r4 r5 1.10110

B(−); r5(−) r3 + (−B) q3 = 11.10110 + 0.1010

r6 0.01010

⇐ r6 r7 0.1010

B(−); r7(+) r7 + B q4 = 00.1010 + 1.01100.0000

A = 1.1100111(U2)B = 1.0110000(U2)

Bit znaku: q1 = 1

Pseudo iloraz:Q = q1.q2q3 == 1.010(U2)

Poprawka:−1 + 2−4 = −15

16 == 1.0001(U2)

Ostatecznie:1.010 + 1.0001 == 0.0101(U2) =

516

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 13 / 1

Page 14: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

WARTOSC LICZBY Z NADMIAREM

Dotychczas poznane kody liczb binarnych nie pozwalaja nauszeregowanie w porzadku rosnacym słów kodowych. Dlaczego?

Rozwazmy nastepujacy przykład słów kodowych 3 bitowych. Wówczassłowa kodowe kolejnych liczb musiałyby sie układac nastepujaco: 000,001, 010, 011, 100, 101, 110, 111, gdze słowo kodowe 000 powinnookreslac liczbe najmniejsza, a słowo kodowe 111 liczbe najwieksza.Ale zarówno poznany juz kod znak-moduł, jak i kod U2 na to niepozwalaja:

kod 000 001 010 011 100 101 110 111

ZM 0 1 2 3 0 −1 −2 −3

U2 0 1 2 3 −4 −3 −2 −1

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 14 / 1

Page 15: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

WARTOSC LICZBY Z NADMIAREM

Niech wartosc binarna słowa kodowego bedzie równa kodowanejliczbie pomniejszonej o pewna stała zwana nadmiarem (ang. excesslub bias). W zaleznosci od tej stałej słowa kodowe beda oznaczałyrózne liczby, np.:

Wartosc nadmiaru – BIASkod 4 3 2 1 0 -1 -2 -3000 -4 -3 -2 -1 0 1 2 3001 -3 -2 -1 0 1 2 3 4010 -2 -1 0 1 2 3 4 5011 -1 0 1 2 3 4 5 6100 0 1 2 3 4 5 6 7101 1 2 3 4 5 6 7 8110 2 3 4 5 6 7 8 9111 3 4 5 6 7 8 9 10

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 15 / 1

Page 16: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

WARTOSC LICZBY Z NADMIAREM

UWAGA:W zaleznosci od nadmiaru mozemy otrzymywac rózne zakresykodowanych liczb.

Przykładowo dla przedstawionego w tabeli 3 bitowego kodu inadmiaru 4 otrzymujemy zakres od -4 do 3.

Nadmiar mozna tak dobrac, aby zakres w całosci zawierał sie postronie liczb ujemnych lub dodatnich.

Przykładowo dla przedstawionego w tabeli 3 bitowego kodu inadmiaru -3 otrzymujemy zakres od 3 do 10.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 16 / 1

Page 17: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

WARTOSC LICZBY Z NADMIAREM - definicja

Wartosc dziesietna liczby zapisanej w dwójkowym kodzie z nadmiarem

bn−1bn−2 . . . b2b1b0 (BIAS) =

= bn−1 · 2n−1 + bn−2 · 2n−2 + . . .+ b2 · 22 + b1 · 21 + b0 · 20 − BIAS,

gdzie

bi - i-ty bit, cyfra dwójkowa 0 lub 1

n - liczba bitów w zapisie liczby

bias - nadmiar, odchyłka w stosunku do naturalnych wartoscisłów

kodowych.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 17 / 1

Page 18: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

KODOWANIE Z NADMIAREM - PRZYKŁAD 1

Dla kodu z nadmiarem BIAS = 129(10) oblicz wartosc słowa kodowego11111111(BIAS=129).

11111111(BIAS=129) = 27 + 26 + 25 + 24 + 23 + 22 + 21 + 20 − 129 =

= 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1− 129 =

= 255− 129 =

= 126(10).

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 18 / 1

Page 19: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

KODOWANIE Z NADMIAREM - PRZYKŁAD 2

Dla kodu z nadmiarem BIAS = 63(10) oblicz wartosc słowa kodowego00011111(BIAS=63).

00011111(BIAS=63) = 24 + 23 + 22 + 21 + 20 − 63 =

= 16 + 8 + 4 + 2 + 1− 63 =

= 31− 63 =

= (−32)(10).

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 19 / 1

Page 20: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Przeliczanie liczb dziesietnych na liczby z nadmiarem

Procedura przeliczania liczby dziesietnej na dwójkowy zapis znadmiarem

1. Do wartosci liczby dziesietnej dodaj nadmiar bias. Otrzymasz wten sposób wartosc dziesietna binarnego zapisu liczby w systemiedwójkowym z nadmiarem.

2. Obliczona wartosc słowa kodowego przelicz na system dwójkowy.

3. Wynikowe słowo binarne uzupełnij bitami o wartosci 0 do długosciformatu.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 20 / 1

Page 21: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Przeliczyc liczbe dziesietna 95(10) na zapis w8-bitowym kodzie z nadmiarem 129(10)

Obliczamy wartosc dziesietna słowa kodowego:

95 + 129 = 224

Otrzymana wartosc słowa kodowego przeliczamy na systemdwójkowy:

224(10) = 11100000(2)

95(10) = 11100000(BIAS=129)

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 21 / 1

Page 22: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Przeliczyc liczbe dziesietna (−24)(10) na zapis w8-bitowym kodzie z nadmiarem 129(10)

Obliczamy wartosc dziesietna słowa kodowego:

(−24) + 129 = 105

Otrzymana wartosc słowa kodowego przeliczamy na systemdwójkowy:

105(10) = 1101001(2)

(−24)(10) = 01101001(BIAS=129)

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 22 / 1

Page 23: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Zakres liczb z nadmiarem

Słowa kodowe tworza ciag rosnacy w naturalnym systemie binarnym.Najmniejszym co do wartosci słowem kodowym jest 0 . . . 0:

min(BIAS) = 0...0(BIAS) = 0− BIAS,

a najwiekszym 1 . . . 1:

max(BIAS) = 1...1(BIAS) = 2n − 1− BIAS.

Zatem zakres n bitowej liczby dwójkowej w kodzie z nadmiarem bias

Z(BIAS) = 〈−BIAS;2n − 1− BIAS〉

Zakres ten moze byc dowolnie przesuwany na osi liczbowej poprzezzmiane odchylenia. Dzieki temu zawsze mozna go dopasowac dobiezacych potrzeb obliczeniowych

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 23 / 1

Page 24: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

ZADANIE 1 - Jakie zakresy posiadaja:

4 bitowe liczby w kodzie z nadmiarem BIAS = 8 = 23

< 0000(BIAS=8),1111(BIAS=8) >=< −8,7 >

8 bitowe liczby w kodzie z nadmiarem BIAS = 128 = 27

< 00000000(BIAS=128),11111111(BIAS=128) >=< −128,127 >

16 bitowe liczby w kodzie z nadmiarem BIAS = 32768 = 215

< 0000000000000000(BIAS=215),1111111111111111(BIAS=215) >=< −32768,32767 >

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 24 / 1

Page 25: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

ZADANIE 1 - Jakie zakresy posiadaja:

4 bitowe liczby w kodzie z nadmiarem BIAS = 8 = 23

< 0000(BIAS=8),1111(BIAS=8) >=< −8,7 >

8 bitowe liczby w kodzie z nadmiarem BIAS = 128 = 27

< 00000000(BIAS=128),11111111(BIAS=128) >=< −128,127 >

16 bitowe liczby w kodzie z nadmiarem BIAS = 32768 = 215

< 0000000000000000(BIAS=215),1111111111111111(BIAS=215) >=< −32768,32767 >

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 24 / 1

Page 26: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

ZADANIE 1 - Jakie zakresy posiadaja:

4 bitowe liczby w kodzie z nadmiarem BIAS = 8 = 23

< 0000(BIAS=8),1111(BIAS=8) >=< −8,7 >

8 bitowe liczby w kodzie z nadmiarem BIAS = 128 = 27

< 00000000(BIAS=128),11111111(BIAS=128) >=< −128,127 >

16 bitowe liczby w kodzie z nadmiarem BIAS = 32768 = 215

< 0000000000000000(BIAS=215),1111111111111111(BIAS=215) >=< −32768,32767 >

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 24 / 1

Page 27: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Arytmetyka liczb z nadmiarem - Dodawanie

Kod binarny liczby w zapisie z nadmiarem ma wartosc:

c(BIAS) = liczba + BIAS

Suma dwóch kodów da nam:

c1(BIAS) = liczba1 + BIAS

c2(BIAS) = liczba2 + BIAS

c1(BIAS) + c1(BIAS) = (liczba1 + liczba2) + 2 · BIAS

Prosta suma dwóch słów kodowych prowadzi do wyniku, który jest zaduzy o wartosc nadmiaru. Aby zatem otrzymac słowo kodoweodpowiadajace sumie liczb, nalezy od wyniku dodawania odjacnadmiar:

c1+2(BIAS) = c1(BIAS) + c2(BIAS) − BIAS

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 25 / 1

Page 28: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Obliczyc 0011(BIAS=7) + 1010(BIAS=7)

0 0 1 1

+ 1 0 1 0

1 1 0 1

− 0 1 1 1

0 1 1 0

0011(BIAS=7) + 1010(BIAS=7) = 0110(BIAS=7)

Sprawdzenie:

0011(BIAS=7) = 3− 7 = −4

1010(BIAS=7) = 10− 7 = 3

0110(BIAS=7) = 6− 7 = −1

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 26 / 1

Page 29: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Arytmetyka liczb z nadmiarem - Odejmowanie

Kod binarny liczby w zapisie z nadmiarem ma wartosc:

c(BIAS) = liczba + BIAS

Róznica dwóch kodów da nam:

c1(BIAS) = liczba1 + BIAS

c2(BIAS) = liczba2 + BIAS

c1(BIAS) − c1(BIAS) = liczba1 − liczba2

Prosta róznica dwóch słów kodowych prowadzi do wyniku, który jestza mały o wartosc nadmiaru. Aby zatem otrzymac słowo kodoweodpowiadajace róznicy liczb, nalezy do wyniku odejmowania dodacnadmiar:

c1−2(BIAS) = c1(BIAS) − c2(BIAS) + BIAS

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 27 / 1

Page 30: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Obliczyc 1011(BIAS=7) − 1110(BIAS=7)

1 0 1 1

− 1 1 1 0

1 1 1 0 1

+ 0 1 1 1

1 0 1 0 0

1011(BIAS=7) − 1110(BIAS=7) = 0100(BIAS=7)

Sprawdzenie:

1011(BIAS=7) = 11− 7 = 4

1110(BIAS=7) = 14− 7 = 7

0100(BIAS=7) = 4− 7 = −3

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 28 / 1

Page 31: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

ZADANIA

Zad.1 Obliczyc wartosc dzisietna liczb dwójkowych z nadmiarem:

a) 1101(BIAS=9) b) 1110(BIAS=8)

c) 0011(BIAS=7) d) 1001(BIAS=6)

e) 0110(BIAS=5) f ) 1010(BIAS=4)

Zad.2 Przelicz liczby dziesietne na ich 4-bitowy kod binarny znadmiarem 6:a) 5(10) b) −5(10)

c) 8(10) d) 3(10)

e) −4(10) f ) −9(10)

Zad.3 Oblicz:a) 0111(BIAS=8) + 1000(BIAS=8) b) 1111(BIAS=5) + 0001(BIAS=5)

c) 0100(BIAS=9) + 1011(BIAS=9) d) 0011(BIAS=7) − 1001(BIAS=7)

e) 1000(BIAS=6) − 1100(BIAS=6) f ) 1010(BIAS=8) − 1001(BIAS=8)

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 29 / 1

Page 32: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Kodowanie znakówNajbardziej popularnym standardem kodowania znaków jest kodASCII:

zapisuje znaki na 7 bitach

obejmuje kody od 0 do 127; np. wielkie litery alfabetu łacinskiegoodpowiadaja kodom 65 –90, małe 97 –122, cyfry arabskie 48 –57

uzycie pozostałego ósmego bitu bajta tworzy tzw. ExtendedACSII (rozszerzony kod ASCII)

Potrzeba reprezentacji innych znaków (np. narodowych znakówdiakrytycznych) spowodowała potrzebe stworzenia dodatkowychkodów.

Istnieje kilka standardów kodowania polskich znaków, najbardziejpopularne to: ISO-8859-2 (Latin-2) i Windows-1250.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 30 / 1

Page 33: Wstep do Informatyki - wozna. · PDF fileWstep˛ do Informatyki Bozena Wozna-Szcz´ e˙ sniak´ bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bo˙zena Wozna-Szcz´ e ´sniak

Kodowanie znaków

Współczesnym standardem kodowania znaków jest Unicode (UCS):powstał jako próba ujednolicenia kodowania znaków róznychjezyków w Internecie

pierwotnie składał sie z 16 bitów

dzisiejszy standard UCS ISO 10646 operuje na 31-bitach

UCS obejmuje wszystkie podstawowe alfabety swiata:arabski,hebrajski, japonski, koreanski, chinski

kody liter znaków diakrytycznych alfabetu łacinskiego znajduja siew zakresie 256 –383 Unicode.

Bozena Wozna-Szczesniak (AJD) Wstep do Informatyki Wykład 4 31 / 1