System binarny (dwójkowy)

System dwójkowy 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.

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.

Zamiana liczby binarnej na dziesiętną

Wagi pozycji

23

22

21

20

Cyfry zapisu

 1 

 1 

 0 

 1 

Numery pozycji

3

2

1

0

 =1*2+0*21+1*2+1*23=1+0+4+8=13

Krotność wag systemu binarnego:

Krotność wagi Wynik
20 1
21 2
22 4
23 8
24 16
25 32
26 64
27 128
28 256
29 512
210 1024

 

Konwersja zapisu dziesiętnego na dwójkowy.

Istnieje prosty sposób przekształcania liczby z systemu dziesiętnego (decymalnego) na system dwójkowy (binarny):

Część całkowitą dzielimy przez 2 i spisujemy resztę (reszta może przyjąć tylko  dwie wartości 0 lub 1. Jeżeli liczba jest parzysta reszta zawsze będzie równa 0 w przeciwny razie przyjmie wartość 1) ;

Przykład dla liczby x = 12

12:2=6 reszta=0

6:2=3 reszta=0

3:2=1 reszta=1

1:2=0 reszta=1

0

Wynik przepisujemy od dołu :

Liczba 12(10)= 1100(2)

 II sposób:

Polega na odpowiednim wybraniu wagi – czyli wartości potęgi liczby 2 w taki sposób aby suma była równa wartości liczby przekształcanej. Wybór rozpoczynamy od wagi , która jest mniejsza od liczby przekształcanej. W miejsce odpowiadające  wybranej wadze wstawiamy cyfrę 1 . Jeżeli suma dotychczas wybranych wag oraz suma wagi bieżącej  jest większa od liczby zamienianej w to miejsce stawiamy cyfrę 0.

wartość 128 64 32 16 8 4 2 1
pozycja 7 6 5 4 3 2 1 0
l. binarna 0 1 1 0 1 0 0 1
wartość 64 32 8 1

64+32+8+1=105(D) = 1100101(B)

 

Jeżeli nie jesteśmy pewni swoich obliczeń, zachęcam do skorzystania z kalkulatora na swoim komputerze, gdzie możemy sprawdzić zamianę systemów liczbowych. Aby uruchomić kalkulator klikamy „Start”-> „Uruchom” wpisujemy polecenie „Calc” klikamy enter, następnie musimy zmienić ustawienia kalkulatora. Wchodzimy w zakładkę „Widok” wybieramy polecenie „Programisty” lub korzystamy ze skrótu klawiaturowego „Alt +3”.

calc

 

Gdy nasz kalkulator ma uruchomione dodatkowe funkcję wykonujemy przeliczenia. Ważne aby zaznaczyć z jakiego systemu chcemy przeliczać i na jaki, w czerwonej ramce oznaczyłem pole dzięki któremu możemy się przełączać na dany system liczbowy.

Hex – oznacza system szesnastkowy; Dec – oznacza system dziesiętny; Oct – oznacza system ósemkowy; Bin -oznacza system dwójkowy

Obliczenia binarne

Wady systemu dwójkowego:

System binarny jest mało czytelny dla człowieka i łatwo się nam w nim pomylić i pogubić. Na przykład dwa ciągi binarne:

1101001001001110100010100010001000101

oraz

1101001001001110100010100110001000101

Zapis liczb ujemnych wymaga stosowania dodatkowego mechanizmu.

Systemy binarne – ćwiczenia

1. Proszę o przeliczenie liczby z systemu dziesiętnego na binarny.

a) 16(10)=… (2)
b) 120(10)=… (2)
c) 0(10)=… (2)
d) 2009(10)=… (2)
e) 156(10)=… (2)

2. Proszę przeliczyć liczbę z systemu dwójkowego na system dziesiętny.

a) 10(2)=.. (10)
b) 100(2)=.. (10)
c) 110101(2)=.. (10)
d) 101010(2)=.. (10)
e) 1000000(2)=.. (10)
f) 11111111(2)=.. (10)

Źródło: Urządzenia Techniki Komputerowej T. Marciniuk

Jeżeli w dalszym ciągu coś jest nie zrozumiałe, proszę o pytania w komentarzach.

28 komentarzy
  1. Andrzej
  2. Hex
    • teacher
  3. Darek 09
    • teacher
  4. Mateusz36
  5. Darek 15
  6. Darek 15
  7. arek26
  8. BartoszK
  9. Mateusz77
  10. Paweu03
  11. Przemek14
  12. Paweł33
  13. Przemek18
  14. SebastianSiedlarz27
  15. Łukasz 30
  16. Paweł 16
  17. darekp24
  18. Marcin8
  19. Michal34
  20. Konrad21
  21. Kuba04
  22. Grzesiek20
  23. Gresiek28
  24. Przemek14
  25. Daniel31
  26. Marcin07

Leave a Reply

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *