Направо към съдържанието

Бройна система

от Уикипедия, свободната енциклопедия

Бройната система представлява символен метод за представяне на числата посредством ограничен брой символи, наречени цифри. Съществуват два вида бройни системи – непозиционни и позиционни.[1]

Непозиционни бройни системи

[редактиране | редактиране на кода]

Непозиционните бройни системи са тези, при които стойността на цифрата най-общо не зависи от нейното място (позиция) в записа на числото. Такива бройни системи са римската, гръцката, милетската бройна система и др.

Римска бройна система

[редактиране | редактиране на кода]

В римската бройна система използваните знаци са М (за 1000), D (500), C (100), L (50), X (10), V (5), I (1). Общата стойност се изчислява от ляво надясно, като знаците, които са с равна или по-голяма стойност се събират, а тези с по-малка – се изваждат. Например: VI = 5 + 1 = 6, IV = 5 − 1 = 4.

Гръцка бройна система

[редактиране | редактиране на кода]

Гръцката бройна система, използвана главно за практически задачи, е десетична система с групиране по петици. Степените на 10 се означават с началните букви на съответните гръцки думи, като единиците се посочват с чертички, а групирането в петици се означава с буквата Γ пред числото. Например:

ΓΔ = 50, ΓH = 500, ΓX = 5000, ΓM = 50 000.

Милетска бройна система

[редактиране | редактиране на кода]

Милетската бройна система е била предназначена за научни пресмятания и за означаване на цифрите са използвани 24 гръцки и 3 еврейски букви.

Позиционни бройни системи

[редактиране | редактиране на кода]

Позиционните бройни системи са тези, при които стойността на цифрата зависи от нейното място (позиция) в записа на числото, като тя се умножава с т.нар. тегловен коефициент. Той представлява основата на бройната система (например 2, 10 или 16), повдигната на различна степен: нула – за най-младшия разряд, единица за следващия и т.н. – степента нараства с единица за всеки следващ по-старши разряд („наляво“). При дробната част на числото (ако има такава) степента на нейния най-старши разряд (първият след запетаята) е −1, като аналогично на цялата част от числото нараства по модул с единица (намалява с −1) в посока по-младшите разряди („надясно“).

Десетичната бройна система е позиционна бройна система с целочислена основа десет.

Всяко число може да бъде преобразувано от една бройна система в друга.

Двоична в десетична

[редактиране | редактиране на кода]

I начин – стандартен

[редактиране | редактиране на кода]

Пример: Имаме числото 101011 в двоична бройна система. За да го превърнем в десетична бройна система, трябва да сумираме тегловните коефициенти, умножени по цифрата на съответната позиция.

II начин – опростен
[редактиране | редактиране на кода]

Пример: Имаме числото 101011 в двоична бройна система. За да го превърнем в десетична бройна система, сумираме само тегловните коефициенти, съдържащи единица.

Десетична в двоична

[редактиране | редактиране на кода]

За да превърнем число от десетична в двоична бройна система, трябва да го разделяме на 2, докато частното стане нула като записваме остатъците вдясно (ако числото не може да се дели на 2, записваме единица, а ако може – нула).
Пример: Преобразуване на 87 от десетична в двоична бройна система.

  • 87 ÷ 2 = 43 ⇒ 1
  • 43 ÷ 2 = 21 ⇒ 1
  • 21 ÷ 2 = 10 ⇒ 1
  • 10 ÷ 2 = 5 ⇒ 0
  • 5 ÷ 2 = 2 ⇒ 1
  • 2 ÷ 2 = 1 ⇒ 0
  • 1 ÷ 2 = 0 ⇒ 1

След това, за да получим двоичното число, вземаме получените единици и нули, като резултатът от последното деление става най-старшият разряд на двоичното число, съответно – резултатът от първото деление – най-младшият: на числото 87 в десетична бройна система съответства 1010111 в двоична.

За да получим двоичен еквивалент на десетична дроб, последователно умножаваме по основата на бройната система (в случая 2) до достигане на желаната точност. //При всяко умножаване цялата част на получения резултат е съответен разряд от двоичния еквивалент. В някои случаи точна десетична дроб не може да се получи и е налице остатък. В този случай дробта се закръгля според изискваната от конкретния случай точност (максимално допустимата за случая грешка).

Пример: 0,386

  • 0,386 × 2 = 0,772 ⇒ 0
  • 0,772 × 2 = 1,544 ⇒ 1 (изваждаме единица)
  • 0,544 × 2 = 1,088 ⇒ 1 (изваждаме единица)
  • 0,088 × 2 = 0,176 ⇒ 0
  • 0,176 × 2 = 0,352 ⇒ 0
  • 0,352 × 2 = 0,704 ⇒ 0
  • 0,704 × 2 = 1,408 ⇒ 1 (изваждаме единица)
  • 0,408 × 2 = 0,816 ⇒ 0

За да получим числото, вземаме цялата част от всеки отговор от горе надолу и за числото 0,386 в десетична бройна система получаваме (с точност до осмия знак след запетаята) 0,01100010 в двоична.

Двоична в шестнадесетична и обратно

[редактиране | редактиране на кода]

Най-лесно практически се осъществява чрез следната таблица за съответствие, използваща т.нар. тетради (четирицифрени двоични числа):

0000 – 0

0001 – 1

0010 – 2

0011 – 3

0100 – 4

0101 – 5

0110 – 6

0111 – 7

1000 – 8

1001 – 9

1010 – A

1011 – B

1100 – C

1101 – D

1110 – E

1111 – F

Пример: 0011101001110010(2)

  • Разделяме числото от най-младшия разряд към най-старшия („от дясно наляво“) на тетради (полубайтове – четири бита) и според таблицата на съответствие между двете броични системи получаваме 0011|1010|0111|0010 = 3A72. В случай, когато броят двоични цифри не е кратен на четири, за практическо удобство двоичното число се допълва откъм най-старшата цифра/бит („отляво“) с необходимия брой нули.

Редица от 0 и 1 се нарича двоичен или бинарен код.

  1. Наков, Светлин. Free C# / Java / JavaScript / Python / C++ Programming Books » Глава 8. Бройни системи // introprogramming.info. Посетен на 31 август 2024. Глава 8. Бройни системи (Грешка в записа: Неразпознат езиков код бг)