Двоичное кодирование чисел
Двоичное кодирование чисел — это представление целого числа последовательностью битов, то есть нулей и единиц. Такая запись используется в компьютере как часть общего представления числа в памяти.
В двоичной системе счисления справа налево разряды имеют веса \(2^0\), \(2^1\), \(2^2\) и так далее. Для неотрицательных чисел обычно используют беззнаковую запись: все разряды участвуют в хранении значения. Если выделено \(k\) битов, можно записать числа от \(0\) до \(2^k-1\).
Длина двоичной записи
Длина записи положительного числа \(n\) — это количество двоичных разрядов от старшей единицы до младшего разряда. Нули слева обычно не считают частью минимальной записи: \(101_2\) имеет длину 3, а не 5, даже если в памяти число хранится как \(00101\).
Для числа \(0\) минимальная двоичная запись — \(0\), поэтому её длина равна 1. Обратно, если известна длина \(L\), то среди положительных чисел такой длины находятся числа от \(2^{L-1}\) до \(2^L-1\).
Число \(25_{10}=11001_2\). Старшая единица стоит в разряде \(2^4\), поэтому длина записи равна \(4+1=5\). Действительно, \(1\cdot16+1\cdot8+0\cdot4+0\cdot2+1=25\).
Длина двоичной записи не равна количеству цифр в десятичной записи: число 25 имеет две десятичные цифры, но пять двоичных разрядов. Также беззнаковый код нельзя смешивать со знаковым представлением; для отрицательных чисел часто применяют дополнительный код, где один и тот же набор битов трактуется иначе.
Какова минимальная длина двоичной записи числа \(37_{10}\)?
Главное
- Двоичное кодирование записывает целые числа последовательностью битов; разряды имеют веса степеней двойки.
- Для \(n\ge1\) минимальная длина записи: \(L=\lfloor\log_2 n\rfloor+1\); для нуля длина равна 1.
- В \(k\) беззнаковых битах хранятся числа от \(0\) до \(2^k-1\); ведущие нули длину минимальной записи не увеличивают.