1 of 13

System dwójkowy

2 of 13

System dwójkowy

Dwójkowy system liczbowy (inaczej binarny) jest pozycyjnym systemem liczbowym, w którym podstawą jest liczba 2. Do zapisu liczb są więc potrzebne tylko dwie cyfry: 0 i 1. Jak w każdym pozycyjnym systemie liczbowym, liczby zapisuje się tu jako ciągi cyfr 0 i 1, z których każda jest mnożnikiem kolejnej potęgi podstawy systemu, czyli liczby 2.

Używa się go powszechnie w elektronice cyfrowej, gdzie minimalizacja liczby stanów (do dwóch) pozwala na zminimalizowanie przekłamań danych. Stąd system ten przyjął się także w informatyce.

ZSE Rzeszów - Systemy operacyjne

*

2

3 of 13

Sposoby zapisywania liczb w systemie binarnym

*

ZSE Rzeszów - Systemy operacyjne

3

Zapisując liczbę w systemie dwójkowym należy zaznaczyć, że jest to system binarny przez dodanie indeksu dolnego, np. 11110[2] lub 11110[B] Jeśli jest to system dziesiętny, to odpowiednio można go zaznaczyć, np. 30(10) lub 30(D). W ten sposób unika się ewentualnego błędu, gdyż na przykład liczba 11110 może występować zarówno w systemie dziesiętnym, dwójkowym, jak i innym, który poznamy później. Skoro już wiemy, jak zapisywać liczby w systemie dwójkowym, to należy wiedzieć, jak zamienić liczbę dziesiętną na binarną. Można to zrobić dwoma sposobami.

4 of 13

Sposób pierwszy polega na wybraniu odpowiednich liczb (wartości potęg 2):

*

ZSE Rzeszów - Systemy operacyjne

4

Polega na wybraniu odpowiednich liczb (wartości potęg 2). Należy wybrać liczby w taki sposób- aby ich suma była równa wartości liczby przekształcanej. Sumowanie zaczynamy od liczby, która jest mniejsza od liczby przekształcanej. Jeśli wybierzemy daną wartość potęgi 2, to stawiamy pod nią cyfrę 1, jeśli ją pominiemy - cyfrę 0.

210

29

28

27

26

25

24

23

22

21

20

1024

512

256

128

64

32

16

8

4

2

1

5 of 13

Przykład 1

*

ZSE Rzeszów - Systemy operacyjne

5

210

29

28

27

26

25

24

23

22

21

20

1024

512

256

128

64

32

16

8

4

2

1

0

1

0

1

1

0

1

0

0

0

0

512

128

64

16

Liczba (720)10

Stąd: 512+128+64+16 = (720)10= (01011010000)2

6 of 13

Przykład 2

*

ZSE Rzeszów - Systemy operacyjne

6

210

29

28

27

26

25

24

23

22

21

20

1024

512

256

128

64

32

16

8

4

2

1

0

1

0

1

0

1

0

0

1

0

1

512

128

32

4

1

Liczba (677)10

Stąd: 512+128+32+4+1 = (677)10= (01010100101)2

7 of 13

Przykład 3

*

ZSE Rzeszów - Systemy operacyjne

7

210

29

28

27

26

25

24

23

22

21

20

1024

512

256

128

64

32

16

8

4

2

1

0

1

1

1

1

1

1

1

1

0

0

512

256

128

64

32

16

8

4

Liczba (1020)10

Stąd: 512+256+128+64+32+16+8+4 = (1020)10= (01111111100)2

8 of 13

Sposób drugi

*

ZSE Rzeszów - Systemy operacyjne

8

Sposób drugi polega na kolejnym dzieleniu liczby przez 2. Jeżeli po dzieleniu zostaje reszta, to wpisujemy po prawej stronie 1. Jeżeli liczba dzieli się bez reszty - wpisujemy 0.

Przykład:

75:2 = 37 reszta | 1

37:2 = 18 reszta | 1

18:2 = 9 reszta | 0

9:2 = 4 reszta | 1

4:2 = 2 reszta |0

2:2 = 1 reszta |0

1:2 = 0 reszta |1

Kierunek odczytu

Zatem liczba (75)10, w systemie binarnym to: (1001011)2

9 of 13

Przykład 4

*

ZSE Rzeszów - Systemy operacyjne

9

Przykład: (385)10

385:2 = 192 reszta | 1

192:2 = 96 reszta | 0

96:2 = 48 reszta | 0

48:2 = 24 reszta | 0

24:2 = 12 reszta |0

12:2 = 6 reszta |0

6:2 = 3 reszta |0

3:2 = 1 reszta |1

1:2 = 0 reszta |1

Kierunek odczytu

Zatem liczba (385)10, w systemie binarnym to: (110000001)2

10 of 13

Przykład 5

*

ZSE Rzeszów - Systemy operacyjne

10

Przykład: (724)10

724:2 = 362 reszta | 0

362 :2 = 181 reszta | 0

181:2 = 90 reszta | 1

90:2 = 45 reszta | 0

45:2 = 22 reszta |1

22:2 = 11 reszta |0

11:2 = 5 reszta |1

5:2 = 2 reszta |1

2:2 = 1 reszta |0

1:2 = 0 reszta |1

Kierunek odczytu

Zatem liczba (724)10, w systemie binarnym to: (1011010100)2

11 of 13

Zamiana liczby binarnej na dziesiętną

*

ZSE Rzeszów - Systemy operacyjne

11

Aby zamienić liczbę binarną na dziesiętną należy wszystkie cyfry po kolei z każ­dej pozycji dodać pomnożone przez kolejną potęgę liczby 2. Zaczynamy od cyfry ostatniej.

Przykład:

12 of 13

Zadanie

*

ZSE Rzeszów - Systemy operacyjne

12

1. Zamień liczby dziesiętne na liczby binarne pierwszą poznaną metodą:

a) (953)10

b) (287)10

c) (496)10

d) (743)10

e) (911)10

2. Zamień liczby dziesiętne na liczby binarne drugą poznaną metodą:

a) (248)10

b) (927)10

c) (1342)10

d) (1289)10

e) (125)10

3.Wyniki w formie liczby binarnej sprawdź zamieniając na liczbę dziesiętną

13 of 13

Źródło:

ZSE Rzeszów - Systemy operacyjne

  1. Urządzenia techniki komputerowej, T. Marciniuk

*

13