Числата и техните представяния

Съществуват различни начини и системи за записване на числата.

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

Бройна система, при която стойността на всяка цифра не зависи от нейната позиция в записа на числото, в което е включена, се нарича непозиционна бройна система.

Типичен пример за непозиционна бройна система е римската. При нея се използват следните знаци: I = 1, V = 5, X = 10, L = 50, C = 100, D = 500, M = 1000, и правила:
Ако по-голяма цифра предшества по-малката, то за да се получи числото, цифрите се събират;
Ако по-голяма цифра следва по-малка, то за да се получи числото, цифрите се изваждат;
Една и съща цифра не се повтаря повече от 3 пъти една след друга;
Задължително е използването на най-голямата възможна цифра.

 

 

За какво използваме римската бройна система днес?

      Задача 1

Като използвате правилата на римската бройна система, пресметнете и отговорете:
а) Кое число е представено със записа LХVI?
б) Как се записва 681 в римска бройна система?
в) Кое от числата CVIIII, LVVIX, XXXII не е записано коректно?

Бройна система, при която стойността на всяка цифра зависи от нейната позиция в записа на числото, се нарича позиционна бройна система.

Пример: 345 = 3.102 + 4.101 + 5.100

Правило за представяне на число от p-ична бройна система в десетична бройна система

Всяко цяло число A(anan-1…a2a1a0) в позиционна бройна система може да бъде записано чрез следния израз:
A(р) = аn.pn + an-1.pn-1 + ... + a2.p2 + a1.p1 + a0.p0, където р е основата на бройната система, 0 ≤ аi <p, i = 0, 1, 2, …, n, an ≠ 0.

Горното равенство дава правилото за преобразуване в десетична бройна система на всяко цяло число, представено в произволна позиционна бройна система. Например числото в 6-ична бройна система се преобразува в 10-ична бройна система по следния начин:

245(6) = (2.62 + 4.61 + 5.60)10 = (2.36 + 4.6 + 5.1)10 =101(10).

      Задача 2

Използвайте правилото и преобразувайте следните числа в десетична бройна система: 114(5); 412(8); 102(3).

Правило за преобразуване на число от десетична в друга (p-ична) бройна система

Нека р е бройната система, към която желаем да преобразуваме цялото число А. Правилото включва следните три стъпки:
Стъпка 1: Делим десетичното число А на р с частно и остатък.
Стъпка 2: Ако частното е по-голямо от р, го делим по същия начин на р и продължаваме процеса, докато полученото частно стане по-малко от р.
Стъпка 3: Записваме полученото число, като започнем от последното частно, следвано от получените остатъци в обратен ред.

Например нека представим десетичното число 1590 в 7-ична бройна система.
Стъпка 1: 1590:7 = 227 ост. 1
Стъпка 2: 227:7 = 32 ост. 3   Частното 227 е по-голямо от 7.
                32:7 = 4 ост. 4   Частното 32 е по-голямо от 7.
Стъпка 3: 1590(10) = 4431(7)  Записваме последното частно и остатъците в обратен ред.

Можем да използваме и стъпаловиден запис на преобразуването: 



ЛЮБОПИТНО

Всяко дробно число А може да се запише в експоненциален формат чрез записа: А = k.En, където k e мантиса на А, n е порядък (или експонента), а E е основата на бройната система, в която е записано числото. При представянето на дробните числа в информатиката използваме две основи: 2 или 10. Мантисата е положителна или отрицателна дроб, а порядъкът е положително или отрицателно цяло число.
Например  едно експоненциално десетично представяне на числото –24,17 е –0,2417.102, като мантисата k = –0,2417, а порядъкът n = 2. Аналогично представянето на числото 0,0000927 в експоненциална форма е 0,927.10-4. В информатиката е прието в експоненциалния запис на числото степенният показател да се записва след основата Е. Тогава горните две числа се записват като: -0.2417Е2 и 0.927Е-4.
Забележка. В математиката този формат на записване на числата е известен като „стандартен запис“. Следователно в информатиката целите числа се записват както в математиката, а реалните имат две представяния: във формат с фиксирана точка (2.672; 125.3422) или в експоненциален формат (3.12Е-4). 

Пример: (.101010)(2) = (1.1/2 + 0.1/4 + 1.1/8 + 0.1/16 + 1.1/32 + 0.1/64)(10) = (21/32)(10).
Пример:
(10.75)(10) = (10+0.75)(10) = (10+0.5+0.25)(10) = (10+1/2+1/4)(10) = (1010 + 0.1 + 0.01)(2) = (1010.11)(2)
Стандартният запис на числото (10.75)10 в двоична система е 1.01011.2-3, а в десетична е 1.075.10-1.

