www.chms.ru - вывоз мусора в Балашихе 

Динамо-машины  Обратные коды 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 [ 42 ] 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189

Заметим, что и на радиусе laquo;О raquo; лишь для одного кольца проходит граница между зачерненным и прозрачным секторами. Если фотоэлементы находятся в точности против этого радиуса, то напряжения с их выходов могут восприниматься либо как 100 (т. e.Vs), либо как ООО (т. е. 0). Поскольку измерение идет по модулю 1, то с точностью до /s и то и другое является правильным результатом.


т е} SI г) S) е)

Рис. I-IO. Графическое построение кодов таблицы 1-10.

Рис. 1-10 иллюстрирует способ, которым были построены коды, приведенные в таблице 1-10. Для построения использована сетка из 8 узлов, которая может служить графическим изображением 3-разрядного двоичного кода (см. раздел 1.7.2, рис. 1-3 на стр. 109). Задача построения 3-разрядного двоичного кода, в котором .8 возможных комбинаций расположены так, что две соседние комбинации отличаются не более чем в одном двоичном разряде, графически интерпретируется следующим образом. Начиная от какого-либо узла сетки (например, ООО) и двигаясь только вдоль линий сетки, нужно пройти по одному разу через все узлы и вернуться к исходной точке.

На рис. 1-10, а - е показаны 6 различных путей, которыми это можно сделать. Если не принимать во внимание направление движения, то легко убедиться, что никакие другие пути невозможны. Шесть соответствующих кодов записаны в столбцах laquo;а raquo; - laquo;е raquo; таблицы 1-10 (буквы Б заголовках столбцов таблицы и на рисунках находятся Б соответствии). Коды в столбцах laquo;a raquo; - laquo;e raquo; соответствуют тем же рисункам, но обратному порядку обхода узлов.

Из каждого кода, приведенного в таблице, круговой перестановкой символов можно получить еще 7 кодов с аналогичными свойствами. Таким образом, имеется всего 12 X 8 = 96 различных 3-разрядных кодов, обладающих 1Щ свойством, что комбинации, соответствующие двум



соседним значениям измеряемой величины, отличаются одна от другой Б одном двоичном разряде. Еще больше может быть различных вариантов 4-разрядных, 5-разрядных и т. д. кодов. В разделе 1.6.3 настоящего параграфа приведен один из множества десятичных кодов с аналогичными свойствами, который удобно использовать в том случае когда угол поворота вала должен быть измерен с точностью до одной десятой от полного оборота (см. столбец laquo;д raquo; таблицы 1-6 на стр. 96).

Разумеется, различия, имеющиеся в этом множестве кодов, не все одинаково принципиальны. Например, коды,-которые можно получить из одного какого-либо кода круговой перестановкой символов, соответствуют все одному и тому же чертежу диска; разница состоит лишь в том, какой радиус считается нулевым. Для пар кодов таблицы 1-10, полученных различным направлением обхода узлов сетки ( laquo;а raquo; и laquo;a raquo;, laquo;б raquo; и laquo;б raquo; и т. д.), чертеж диска тоже один и тот же, но диск нужно поставить обратной стороной. Наконец, например, код laquo;в raquo; таблицы 1-10 отличается от кода laquo;г raquo; только тем, что в нем переставлены средняя и правая цифры.

Однако если бы мы поставили задачу отыскать такой код, который, с одной стороны, обеспечивал бы максимальную точность преобразования данных из непрерывной формы Б дискретную, а с другой стороны, давал бы возможность легко выполнять арифметические операции или, например, легко переходить к обычной двоичной записи чисел, то нам нужно было бы рассмотреть все указанное множество кодов. Такая задача пока не решена. В устройствах преобразования данных из непрерывной формы в дискретную используется один из возможных кодов, подходящих для этой цели,- так называемый рефлексный код (или laquo;код Грэя raquo;). 3-разрядный рефлексный код приведен Б столбце laquo;а raquo; таблицы 1-10; общий случай построения рефлексного кода рассматривается ниже.

1.8.2. Рефлексный код. Рефлексный код в общем случае строится по следующему правилу. Пусть имеем обычное двоичное представление числа (в позиционной системе, с естественными весами разрядов и цифрами laquo;о raquo;, laquo;1 raquo;). Если цифра некоторого разряда в таком представлении



числа совпадает с цифрой соседнего старшего разряда, то цифра соответствующего разряда в рефлексном коде есть laquo;О raquo;, в противном случае - laquo;1 raquo;. Что касается самого старшего разряда, то предполагается, что в обычном двоичном представлении числа слева от самого старшего разряда всегда находится 0; поэтому в старшем разряде рефлексного кода цифра всегда такая же, как в старшем разряде обьиного двоичного представления числа.

Например, если обычное двоичное представление числа есть 10011101011, то в рефлексном коде то же число записывается Е виде 11010011110. Здесь цифра старшего разряда - такая же, как в обычном двоичном представлени и ( laquo;1 raquo;). Во втором слева разряде имеем laquo;1 raquo;, потому чтоб обычной записи цифра второго слева разряда не совпадает с цифрой первого разряда ( laquo;О raquo; и laquo;1 raquo;); в третьем слева разряде имеем laquo;О raquo; потому, что в обычной записи цифры третьего и второго разрядов совпадают ( laquo;О raquo; и laquo;О raquo;), и т. д.

Легко доказать, что в коде, построенном по этому правилу, двум соседним по величине числам соответствуют комбинации, различающиеся в одном двоичном разряде.

Действительно. Любое число в обычной двоичной записи в самом общем случае имеет вид

...0111...111.

ft разрядов

Мы полагаем здесь, что несколько старших разрядов могут содержать вообще произвольные цифры, затем в (k -\-+ 1)-м (считая справа) разряде имеется цифра laquo;О raquo;, а k младших разрядов-содержат цифры laquo;1 raquo;; в частности, может оказаться, что k = О (т. е. что в первом же справа разряде содержится laquo;О raquo;). В другом крайнем случае k равно количеству разрядов числа. Соответствующую запись в рефлексном коде получим в виде

...*1ОО...О00,

ft-1 разрядов

где многоточие слева соответствует старшим разрядам, * - цифра (k + 1)-го разряда (она зависит от цифры (k -f- 2)-го слева разряда в обьиной записи: если в (fe + 2)-м разряде имелся laquo;О raquo;, то *-это laquo;О*, если laquo;1 raquo; -то laquo;1 raquo;), последующие k цифр образованы в соответствии с указанным выше правилом.



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 [ 42 ] 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189