reverseenengineering:2-система

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
reverseenengineering:2-система [2025/06/24 23:56] Lexreverseenengineering:2-система [2025/07/04 14:47] (текущий) – [Преобразование дробных десятичных чисел в двоичные] Lex
Строка 1: Строка 1:
-====== Десятичная система счисления ======+====== Двоичная система счисления ====== 
 + 
 +> Двоичная система счисления — позиционная система счисления с основанием 2. Благодаря непосредственной реализации в цифровых электронных схемах на логических вентилях, двоичная система используется практически во всех современных компьютерах и прочих вычислительных электронных устройствах. 
 + 
 +===== Двоичная запись чисел ===== 
 + 
 +> В двоичной системе счисления числа записываются с помощью двух символов (0 и 1). Чтобы не путать, в какой системе счисления записано число, его снабжают указателем справа внизу. Например, число в десятичной системе 5(10), в двоичной 101(2). Иногда двоичное число обозначают префиксом 0b или символом & (амперсанд), например 0b101 или соответственно &101. 
 + 
 +> В двоичной системе счисления (как и в других системах счисления, кроме десятичной) знаки читаются по одному. Например, число 101(2) произносится «один ноль один». 
 + 
 +===== Преобразование чисел ===== 
 + 
 +> Для преобразования из двоичной системы в десятичную используют следующую таблицу степеней основания 2: 
 + 
 + 
 +   1024 512 256 128 64 32 16 8 4 2 1 
 + 
 +> Начиная с цифры 1 все цифры умножаются на два. Точка, которая стоит после 1, называется двоичной точкой. 
 + 
 +==== Преобразование двоичных чисел в десятичные: ==== 
 + 
 +> Допустим, дано двоичное число 110001(2). Для перевода в десятичное запишите его как сумму по разрядам следующим образом: 
 + 
 +   1 * 25 + 1 * 24 + 0 * 23 + 0 * 22 + 0 * 21 + 1 * 20 = 49 
 + 
 +> То же самое чуть иначе: 
 + 
 +   1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49 
 + 
 + 
 +> Можно записать это в виде таблицы следующим образом: 
 + 
 +                512 256 128 64 32 16 8 4 2 1 
 +                                1 1 0 0 0 1 
 +                                +32 +16 +0 +0 +0 +1 
 + 
 +> Двигайтесь справа налево. Под каждой двоичной единицей напишите её эквивалент в строчке ниже. Сложите получившиеся десятичные числа. Таким образом, двоичное число 110001(2) равнозначно десятичному 49(10). 
 + 
 +===== Преобразование дробных двоичных чисел в десятичные ===== 
 + 
 +> Нужно перевести число 1011010,101(2) в десятичную систему. Запишем это число следующим образом: 
 + 
 +   1 * 26 + 0 * 25 + 1 * 24 + 1 * 23 + 0 * 22 + 1 * 21 + 0 * 20 + 1 * 2−1 + 0 * 2−2 + 1 * 2−3 = 90,625 
 + 
 +> То же самое чуть иначе: 
 + 
 +   1 * 64 + 0 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1 + 1 * 0,5 + 0 * 0,25 + 1 * 0,125 = 90,625 
 + 
 +> Или по таблице: 
 + 
 +   64 32 16 8 4 2 1 0.5 0.25 0.125 
 +   1 0 1 1 0 1 0 , 1 0 1 
 +   +64 +0 +16 +8 +0 +2 +0 +0.5 +0 +0.125 
 + 
 +===== Преобразование методом Горнера ===== 
 + 
 +> Для того, чтобы преобразовывать числа из двоичной в десятичную систему данным методом, надо суммировать цифры слева направо, умножая ранее полученный результат на основу системы (в данном случае 2). Методом Горнера обычно переводят из двоичной в десятичную систему. Обратная операция затруднительна, так как требует навыков сложения и умножения в двоичной системе счисления. 
 + 
 +===== Преобразование дробных десятичных чисел в двоичные ===== 
 + 
 +> Если в исходном числе есть целая часть, то она преобразуется отдельно от дробной. Перевод дробного числа из десятичной системы счисления в двоичную осуществляется по следующему алгоритму: 
 + 
 +  * Дробь умножается на основание двоичной системы счисления (2); 
 +  * В полученном произведении выделяется целая часть, которая принимается в качестве старшего разряда числа в двоичной системе счисления; 
 +  * Алгоритм завершается, если дробная часть полученного произведения равна нулю или если достигнута требуемая точность вычислений. В противном случае вычисления продолжаются над дробной частью произведения. 
 + 
 +> Пример: Требуется перевести дробное десятичное число 206,116 в дробное двоичное число. 
 + 
 +> Перевод целой части дает 20610=110011102 по ранее описанным алгоритмам. 
 + 
 +===== Применения в цифровых устройствах ===== 
 + 
 +> Двоичная система используется в цифровых устройствах, поскольку является наиболее простой и соответствует требованиям: 
 + 
 +> Чем меньше значений существует в системе, тем проще изготовить отдельные элементы, оперирующие этими значениями. В частности, две цифры двоичной системы счисления могут быть легко представлены многими физическими явлениями: есть ток (ток больше пороговой величины) — нет тока (ток меньше пороговой величины), индукция магнитного поля больше пороговой величины или нет (индукция магнитного поля меньше пороговой величины) и т. д. 
 +> Чем меньше количество состояний у элемента, тем выше помехоустойчивость и тем быстрее он может работать. Например, чтобы закодировать три состояния через величину напряжения, тока или индукции магнитного поля, потребуется ввести два пороговых значения и два компаратора, 
 +> В вычислительной технике широко используется запись отрицательных двоичных чисел в дополнительном коде. Например, число −5(10) может быть записано как −101(2) но в 32-битном компьютере будет храниться как 11111111111111111111111111111011(2). 
 + 
 + 
 + 
 + 
 + 
  • reverseenengineering/2-система.1750784191.txt.gz
  • Последнее изменение: 2025/06/24 23:56
  • Lex