**თვლის ორობითი სისტემა** — თვლის სისტემა, რომელიც აგებულია პოზიციურ პრინციპზე 2-ის ფუძით. ამ სისტემაში იყენებენ მხოლოდ ორ ნიშანს - ციფრებს 0 და 1; აქაც, ისევე როგორც ყოველ პოზიციურ სისტემაში, ციფრის მნიშვნელობა დამატებით დამოკიდებულია მის მიერ დაკავებულ ადგილზე. რიცხვი 2 ითვლება მეორე თანრიგის ერთეულად და ჩაიწერება ასე: 10 (იკითხება: „ერთი, ნული"). შემდეგი თანრიგის ყოველი ერთული ორჯერ მეტია წინაზე, ე. ი. ეს ერთეულები ადგენენ რიცხვთა მიმდევრობას: 2, 4, 8, 16, ... 2n, ... იმისათვის, რომ ათობით სისტემაში ჩაწერილი რიცხვი ჩაიწეროს ორობით სისტემაში, მას მიმდევრობით ყოფენ 2-ზე და მიღებულ ნაშთებს (0 და 1) ჩაწერენ რიგით ბოლოდან პირველისაკენ. მაგ. 27=13·2+1; 13=6·2+1; 6=3·2+0; 3=1·2+1; 1=0·2+1; ამრიგად 27-ის ორობითი ჩაწერა იქნება 11011.

ამ სისტემაში განსაკუთრებით მარტივად სრულდება ყველა არითმეტიკული მოქმედება: მაგ. გამრავლების ტაბულა დაიყვანება ერთ ტოლობამდე 1·1=1, მაგრამ რიცხვების ჩაწერა მოითხოვს ციფრების დიდ რაოდენობას. მაგ. რიცხვი 7000 იქნება 13-ნიშნა, მაგრამ იმის გამო, რომ ეს სისტემა იყენებს მხოლოდ ორ ციფრს, იგი ხშირ შემთხვევაში სასარგებლოა თეორიული საკითხების განხილვისას და ეგმ-ზე გამოთვლებისას.

თვლა ორობით რიცხვებში
---------------------

თვლა ორობით რიცხვებში ემყარება იმავე პრინციპს, რასაც ნებისმიერი სხვა თვლის სისტემა გვთავაზობს. თვლა იწყება ციფრიდან 0 და ყოველი შემდეგი რიცხვი მიიღება ინკრემენტაციის (საფეხურებრივი ზრდის) გზით. კერძოდ, თუ ორობითი რიცხვის ყველა პოზიციაზე 1-ანებია, მაშინ ეს უკანასკნელები 0-ებად იქცევიან და მარცხნიდან ემატება 1-ის ტოლი ახალი პოზიცია, წინააღმდეგ შემთხვევაში მარჯვენა განაპირა პოზიციიდან მოყოლებული ყველა 0 თანმიმდევრობით იქცევა 1-ად:

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| ორობითი რიცხვი | კომენტარი |
| --- | --- |
| 0 | შემდეგ საფეხურზე ეს 0 გადაიქცევა 1-ად |
| 1 | რადგანაც ყველა პოზიციაზე 1-ანია, შემდეგ საფეხურზე იგი გადაიქცევა 0-ად და მარცხნიდან 1-ის ტოლი ახალი პოზიცია დაემატება |
| 10 | პირველ პოზიციაზე 1-ანია, მეორეზე - 0, ამიტომ შემდეგ საფეხურზე ეს უკანასკნელი გადაიქცევა 1-ად, ხოლო პირველი პოზიცია უცვლელი დარჩება |
| 11 | ორივე პოზიციაზე 1-ანებია, ამიტომ შემდეგ საფეხურზე ისინი 0-ებად იქცევა და მარცხნიდან 1-ის ტოლი ახალი პოზიცია დაემატება |
| 100 | პირველ პოზიციაზე 1-ანია, მეორეზე და მესამეზე - 0-ები, ამიტომ შემდეგ საფეხურზე მარჯვენა განაპირა 0 გადაიქცევა 1-ად, ხოლო მეორე პოზიცია უცვლელი დარჩება |
| 101 | შემდეგ საფეხურზე მეორე პოზიციის ჯერი დგება და ის გადაიქცევა 1-ად |
| 110 | სამივე პოზიციაზე 1-ანებია, ამიტომ შემდეგ საფეხურზე ისინი 0-ებად იქცევა და მარცხნიდან 1-ის ტოლი ახალი პოზიცია დაემატება |
| 111 | პირველ პოზიციაზე 1-ანია, დანარჩენებზე - 0-ები, ამიტომ შემდეგ საფეხურზე მარჯვენა განაპირა 0 გადაიქცევა 1-ად |
| 1000 | ... |
| ... | .. |

 |

ორობითი რიცხვის გარდაქმნა ათობითში და პირიქით
---------------------------------------------

თუ კარგად დავაკვირდებით, ნებისმიერი ათობითი რიცხვი შეიძლება წარმოდგინდეს ამ რიცხვის შემადგენელი ციფრების 10-ის ხარისხებზე ნამრავლთა ჯამის მეშვეობით, მაგალითად, რიცხვი 4516 დაიშლება შემდეგნაირად:

4516 = 4·103 + 5·102 + 1·101 + 6·100

ანუ, 10-ის ხარისხი ემთხვევა რიცხვში ციფრის პოზიციის ნომერს 'მინუს' 1. ანალოგიური პრინციპი მოქმედებს ორობითი რიცხვების გარდაქმნისას ათობითში, მხოლოდ ამ შემთხვევაში ფუძე 2-ის ტოლია. მაგალითად, ორობითი რიცხვი 1101012 წარმოდგინდება თვლის ათობით სისტემაში შემდეგნაირად (ინდექსი 2 მიუთითებს რიცხვის ორობით სახეს):

1101012 = 1·25 + 1·24 + 0·23 + 1·22 + 0·21 + 1·20 = 5310

ათობითი რიცხვის გარდასაქმნელად ორობითში, საჭიროა ეს რიცხვი მთელად გავყოთ 2-ზე და მიღებულ ნაშთს განვიხილავთ მისაღები ორობითი რიცხვის ბოლო პოზიციაზე, შემდეგ განაყოფი გავყოთ მთელად 2-ზე და მიღებულ ნაშთს განვიხილავთ მისაღები ორობითი რიცხვის ბოლოსწინა პოზიციაზე, და ა.შ. მანამ, სანამ განაყოფს არ მივიღებთ 1–ზე ნაკლებს:

```
53 : 2 = 26 ნაშთი: 1
26 : 2 = 13 ნაშთი: 0
13 : 2 = 6 ნაშთი: 1
6 : 2 = 3 ნაშთი: 0
3 : 2 = 1 ნაშთი: 1
1 : 2 = 0,5 ნაშთი: 1
```

მივიღეთ ნაშთების შემდეგი მიმდევრობა : 1 0 1 0 1 1. თუ ამ მიმდევრობას განვალაგებთ მისაღები ორობითი რიცხვის პოზიციებზე ბოლოდან, მივიღებთ: 1101012

არითმეტიკა ორობით რიცხვებში
---------------------------

**შეკრება**

ეს ოპერაცია უმარტივესია ორობით არითმეტიკაში. იგი ეყრდნობა 4 ძირითად ტოლობას:

```
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10
```

მათი გათვალისწინებით შეგვიძლია ქვეშმიწერით შევკრიბოთ (ათობითი რიცხვების მსგავსად) ნებისმიერი ორობითი რიცხვები, მაგალითად, 011012 და 101112:

```
   1 1 1 1 1     (<- ვიმახსოვრებთ)
     0 1 1 0 1
+   1 0 1 1 1
------------------
  1 0 0 1 0 0 (<- შედეგი)
```

**გამოკლება**

ძირითადი ტოლობებია:

```
   0 − 0 = 0
   0 − 1 = 1 (ვიმახსოვრებთ (-1)-ს)
   1 − 0 = 1
   1 − 1 = 0
```

მათი გათვალისწინებით შეგვიძლია ქვეშმიწერით გამოვაკლოთ (ათობითი რიცხვების მსგავსად) ნებისმიერი ორობითი რიცხვები, მაგალითად, 11011102 და 101112:

```
       -1 -1 -1 -1   (<- ვიმახსოვრებთ)
    1 1 0 1 1 1 0
 -        1 0 1 1 1
-----------------------
     1 0 1 0 1 1 1
```

**გამრავლება**

ძირითადი ტოლობებია:

```
0 • 0 = 0
0 • 1 = 0
1 • 0 = 0
1 • 1 = 1
```

მათი გათვალისწინებით შეგვიძლია ქვეშმიწერით გავამრავლოთ (ათობითი რიცხვების მსგავსად) ნებისმიერი ორობითი რიცხვები, მაგალითად, 10112 და 10102:

```
              1 0 1 1  
         ×   1 0 1 0  
         ---------------
              0 0 0 0   
  +       1 0 1 1     
  +    0 0 0 0  
  + 1 0 1 1  
  ------------------
     1 1 0 1 1 1 0
```

**გაყოფა**

გაყოფა ორობით რიცხვებში ანალოგიურია გაყოფისა ათობით რიცხვებში. მაგალითად, გავყოთ 110112 (=2710) 1012 (=510) -ზე:

```
         1 1 0 1 1 : 1 0 1 = 1 0 1
      − 1 0 1
        --------
            0 1 1
       −   0 0 0
            -------
              1 1 1
         −   1 0 1
              -------
                 1 0
```

როგორც ვხედავთ, გაყოფის პროცესი წარიმართა შემდეგნაირად: გასაყოფის პირველ სამ ციფრში 101 მოთავსდა ერთხელ, ნაშთი - 1. შემდეგ ჩამოვიტანეთ 1 გასაყოფიდან, მიღებულ რიცხვში 101 მოთავსდა 0-ჯერ, ნაშთი 11. კვლავ ჩამოვიტანეთ 1 და ამჯერად მასში 101 მოთავსდა ერთხელ. რამდენადაც გასაყოფიდან ჩამოსატანი ციფრები ამოიწურა, გაყოფას ვწყვეტთ. შედეგი შემდეგი სახისაა: განაყოფში მივიღეთ 101, ხოლო ნაშთში - 10. მართლაც, თუ ზემოხსენებულ ყველა ორობით რიცხვს გადავიყვანთ ათობითში, დავრწმუნდებით, რომ 2710 : 510 = 510 ნაშთი: 210

ლიტერატურა
----------

* Sanchez, Julio; Canton, Maria P. (2007) *Microcontroller programming: the microchip PIC*. Boca Raton, FL:  CRC Press,   გვ. 37. ISBN 0-8493-7189-9.
* Redmond, Geoffrey; Hon, Tze-Ki (2014) *Teaching the I Ching*.  Oxford University Press. ISBN 0-19-976681-9.

რესურსები ინტერნეტში
--------------------

ვიკისაწყობში არის გვერდი თემაზე:
***თვლის ორობითი სისტემა***

* Binary System at cut-the-knot
* Conversion of Fractions at cut-the-knot
* Binary Digits at Math Is Fun
* How to Convert from Decimal to Binary at wikiHow
* Learning exercise for children at CircuitDesign.info
* Binary Counter with Kids დაარქივებული 2010-01-17 საიტზე Wayback Machine.
* "Magic" Card Trick დაარქივებული 2010-01-23 საიტზე Wayback Machine.
* Quick reference on Howto read binary
* Binary converter to HEX/DEC/OCT with direct access to bits დაარქივებული 2011-02-21 საიტზე Wayback Machine.
* Sir Francis Bacon's BiLiteral Cypher system დაარქივებული 2016-09-23 საიტზე Wayback Machine. , predates binary number system.