Основно съдържание
Компютрите и интернет
Превръщане на десетични числа в двоични
Запознай се с техника за превръщане на десетични числа в двоични, с помощта само на лист, химикал и пресмятания. Добра е за малки числа, тъй като за по-големите са необходими все повече пресмятания. Създадено от Памела Фокс.
Искаш ли да се присъединиш към разговора?
Все още няма публикации.
Видео транскрипция
Да се опитаме да преобразуваме числото 6
от десетично към двоично. Ще ти покажа любимия си начин за това. Първо записвам тирета за всеки бит. Ще започна с 8 тирета, които представят 8 бита
или 1 байт, макар че може би няма да са ни
нужни всички за толкова малко число. След това ще запиша стойностите
за всяка от позициите. В първия бит са единиците,
или две на нулева. Вторият бит е за двойките,
две на първа. Третият бит е за четворките,
две на квадрат. След това са осмиците,
шестнадесетиците, просто удвояваме – 32-ките,
64-ките и 128-ците. След като имаме тези позиции, започвам отляво, поглеждам позицията
и питам: Тази стойност по-голяма ли е
от тази стойност? 128 е по-голямо от тази стойност, така че тук ще поставим 0, понеже няма нужда да представяме
стойността 128 в това малко число. 64 също е по-голямо от 6, 32 също е по-голямо от 6, 16 е по-голямо, 8 е по-голямо, имаме доста нули дотук. 4 не е по-голямо от 6. Следователно най-накрая ще поставим 1. След това ще извадим 4 от 6.
6 – 4 = 2. Това е остатъчната стойност,
която ни остава да представим. Продължаваме със следващия.
Това са двойките, 2 не е по-голямо от 2,
а всъщност е равно на 2. Така че отново ще поставим 1. Сега отново изваждаме,
2 – 2 = 0. Нямаме какво повече да представяме,
вече сме представили цялата стойност 6. Това означава, че можем да поставим 0
на оставащата позиция. И сега можем да кажем,
че така се записва 6 двоично. Така ще изглежда целият байт
или можем да го съкратим до само 4 бита. Можем дори да го съкратим само до 3,
но обикновено предпочитаме да представяме битовете
в групи от по 4 или 8. Хайде сега да опитаме с по-голямо число. Да изтрием това. Искам да запазя стойностите на позициите, понеже са полезни, а и ще са същите, и просто ще изтрия всичко останало. Да опитаме с числото 25. Как преобразуваме 25 десетично
в двоичен вид? Отново започваме оттук: 128 по-голямо ли е от 25?
Да, по-голямо е – поставяме 0. 64 е по-голямо – поставяме 0.
32 също е по-голямо – ще поставим 0. 16 не е по-голямо от 25,
16 се съдържа в 25. Ще поставим 1
и ще посмятаме малко, за да намерим какво ни остава
да представим. 25 – 16 = 9. Остава ни да представим стойността 9
в оставащите битове. Следващата позиция е на осмиците. 8 не е по-голямо от 9. Това означава,
че ще използваме тази позиция, ще поставим 1 там. Сега имаме 9 – 8 = 1. Остава ни само 1 за представяне. Дотук сме представили 24. Ако сега допълним оставащите с нули,
ще получим числото 24, но ни трябва 25.
Така че продължаваме – 4 по-голямо ли е от 1?
Да, така че поставяме 0. 2 е по-голямо от 1 – ще поставим 0. 1 = 1, така че тук ще поставим 1. Ето го числото 25 в двоичен вид. Нужни ни бяха 5 бита, така че бихме го представили в един байт,
точно така. Това е основният подход, който използвам за преобразуване
на десетични към двоични числа, и той работи за числа до 255,
с помощта на тези 8 бита. Отвъд това ще ти трябват още битове.
Честно казано за такива числа ще е по-добре да използваш калкулатор
или да напишеш програма.