уроци

▷ Двоична, десетична, осмална и шестнадесетична система какво представлява и как работи

Съдържание:

Anonim

Ако сте студент по компютърни науки, електроника или който и да е клон на инженерството, едно от нещата, което трябва да знаете, е да извършвате преобразуване на системни преобразувания. При изчисленията използваните системи за номериране са различни от това, което традиционно познаваме, както е и нашата десетична система. Ето защо, много вероятно, ако се посветим на областта както на изчислителната, програмиращата и подобна технология, ще трябва да знаем най-използваните системи и как да знаем как да преобразуваме от една в друга система.

Индекс на съдържанието

Как да извършите преобразуване на системата за номериране

Особено полезно е да познавате системата за преобразуване от десетична към двоична и обратно, тъй като това е системата за номериране, с която компонентите на компютъра работят директно. Но също така е много полезно да знаете шестнадесетичната система, тъй като тя се използва например за представяне на цветовите кодове, клавишите и голям брой кодове от нашия екип.

Системи за номериране

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

Без да навлизаме твърде много в математическите термини на дефинициите, системите, които се използват най-често от хора и машини, са следните:

Десетична система

Това е позиционна система за номериране, в която количествата са представени от аритметичната основа на числото десет.

Тъй като базата е номер десет, ще имаме възможността да изградим всички фигури, използвайки десет числа, които са тези, които всички знаем. 0, 1, 2 3, 4, 5, 6, 7, 8 и 9. Тези числа ще се използват за представяне на позицията на силите 10 при формирането на произволно число.

Така че, ние бихме могли да представим число по следния начин в тази система за номериране:

Виждаме, че десетичното число е сумата на всяка стойност от базата 10, повдигната до позиция-1, която заема всеки термин. Ще имаме предвид това за преобразувания в други системи за номериране.

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

Двоичната система е система за номериране, в която се използва аритметичната база 2. Тази система е тази, използвана от компютрите и цифровите системи вътрешно за извършване на абсолютно всички процеси.

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

Октална система

Както при предишните обяснения, вече можем да си представим за какво става въпрос за осмата система. Системата Octal е системата за номериране, в която се използва аритметичната основа 8, тоест ще имаме 8 различни цифри, които да представят всички числа. Това ще бъдат: 0, 1, 2, 3, 4, 5, 6 и 7.

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

Следвайки предишните дефиниции, десетичната система за номериране е позиционна система за номериране, базирана на числото 16. В този момент ще се запитаме как ще вземем 16 различни числа, ако например 10 е комбинацията от две числа по-различно?

Е, много просто, ние сме ги измислили, не ние, а тези, които са измислили въпросната система. Числата, които ще имаме тук, ще бъдат: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E и F. това прави общо 16 различни термина. Ако някога сте задавали числовия код на цвят, той има този тип номериране и това е причината да видите как бялото например е представено като стойността FFFFFF. По-късно ще видим какво означава това.

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

Тъй като това е най-основното и лесно за разбиране, ще започнем с преобразуването между тези две системи за номериране.

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

Както видяхме в първия раздел, ние представяме десетично число като сумата от стойностите, умножени по силата на 10, на позицията-1, която заема. Ако приложим това към всяко двоично число със съответната му база, ще имаме следното:

1 0 0 1 1

0

1 · 2 5 1 · 2 4 1 · 2 3 1 · 2 2 1 · 2 1

1 · 2 0

Но разбира се, ако направихме процедурата както в десетичната система, щяхме да получим стойности, различни от 0 и 1, които са тези, които можем да представим само в тази система за номериране.

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

1 0 0 1 1

0

1 · 2 5 = 32

1 · 2 4 = 0 1 · 2 3 = 0 1 · 2 2 = 4 1 · 2 1 = 2

1 · 2 0 = 0

Е, ако направим сумата от тези стойности, получени от всяка клетка, ще получим десетичната еквивалентна стойност на двоичната стойност.

Десетичната стойност на 100110 е 38

Трябваше само да умножим цифрата (0 или 1) на нейната основа (2), повдигната до позиция-1, която заема на фигурата. Добавяме стойностите и ще имаме числото в десетични.

Ако не сте се убедили, сега ще извършим обратния процес:

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

