Что такое взвешенное и невзвешенное кодирование?

Абстрактный фон двоичного кода

Взвешенное кодирование помогает с двоичными преобразованиями.

Кредит изображения: leszekglasner / iStock / Getty Images

Цифровые схемы, которые вы видите внутри компьютеров и других электронных устройств, могут взаимодействовать только с помощью двух концепций: включения и выключения. Эти концепции представлены нам в виде двоичной нумерации, где 0 выключен, а 1 включен. Чтобы по-настоящему общаться с компьютером, необходимы дальнейшие преобразования, чтобы перевести компьютерный язык в более человеческий формат. Первым шагом в процессе преобразования является преобразование двоичного кода в более читаемую десятичную систему. Взвешенное и невзвешенное кодирование относится к методу преобразования двоичных чисел в десятичные. При взвешенном кодировании каждой цифре в числе перед преобразованием присваивается взвешенное значение. Методы невзвешенного кодирования используют слегка измененные формулы, но выполняют преобразования без значения веса.

Прежде чем разбираться в кодировании с взвешиванием, вы должны сначала понять системы нумерации и позиционную нотацию.

Видео дня

Системы нумерации

Системы нумерации обозначаются основанием, которое является наибольшим числом, до которого вы можете сосчитать, прежде чем добавлять еще одну цифру. Например, система нумерации, которую мы все изучаем в детстве, называется основанием 10, потому что первые десять чисел в последовательности, от 0 до 9, могут быть подсчитаны с использованием однозначных цифр. Как только вы дойдете до 10, вам нужно все сдвинуть и считать двузначными числами, пока не дойдете до 100, а затем вы будете считать трехзначными числами. Эта система с основанием 10 также называется десятичной системой.

Позиционное обозначение

Позиционная запись возникает, когда вы присваиваете позиционное значение каждой цифре действительного числа справа налево. Например, для числа 4782, начиная с цифры 2 и считая справа налево, позиции равны 0, 1, 2, 3, как показано ниже:

4782 = число 3210 = позиционные значения

Взвешенное кодирование

В приведенном выше примере позиционные присвоения от 0 до 3 могут быть взвешенными значениями присвоенных им цифр. Итак, вес 4 равен 3, а вес 7 равен 2. Вес числа играет важную роль при преобразовании любой базовой системы счисления в десятичную (основание 10) систему счисления. Одна из формул преобразования взвешенного числа состоит в том, чтобы каждую цифру умножить на основание в степени ее позиции, а затем сложить все полученные цифры. В приведенном ниже примере 100101, представляющее собой двоичное число с основанием 2, преобразуется в десятичное (с основанием 10) число.

100101 = двоичное (с основанием 2) число 543210 = позиционные веса (1 x 2 ^ 5) + (0 x 2 ^ 4) + (0 x 2 ^ 3) + (1 x 2 ^ 2) + (0 x 2 ^ 1 ) + (1 x 2 ^ 0) = 32 + 0 + 0 + 4 + 0 + 1 = 37 37base10 = десятичное преобразование

Другие методы взвешивания включают BCD и 2421, каждый из которых использует аналогичную формулу для назначения весов и преобразования в десятичные числа.

Невзвешенное кодирование

Код Грея - это метод кодирования без взвешивания, который изменяет только один бит в двоичном числе при переходе от одного десятичного числа к другому. В обычном двоичном кодировании цифры 10 будут представлять десятичное число 2. При использовании кода Грея один бит этого двоичного числа изменяется, поэтому десятичное число 2 представляется двоичными цифрами 0011. Последовательно десятичное число 3, которое обычно было бы представлено двоичными цифрами 0011, теперь преобразуется в 0010, поскольку может изменяться только один бит.

Excess-3 - еще один метод кодирования без взвешивания, который когда-то использовался в старых компьютерах и счетных машинах. При превышении-3 вы добавляете 3 к десятичному числу перед преобразованием его в двоичное. Так, например, десятичное число 2 сначала увеличится на 3, что составит 5. Двоичное преобразование 2 с использованием метода Excess-3 будет 0101 вместо его обычного двоичного значения 0010.