9 3.1. Представление чисел в цифровых устройствах
В цифровых устройствах (ЦУ) сигналы изменяются дискретно, принимая значения нуля и единицы. Любую аналоговую величину (или непрерывную функцию) можно преобразовать и представить в виде комбинации нулей и единиц. Такая комбинация называется цифровым кодом.
Как на основе теоремы Котельникова преобразовать непрерывную функцию в цифровой код и обратно рассмотрим позже.
Физически логический ноль - это сигнал, напряжение которого равно или близко к нулю (или, иначе, к "земле"), логическая единица - сигнал, напряжение которого равно или близко к напряжению источника питания. Сигнал логического нуля (или просто нуля) называют также напряжением низкого уровня или просто низким уровнем. Соответственно, единицу - напряжением высокого уровня или просто высоким уровнем.
В обычной жизни мы пользуемся десятичным исчислением, когда любое десятичное число представляется некоторым десятичным кодом, каждый разряд которого выражается числами от 0 до 9 (эти числа, или символы, составляют алфавит десятичного исчисления).
Но в цифровой технике самым распространенным кодом является двоичный код. Его алфавит состоит из двух чисел (символов): 0 и 1.
Двоичный код есть сумма произведений чисел 2n на 0 или 1. Числа 2n называются весовыми коэффициентами. Степень весового коэффициента (n) связана, кроме того, с разрядом двоичного кода как (n-1).
Например, 0х23+1х22+0х21+1х20=510 или, сокращенно: 0101.
Более понятно это можно показать таблицей, которую можно назвать таблицей перевода десятичных чисел в двоичные числа и, кстати, наоборот. Таблица 1
Десятичное число |
Весовые коэффициенты |
|||
23 |
22 |
21 |
20 |
|
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
2 |
0 |
0 |
1 |
0 |
3 |
0 |
0 |
1 |
1 |
4 |
0 |
1 |
0 |
0 |
5 |
0 |
1 |
0 |
1 |
6 |
0 |
1 |
1 |
0 |
7 |
0 |
1 |
1 |
1 |
8 |
1 |
0 |
0 |
0 |
9 |
1 |
0 |
0 |
1 |
10 |
1 |
0 |
1 |
0 |
11 |
1 |
0 |
1 |
1 |
12 |
1 |
1 |
0 |
0 |
13 |
1 |
1 |
0 |
1 |
14 |
1 |
1 |
1 |
0 |
15 |
1 |
1 |
1 |
1 |
В таблице 1 показаны коды 4-х разрядных двоичных чисел, причем 20 есть младший разряд числа, 23 старший разряд.
Суть перевода двоичного числа в десятичное заключается в суммировании весовых коэффициентов, единицы и нули показывают, какие коэффициенты надо складывать, а какие нет.
Например, 1011. Чтобы перевести его в десятичное число надо сложить весовые коэффициенты всех разрядов, имеющих единицы в качестве первых сомножителей: 23,22, 21 и 20. Получим: 1 x 23 + 1 x 21 + 1 x 20 = 1110
Очевидно, что для перевода необходимо знать о степенях числа 2.
Таблица 2
Степень |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Число |
0 |
2 |
4 |
8 |
16 |
32 |
64 |
128 |
256 |
512 |
1024 |
2048 |
4096 |
8192 |
16384 |
32768 |
Можно заметить в первой таблице одну закономерность. В младшем разряде поочередно меняется 0 и 1. В следующем разряде - два нуля и две единицы, в следующем - четыре нуля и четыре единицы. Таким образом, зная эту закономерность, таблицу легко построить и запоминать её не нужно.
Один разряд в двоичном коде называется битом, соответственно, в первой таблице все числа четырёхбитные. Восьмиразрядное двоичное число называется байтом, т. е. в одном байте восемь бит. Еще восьмиразрядное двоичное число называется словом. То есть слово - это 1 байт или 8 бит, в слове 8 цифр, каждая принимает значение 0 или 1.
В цифровой технике разряды считают от 0, а не от 1. Т. е. максимальное число в 4-х разрядном двоичном коде не 16, а 15, в пятиразрядном - 31, а не 32 и т. п.
Восьмеричный код используется редко, алфавит из восьми символов 0…7 кодируется трёхразрядным двоичным кодом, от 000 до 111.
Двоично-десятичный код Двоично-десятичный код также аналогичен двоичному коду. Используется для индикации чисел в индикаторах. Отличие состоит в том, что в десятичном эквиваленте код представляет алфавит от 0 до 9. То есть десятичный алфавит может быть представлен четырёхразрядным двоичным кодом: от 0000 до 1001, см. таблицу 1. Остальные возможные коды от 1010 до 1111 в двоично-десятичном коде не используются.
По аналогии с десятичными числами, чтобы представить, допустим, число 243 в двоично-десятичном коде, необходимо взять двоичный эквивалент чисел 2, 4 и 3. Т. е. 243=0010 0100 0011. Каждая четырехразрядная группа двоично-десятичного кода называется тетрадой. Т. е. число 243 мы записали в виде трех тетрад, по аналогии с трёхразрядными десятичными числами.