Ако преди направихме умножение на числата и сума, за да определим десетичната стойност, сега това, което ще трябва да направим, е да разделим десетичното число на базата на системата, в която искаме да го преобразуваме, в случая 2.

Ние ще изпълняваме тази процедура, докато вече не е възможно да се извърши по-нататъшно разделяне. Нека видим примера как би било направено.

номер

38 19 9 4 2 1
делене

÷ 2 = 19

÷ 2 = 9 ÷ 2 = 4 ÷ 2 = 2 ÷ 2 = 1

-

почивка 0 1 1 0 0

1

Това е резултат от свеждане до минимум на поредните разделения. Може би вече сте осъзнали как работи това. Ако сега вземем остатъците от всяко деление и обърнем неговата позиция, ще получим двоичната стойност на десетичното число. Тоест, започна от мястото, където завършихме разделението назад:

Така че имаме следния резултат: 100110

Както виждаме, успяхме да имаме точно същото число като в началото на секцията.

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

Както добре знаем, има не само цели десетични числа, но можем да намерим и реални числа (дроби). И като система за номериране трябва да е възможно да се преобразува число от десетичната система в двоичната система. Виждаме как да го направим. Нека вземем за пример числото 38 375

Това, което трябва да направим, е да отделим всяка от частите. Вече знаем как да изчислим целочислената част, така че ще преминем директно към десетичната част.

Процедурата ще бъде следната: трябва да вземем десетичната част и да я умножим по основата на системата, тоест 2. Резултатът от умножението трябва да го умножим отново, докато получим дробна част от 0. Ако при извършване на умножението се появи коефициент на число с цяло число, ще трябва само да вземем дроба за следващото умножение. Нека да разгледаме примера, за да го разберем по-добре.

номер

0375 0.75 0.50
умножение * 2 = 0, 75 * 2 = 1, 50

* 2 = 1.00

Цялата част 0 1

1

Както виждаме, вземаме десетичната част и я умножаваме отново, докато стигнем до 1, 00, където резултатът винаги ще бъде 0.

Резултатът от 38 375 в двоичен код ще бъде 100 110, 011

Но какво се случва, когато никога не можем да постигнем резултат от 1, 00 в процеса? Нека видим примера с 38, 45

номер

0.45 0.90 0.80 0.60 0.20 0.40 0.80
умножение * 2 = 0, 90 * 2 = 1, 80 * 2 = 1, 60 * 2 = 1, 20 * 2 = 0, 40 * 2 = 0, 80 * 2 = 1, 60
Цялата част 0 1 1 1 0 0

1

Както виждаме , от 0, 80 процесът става периодичен, тоест никога няма да завършим процедурата, защото числата от 0, 8 до 0, 4 винаги ще се появяват. Тогава резултатът ни ще бъде сближаване на десетичното число, колкото по-далече отиваме, толкова по-голяма точност ще получим.

И така: 38, 45 = 100 110, 01110011001 1001

Нека да видим как да направите обратния процес

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

Този процес ще се извърши по същия начин като нормалната смяна на базата, с изключение на това, че от запетайката силите ще бъдат отрицателни. Нека просто вземем целочислената част на предишното двоично число:

0 1 1 1 0 0

1

...
0 · 2 -1 = 0 1 · 2 -2 = 0, 25 1 · 2 -3 = 0, 125 1 2 -4 = 0, 0625 1 · 2 -5 = 0 1 · 2 -6 = 0 1 · 2 -7 = 0, 0078125

Ако добавим резултатите, ще получим:

0, 25 + 0, 125 + 0, 0625 + 0, 0078125 = 0, 4453

Ако продължихме да извършваме операции, щяхме да се приближаваме и приближаваме до точната стойност от 38, 45

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

Сега ще продължим да видим как да извършим преобразуването между две системи, които не са десетичната, за това ще вземем окталната система и двоичната система и ще направим същата процедура като в предишните раздели.

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

Преобразуването между двете системи за номериране е много просто, тъй като основата на окталната система е същата като в двоичната система, но повдигната до силата на 3, 2 3 = 8. Така че въз основа на това това, което ще направим, е да групираме двоичните термини в групи от три, започвайки отдясно наляво и директно да преобразуваме в десетично число. Нека видим примера с числото 100110:

1 0 0 1 1 0
100 110
0 · 2 2 = 4 0 · 2 1 = 0 1 · 2 0 = 0 1 · 2 2 = 4 1 · 2 1 = 2 0 · 2 0 = 0
4 6

Групираме на всеки три цифри и правим преобразуването в десетична. Крайният резултат ще бъде, че 100110 = 46

Но какво ще стане, ако нямаме перфектни групи от 3? Например 1001101, имаме две групи от 3 и една от 1, нека да видим как да процедираме:

0 0 1 0 0 1 1 0 1
001 100 110
0 · 2 2 = 0 0 · 2 1 = 0 1 · 2 0 = 1 0 · 2 2 = 0 0 · 2 1 = 0 1 · 2 0 = 1 1 · 2 2 = 4 1 · 2 1 = 0 1 · 2 0 = 1
1 1 5

Следвайки процедурата, ние вземаме групите отдясно на термина и когато стигнем до края, попълваме с толкова нули, колкото е необходимо. В този случай ни бяха нужни две, за да завършим последната група. Значи 1001101 = 115

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

Е, процедурата е толкова проста, колкото да правите обратното, тоест да преминете от двоичен към десетичен в групи от 3. Нека го видим с числото 115

стойност 1 1 5
делене ÷ 2 = 0 0 0 ÷ 2 = 0 0 0 ÷ 2 = 2 ÷ 2 = 1 -
почивка 1 0 0 1 0 0 1 0 1
група 001 001 101

По този начин виждаме, че 115 = 001001101 или кое е същото 115 = 1001101

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

Сега ще видим как да извършим процедурата за преминаване от осмалната система на числа към десетичната и обратно. Ще видим, че процедурата е абсолютно същата като в случая на десетичната и двоичната система, само ние трябва да променим основата на 8 вместо на 2.

Ще извършим процедурите директно с термини с дробна част.

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

Следвайки процедурата на десетично-двоичния метод, ще го осъществим с примера от 238.32:

Цялата част. Разделяме по основата, която е 8:

номер 238 29 3
делене ÷ 8 = 29 ÷ 8 = 3 -
почивка 6 5 3

Десетичната част, умножаваме по основата, която е 8:

номер 0.32 0, 56 0, 48 0, 84 0, 72
умножение * 8 = 2, 56 * 8 = 4.48 * 8 = 3, 84 * 8 = 6.72 * 8 = 5.76
Цялата част 2 4 3 6 5

Полученият резултат е следният: 238.32 = 356.24365…

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

Е, тогава нека направим обратния процес. Нека да предадем осмото число 356, 243 в десетичен знак:

3 5 6 , 2 4 3
3 · 8 2 = 192 5 · 8 1 = 40 6 · 2 0 = 6 2 · 8 -1 = 0, 25 4 · 8 -2 = 0, 0625 3 · 8 -3 = 0, 005893

Резултатът е: 192 + 40 + 6, 0, 25 + 0, 0625 + 0, 005893 = 238, 318

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

След това приключваме с процеса на преобразуване между шестнадесетичната система за номериране и десетичната система.

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

Следвайки процедурата на десетично-двоичния и десетично-окталния метод, ще го извършим с примера от 238.32:

Цялата част. Разделяме по основата, която е 16:

номер 238 14
делене ÷ 16 = 14 -
почивка E E

Десетичната част, умножаваме по основата, която е 16:

номер 0.32 0.12 0, 92 0, 72 0, 52
умножение * 16 = 5.12 * 16 = 1, 92 * 16 = 14, 72 * 16 = 11, 52 * 16 = 8, 32
Цялата част 5 1 E B 8

Полученият резултат е следният: 238.32 = EE, 51EB8…

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

Е, тогава нека направим обратния процес. Нека предадем шестнадесетичното число EE, 51E в десетичен знак:

E E , 5 1 E
E16 1 = 224 E · 16 0 = 14 5 · 16 -1 = 0, 3125 1 · 16 -2 = 0, 003906 E16 -3 = 0, 00341

Резултатът е: 224 + 14, 0, 3125 + 0, 003906 + 0, 00341 = 238, 3198…

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

Може да се интересувате също от:

Ако имате въпроси, оставете ги в коментарите. Ще се опитаме да ви помогнем.

уроци

Избор на редакторите

Back to top button