Электроника:Цифровая электроника/Системы счисления/Сравниваем десятеричные и двоичные числа: различия между версиями
Valemak (обсуждение | вклад) (Новая страница: «{{Панель управления/Электроника}} {{Перевод от valemak}} {{Myagkij-редактор}} =Сравниваем десятери...») |
Нет описания правки |
||
(не показаны 3 промежуточные версии 2 участников) | |||
Строка 5: | Строка 5: | ||
=Сравниваем десятеричные и двоичные числа<ref>[https://www.allaboutcircuits.com/textbook/digital/chpt-1/decimal-versus-binary-numeration/ www.allaboutcircuits.com - Decimal versus Binary Numeration]</ref>= | =Сравниваем десятеричные и двоичные числа<ref>[https://www.allaboutcircuits.com/textbook/digital/chpt-1/decimal-versus-binary-numeration/ www.allaboutcircuits.com - Decimal versus Binary Numeration]</ref>= | ||
Давайте посчитаем от нуля до двадцати, используя четыре различных типа систем счисления: хеш-метки, римские цифры, десятеричные и двоичные формы записи: | Давайте посчитаем от нуля до двадцати, используя четыре различных типа систем счисления: [[хеш-метки]], [[римские цифры]], десятеричные и двоичные формы записи: | ||
{| class="wikitable" | {| class="wikitable" | ||
Строка 23: | Строка 23: | ||
| Пять || IIIII || V || 5 || 101 | | Пять || IIIII || V || 5 || 101 | ||
|- | |- | ||
| Шесть || | | Шесть || <strike>IIIII</strike> I || VI || 6 || 110 | ||
|- | |- | ||
| Семь || IIIII II || VII || 7 || 111 | | Семь || <strike>IIIII</strike> II || VII || 7 || 111 | ||
|- | |- | ||
| Восемь || IIIII III || VIII || 8 || 1000 | | Восемь || <strike>IIIII</strike> III || VIII || 8 || 1000 | ||
|- | |- | ||
| Девять || IIIII IIII || IX || 9 || 1001 | | Девять || <strike>IIIII</strike> IIII || IX || 9 || 1001 | ||
|- | |- | ||
| Десять || IIIII IIIII || X || 10 || 1010 | | Десять || <strike>IIIII</strike> <strike>IIIII</strike> || X || 10 || 1010 | ||
|- | |- | ||
| Одиннадцать || IIIII IIIII I || XI || 11 || 1011 | | Одиннадцать || <strike>IIIII</strike> <strike>IIIII</strike> I || XI || 11 || 1011 | ||
|- | |- | ||
| Двенадцать || IIIII IIIII II || XII || 12 || 1100 | | Двенадцать || <strike>IIIII</strike> <strike>IIIII</strike> II || XII || 12 || 1100 | ||
|- | |- | ||
| Тринадцать || IIIII IIIII III || XIII || 13 || 1101 | | Тринадцать || <strike>IIIII</strike> <strike>IIIII</strike> III || XIII || 13 || 1101 | ||
|- | |- | ||
| Четырнадцать || IIIII IIIII IIII || XIV || 14 || 1110 | | Четырнадцать || <strike>IIIII</strike> <strike>IIIII</strike> IIII || XIV || 14 || 1110 | ||
|- | |- | ||
| Пятнадцать || IIIII IIIII IIIII || XV || 15 || 1111 | | Пятнадцать || <strike>IIIII</strike> <strike>IIIII</strike> <strike>IIIII</strike> || XV || 15 || 1111 | ||
|- | |- | ||
| Шестнадцать || IIIII IIIII IIIII I || XVI || 16 || 10000 | | Шестнадцать || <strike>IIIII</strike> <strike>IIIII</strike> <strike>IIIII</strike> I || XVI || 16 || 10000 | ||
|- | |- | ||
| Семнадцать || IIIII IIIII IIIII II || XVII || 17 || 10001 | | Семнадцать || <strike>IIIII</strike> <strike>IIIII</strike> <strike>IIIII</strike> II || XVII || 17 || 10001 | ||
|- | |- | ||
| Восемнадцать || IIIII IIIII IIIII III || XVIII || 18 || 10010 | | Восемнадцать || <strike>IIIII</strike> <strike>IIIII</strike> <strike>IIIII</strike> III || XVIII || 18 || 10010 | ||
|- | |- | ||
| Девятнадцать || IIIII IIIII IIIII IIII || XIX || 19 || 10011 | | Девятнадцать || <strike>IIIII</strike> <strike>IIIII</strike> <strike>IIIII</strike> IIII || XIX || 19 || 10011 | ||
|- | |- | ||
| Двадцать || IIIII IIIII IIIII IIIII || XX || 20 || 10100 | | Двадцать || <strike>IIIII</strike> <strike>IIIII</strike> <strike>IIIII</strike> <strike>IIIII</strike> || XX || 20 || 10100 | ||
|} | |} | ||
Ни решёточные хеш-метки, ни римские цифры не годятся для обозначения больших чисел. Очевидно, что для этой задачи более эффективны системы счисления с позиционированием, такие как десятеричная и двоичная. | Ни решёточные [[хеш-метки]], ни [[римские цифры]] не годятся для обозначения больших чисел. Очевидно, что для этой задачи более эффективны системы счисления с позиционированием, такие как десятеричная и двоичная. | ||
Заметьте, однако, насколько лаконичнее десятеричная запись по сравнению с двоичной при обозначении тех же величин. То, что занимает пять битов в двоичной системе счисления, занимает всего две цифры в десятеричной системе счисления. | Заметьте, однако, насколько лаконичнее десятеричная запись по сравнению с двоичной при обозначении тех же величин. То, что занимает пять битов в двоичной системе счисления, занимает всего две цифры в десятеричной системе счисления. | ||
Строка 65: | Строка 65: | ||
С каждой дополнительной позицией возможность представления чисел увеличивается в разы по основанию (в 10 раз для десятеричного числа, в 2 раза для двоичного). | С каждой дополнительной позицией возможность представления чисел увеличивается в разы по основанию (в 10 раз для десятеричного числа, в 2 раза для двоичного). | ||
Интересная примечание в тему, касающееся одного из первых электронных цифровых компьютеров ENIAC. | Интересная примечание в тему, касающееся одного из первых электронных цифровых компьютеров [[ENIAC]]. | ||
Разработчики ENIAC решили представлять числа в десятеричной форме, в цифровом виде, используя серию схем, называемых «кольцевыми счётчиками», вместо того, чтобы просто использовать двоичную систему счисления (что бы позволило свести к минимуму количество схем, необходимых для представления и вычислений больших величин). | Разработчики [[ENIAC]] решили представлять числа в десятеричной форме, в цифровом виде, используя серию схем, называемых «кольцевыми счётчиками», вместо того, чтобы просто использовать двоичную систему счисления (что бы позволило свести к минимуму количество схем, необходимых для представления и вычислений больших величин). | ||
Этот подход оказался контрпродуктивным, и с тех пор практически все цифровые компьютеры имели чисто двоичную архитектуру. | Этот подход оказался контрпродуктивным, и с тех пор практически все цифровые компьютеры имели чисто двоичную архитектуру. | ||
Строка 83: | Строка 83: | ||
|} | |} | ||
Крайний справа бит называется ''наименьшим значащим битом'' (обозначается как ''LSB'' от англ. '''''L'''east '''S'''ignificant '''B'''it''), потому что он находится в позиции с наименьшим весом (разряд единиц). | Крайний справа бит называется ''наименьшим значащим битом'' (обозначается как ''[[LSB]]'' от англ. '''''L'''east '''S'''ignificant '''B'''it''), потому что он находится в позиции с наименьшим весом (разряд единиц). | ||
Крайний слева бит называется ''наибольшим значимым битом'' (обозначается как ''MSB'' от англ. '''''M'''ost '''S'''ignificant '''B'''it''), потому что он находится в позиции с наибольшим весом для данного числа (разряд ста двадцати восьми). | Крайний слева бит называется ''наибольшим значимым битом'' (обозначается как ''[[MSB]]'' от англ. '''''M'''ost '''S'''ignificant '''B'''it''), потому что он находится в позиции с наибольшим весом для данного числа (разряд ста двадцати восьми). | ||
Помните, что битовое значение «1» означает, что соответствующий вес разряда добавляется к общему значению, а битовое значение «0» означает, что соответствующий вес разряда не добавляется к общему значению. В приведённом выше примере имеем: | Помните, что битовое значение «1» означает, что соответствующий вес разряда добавляется к общему значению, а битовое значение «0» означает, что соответствующий вес разряда не добавляется к общему значению. В приведённом выше примере имеем: | ||
Строка 108: | Строка 108: | ||
=См.также= | =См.также= | ||
=Внешние ссылки= | =Внешние ссылки= | ||
Строка 114: | Строка 114: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Электроника | {{Навигационная таблица/Портал/Электроника}} | ||
Текущая версия от 21:53, 22 мая 2023
Сравниваем десятеричные и двоичные числа[1]
Давайте посчитаем от нуля до двадцати, используя четыре различных типа систем счисления: хеш-метки, римские цифры, десятеричные и двоичные формы записи:
Числа | Хеш-метки | Римские цифры |
Десятеричные цифры |
Двоичные цифры |
---|---|---|---|---|
Ноль | Не определено | Не определено | 0 | 0 |
Один | I | I | 1 | 1 |
Два | II | II | 2 | 10 |
Три | III | III | 3 | 11 |
Четыре | IIII | IV | 4 | 100 |
Пять | IIIII | V | 5 | 101 |
Шесть | VI | 6 | 110 | |
Семь | VII | 7 | 111 | |
Восемь | VIII | 8 | 1000 | |
Девять | IX | 9 | 1001 | |
Десять | X | 10 | 1010 | |
Одиннадцать | XI | 11 | 1011 | |
Двенадцать | XII | 12 | 1100 | |
Тринадцать | XIII | 13 | 1101 | |
Четырнадцать | XIV | 14 | 1110 | |
Пятнадцать | XV | 15 | 1111 | |
Шестнадцать | XVI | 16 | 10000 | |
Семнадцать | XVII | 17 | 10001 | |
Восемнадцать | XVIII | 18 | 10010 | |
Девятнадцать | XIX | 19 | 10011 | |
Двадцать | XX | 20 | 10100 |
Ни решёточные хеш-метки, ни римские цифры не годятся для обозначения больших чисел. Очевидно, что для этой задачи более эффективны системы счисления с позиционированием, такие как десятеричная и двоичная.
Заметьте, однако, насколько лаконичнее десятеричная запись по сравнению с двоичной при обозначении тех же величин. То, что занимает пять битов в двоичной системе счисления, занимает всего две цифры в десятеричной системе счисления.
Это поднимает интересный вопрос относительно различных систем счисления: насколько большое число может быть представлено при ограниченном количестве позиций? В примитивной системе хэш-меток количество позиций является наибольшим, которое вообще может быть представлено для обозначения числа, поскольку для каждого целочисленного шага требуется одно «хеш-метка-место».
Однако для систем счисления со взвешенными позициями ответ можно найти, взяв основу системы счисления (10 для десятичной, 2 для двоичной) и возведя её в степень числа разрядов.
Например, 5 цифр в десятеричной системе счисления могут представлять 100000 (сто тысяч) различных целочисленных значений от 0 до 99 999 (105 = 100000). 8 битов в двоичной системе счисления могут представлять 256 различных целочисленных значений от 0 до 11111111 (двоичное представление) или от 0 до 255 (десятеричное представление), потому что 28 = 256.
С каждой дополнительной позицией возможность представления чисел увеличивается в разы по основанию (в 10 раз для десятеричного числа, в 2 раза для двоичного). Интересная примечание в тему, касающееся одного из первых электронных цифровых компьютеров ENIAC.
Разработчики ENIAC решили представлять числа в десятеричной форме, в цифровом виде, используя серию схем, называемых «кольцевыми счётчиками», вместо того, чтобы просто использовать двоичную систему счисления (что бы позволило свести к минимуму количество схем, необходимых для представления и вычислений больших величин). Этот подход оказался контрпродуктивным, и с тех пор практически все цифровые компьютеры имели чисто двоичную архитектуру.
Преобразование двоичного числа в десятеричное
Чтобы преобразовать число в двоичной системе счисления в его десятеричный эквивалент, всё, что нужно сделать, так это вычислить сумму всех произведений битов с соответствующими константами весовых коэффициентов. Проиллюстрируем:
Конвертируем 110011012 в десятеричный вид:
Биты | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 |
Веса́ | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Крайний справа бит называется наименьшим значащим битом (обозначается как LSB от англ. Least Significant Bit), потому что он находится в позиции с наименьшим весом (разряд единиц).
Крайний слева бит называется наибольшим значимым битом (обозначается как MSB от англ. Most Significant Bit), потому что он находится в позиции с наибольшим весом для данного числа (разряд ста двадцати восьми).
Помните, что битовое значение «1» означает, что соответствующий вес разряда добавляется к общему значению, а битовое значение «0» означает, что соответствующий вес разряда не добавляется к общему значению. В приведённом выше примере имеем:
12810 + 6410 + 810 + 410 + 110 = 20510
Если нам встречается двоичное число (с разделителем в виде запятой), то это у нас «двоичная запятая», а не десятеричная. Следуем той же процедуре, понимая, что вес каждого места справа от запятой составляет половину значения от веса позиции левее (так же, как вес каждого разряда справа от десятеричной точки составляет одну десятую веса позиции левее). Например:
Конвертируем 100,0112 в десятеричный вид:
Биты | 1 | 0 | 1 | , | 0 | 1 | 1 |
Веса́ | 4 | 2 | 1 | ½ | ¼ | ⅛ |
Тогда:
410 + 110 + 0,2510 + 0,12510 = 5,37510
См.также
Внешние ссылки