Двоична бройна система

Двоичната бройна система се използва в информатиката и компютърните науки.

Двоичната бройна система е свързана с Булевата алгебра, където основните константи са 1 (true)  и  0 (false). След като Джордж Бул слага началото на математическата логика като наука през 1854 г., Клод Шенон стига до забележителната идея, че съществува пряка връзка между двоичните цифри, булевата алгебра и електрическите превключвателни схеми, с което свързва в едно цяло теорията с практиката. Шенон е автор и на означението bit (binary digit). По същото време в колежа на щата Айова професорът по физика Джон Атанасов (1903 – 1995) разработвал свой проект за изчислителна машина, стигайки до извода, че тя трябва да работи в двоична бройна система, реализирана с електронни елементи. Джон фон Нойман формулира основните принципи на съвременния компютър:
Първи принцип: Компютърът е електронно устройство. Всички операции в него се извършват от електронни схеми.
Втори принцип: Информацията в компютъра се представя в двоична бройна система.
Трети принцип: Данните за обработката и програмите, задаващи работа на компютъра, се съхраняват в единна компютърна памет

 

Има ли друга, по-нова компютърна архитектура от тази на Фон Нойман? Използва ли се?

      Задача 3

Потърсете снимки на споменатите учени в областта и открийте кой кой е.

 

Има ли във вашето училище зала (клуб, екип), именувана на известен учен в областта на информатиката или математиката?

Двоичната бройна система  е позиционна бройна система, при която числата се представят с помощта на две цифри: 0 и 1. Основата на бройната система е числото 2.

Тогава A(2) = an.2n + an-1.2n-1 + …. + a2.22 + a1.21 + а0.20 е записът на цяло число в двоична бройна система. Този запис дава възможност за директно преминаване към десетична бройна система.
Например: 1001(2) = (1.23 + 0.22 + 0.21 + 1.20)(10) = (8 + 0 + 0 + 1) (10) = 9 (10) в 10-ична бройна система.

      Задача 4

Преобразувайте следните двоични числа в десетична бройна система:
10011(2); 1010101(2).

Преобразуване от десетична в двоична бройна система се извършва по описаното по-горе правило при деление на 2. Например нека преобразуваме числото 289 от десетична в двоична бройна система:

Преобразуване от десетична в двоична бройна система

Първи начин: чрез представяне на числото като сума от степени на 2.
Пример: 34(10) = (32 + 2)(10) = (1.25 + 0.24 + 0.23 + 0.22 + 1.21 + 0.20)(10) = 100010(2)
Втори начин: чрез деление на 2 и записване на остатъците в обратен ред.


Вариант на правилото за преобразуване от десетична в двоична бройна система

На всяка стъпка делим на 2 и получаваме цяла част и остатък. Изпълняваме стъпките, докато не получим цяла част от делението 0. Двоичното представяне са остатъците, получени в обратен ред.

      Задача 5

Преобразувайте десетичните числа в двоична бройна система: 147, 318.

      Задача 6

Общо колко на брой стойности могат да се представят чрез 7 бита?

      Задача 7

Най-малко колко бита са необходими за записването на 318(10) в двоична бройна система?

      Задача 8

Най-малко колко бита са необходими за представянето на 216 различни стойности в компютъра, например за цветовете за уеб (web safe colors)?

Компютрите използват двоична бройна система за съхраняване и обработка на информацията. Както вече беше казано, записът на едно число в двоична система е подълъг отколкото в десетична бройна система. От представянето: 289(10) = 100100001(2) се вижда, че десетичният запис на числото е с три цифри, а двоичният – с девет цифри.

Преобразуване на цели числа от двоична (2) в осмична (8) бройна система

Записът на числата в осмична бройна система включва осем цифри 0, 1, 2, 3, 4, 5, 6 и 7. Преобразуването от двоична в осмична бройна система се извършва по подобен начин, като се отчита фактът, че 8 = 23. Това ни дава основание да разделим двоичния запис на числото на групи от по 3 цифри от дясно наляво и да представим всяка тройка в 8-ична бройна система.
Пример: Да преобразуваме разглежданото двоично число 100100001(2) в осмично. Първо разделяме двоичното число на групи от по 3 цифри и след това заместваме стойността на всяка тройка цифри със стойността ѝ в 8-ична бройна система.
100100001(2) = 100 100 001(2) = 441(8)

      Задача 9

Преобразувайте числата 11110100100(2) и 100100000101(2) в осмична бройна система.

Шестнадесетични числа

Шестнадесетичната бройна система  е позиционна бройна система, в която числата се представят с помощта на 16 цифри. Символите от 0 до 9 са представени чрез арабските цифри, а латинските букви A, B, C, D, E, F се използват за представяне на стойностите от 10 до 15.

Всяка шестнадесетична цифра може да се представи като група от четири двоични цифри. Причина за това е, че за съхраняването на данните в оперативната памет на компютрите се използва двоичен код.

Преобразуване на цели числа от 2-ична
в 16-ична бройна система

Например едно число в шестнадесетична бройна система може да има следния вид: 8B2A.
Шестнадесетичните числа поради своята компактност се използват широко в компютърните науки и при разработката на софтуер.

Например:
Всеки цвят може да се представи с шестцифрен шестнадесетичен код, предхождан от #.
В програмни езици като C++, C#, Java, JavaScript, Python и др. пред шестнадесетичното число се поставя префиксът 0x (0xA12).
Символи или символни низове също могат да се представят с шестнадесетични кодове.
Например  шестнадесетичният запис на символа (≥) в Unicode стандарта е 0x2265.
В Unicode стандарт символна стойност се представя с U +, следвана от шестнадесетичната стойност.
Например: U +03B2 е представянето на гръцката буква бета (β).
Всички IPv6 адреси може да бъдат записани като осем групи от по четири шестнадесетични цифри, разделени с двоеточие.
Например: 0001:0db8:85a3:0000:0000:8a2e:0370:7334.

Преобразуването от двоична в шестнадесетична бройна система се извършва по аналогичен начин. Тъй като 16 = 24, разделяме двоичния запис на числото на групи от по 4 цифри от дясно наляво и представяме всяка четворка в шестнадесетично число. За числото 100100001(2) преобразуването ще се извърши по следния начин:
100100001(2)= 1 0010 0001(2) = 121(16)
т.е. 100100001(2) = 10201(4) = 441(8) = 121(16).

      Задача 10

Преобразувайте двоичните числа в шестнадесетични: 10001010(2); 110011011(2).

ДВОИЧНА АРИТМЕТИКА

Двоичната аритметика включва аритметичните операции (събиране, изваждане, умножение и деление) над двоични числа. В този урок ще разгледаме три от тях.

Събиране

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

0(2) + 0(2) = 0(2)
0(2) + 1(2) = 1(2)
1(2) + 0(2) = 1(2)
1(2) + 1(2) = 10(2) (резултат 0, с пренос 1)
При събирането 1 + 1 + 1 можем да съберем (1 + 1) + 1, при което получаваме 10 + 1 = 11.

      Задача 11

Пресметнете следните аритметични изрази:
а) 110101(2) + 100011(2)
б) 11111(2) + 1(2)
в) 11110111(2) + 1011(2)
г) 111101(2) + 100111(2)

Изваждане

Изваждането е действие, обратно на събирането. Поради това, подобно на изваждането на числа в десетична система, се налага да се заемат от битовете отляво. При изваждането в двоична бройна система използваме следната таблица:
0(2) – 0(2) = 0(2)
1(2) – 0(2) = 1(2)
1(2) – 1(2) = 0(2)
10(2) – 1(2) = 1(2)

      Задача 12

Пресметнете следните аритметични изрази:
а) 110101(2) – 100011(2)
б) 1000(2) – 1(2)
в) 11110101(2) – 1011(2)
г) 111101(2) – 100111(2)

Умножение

Умножението на две числа в двоична система се извършва подобно на умножението на десетични числа. При умножението в двоична бройна система използваме следната таблица:
0(2) . 0(2) = 0(2)
0(2) . 1(2) = 0(2)
1(2) . 0(2) = 0(2)
1(2) . 1(2) = 1(2)

Пример: Произведението 101(2) . 11(2) се намира по следния начин:

Пример: На практика, за да се намери произведението 101(2) .11(2), могат да се извършат и следните действия:
101(2) . 11(2) = 101(2) . (10(2) + 1(2)) =
= 101(2) . 10(2) + 101(2) . 1(2) =
= 1010(2) + 101(2) = 1111(2).
Проверка: Тъй като 101(2) = 5(10) и 11(2) = 3(10), произведението им е 15(10) = 1111(2).
Умножаване с числа, които са степени на 2, става с добавяне на нули в края на числото.

 

От какво зависи броят на добавените нули в края на числото?

      Задача 13

Пресметнете следните аритметични изрази:
а) 100000000(2) .100(2)
б) 1010(2) . 1010(2)
в) 10001101(2) . 10111(2)
г) 100001111(2) . 110111(2)

      Задача 14

Пресметнете следните аритметични изрази:
а) 111101(2) + 11011(2) . 111(2)
б) 1000(2) . (1011(2) + 100011(2) – 1011(2))
в) 111101(2) – 100011(2)
г) 11101101(2) . 1011(2) – 10101(2) . 10(2)