Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Неарифметические двоичные коды.






Наряду с арифметическими кодами в системах автоматизации применяются и неарифметические двоичные коды. В частности, в устройствах индикации и связи с оператором применяются двоично-десятичные коды, предназначенные для отображения арабских цифр. Обычно для отображения цифр используются кодовые комбинации, состоящие из четырёх двоичных символов. Наибольшее применение нашёл двоично-десятичный код 8 – 4 – 2 – 1, в котором каждая десятичная цифра записывается в арифметическом коде таким образом, что численное значение записанной четырёхсимвольной комбинации равно отображаемой цифре: 0 = 0000, 1 = 0001, 2 = 0010, 3 = 0011, 4 = 0100, 5 = 0101, 6 = 0110, 7 = 0111, 8 = 1000, 9 = 1001.

Запись чисел в двоично-десятичном коде производится в десятичной системе исчисления, но вместо обычных цифр используются приведённые здесь комбинации нулей и единиц.

Из других неарифметических двоичных кодов, применяющихся для записи чисел, наиболее интересны циклические коды Грея, нашедший применение в кодовых датчиках положения.

Кодами Грея называются двоичные коды, у которых соседние кодовые комбинации отличаются лишь одним кодовым символом. Соседними кодовыми комбинациями называются кодовые комбинации, предназначенные для отображения чисел, которые, будучи записанными в каком-либо арифметическом коде, отличаются друг от друга на единицу младшего разряда, принятую в данной системе кодирования. Чтобы код Грея был циклическим, кодовая комбинация, отображающая максимальное число данного кода, выполняется соседней с кодовой комбинацией, отображающей минимальное число. Понятие соседней кодовой комбинации становится совершенно ясным, если представить себе круговой датчик положения, позиции которого последовательно отображены в каком-либо коде Грея. Тогда соседние кодовые комбинации будут отображать соседние позиции датчика положения, причём последняя позиция окажется соседней с первой. Количество двоичных символов m, отображающих код Грея, определяется количеством положений Q проектируемого датчика положения из соотношения Q ≤ 2m.

Очевидно, что если, например, Q = 1 000, то m ≥ 10.

В табл.2.1 приведён пример четырёхсимвольного кода Грея, способного отобразить не более 16 позиций кодового датчика, и одновременно приведён четырёхразрядный арифметический двоичный код, отображающий те же позиции. Видно, что в коде Грея при переходе от позиции изменяется только один символ, а в арифметическом коде в некоторых позициях изменяются сразу несколько символов, причём при переходе от позиции 7 к позиции 8 и от последней позиции к первой изменяются все символа сразу.

Таблица 2.1

Сравнение кода Грея и арифметического кода

Коды Позиции
                               
Код Грея                                
                               
                               
                               
Арифмети-ческий код                                
                               
                               
                               

Неточности в нанесении кодовой маски и установки считывающих элементов приводит при использовании арифметического кода к появлению ложных сигналов на границах между соседними позициями, если при переходе от позиции к позиции меняются сразу несколько символов. Так, если при переходе от позиции 7 к позиции 8 первым произойдёт переход от нуля семёрки к единице восьмёрки, то возникнет кратковременный сигнал о нахождении датчика в позиции 15. При применении кода Грея появление ложных сигналов такого рода невозможно. Использование кодов Грея повышает надёжность аналого-цифрового преобразования в датчиках положения.

Важнейшую роль в организации взаимодействия между человеком-оператором и УВМ играют двоичные коды обмена информацией. Из них наиболее распространенным является код ASCII (American Standart Code for Information Interchange, табл.П.2.1), играющий роль международного стандарта. Это семибитовый код, т.е. код, в котором каждая кодовая комбинация состоит из семи двоичных символов, что позволяет получить всего 128 (27) различных кодовых комбинаций. С помощью кода ASCII кодируются 26 букв (заглавных и строчных) современного латинского (английского) алфавита, 10 арабских цифр, знаки математических операций, знаки препинания, различные специальные символы (например, %) и управляющие символы (табл.2.2).

Обработка кодовых комбинаций ASCII производится байтами. Благодаря этому в составе каждой комбинации ASCII появляется дополнительный бит, который может быть использован либо для расширения кода (расширенный ASCII), либо для контроля правильности кодовых комбинаций. В байте кода ASCII дополнительный бит занимает место старшего бита. При расширении кода ASCII его основная часть, т.е. символы, отображённые в табл.П.2.1, кодируется нулевым значением старшего бита (b7 = 0), а дополнительные символы, полученные при расширении ASCII, кодируются единичным значением старшего бита.

Именно таким способом сформированы символы отечественного кода обмена информацией КОИ-8 (табл.П.2.3), применение которого нормировано ГОСТ Р34.303-92, построенным в соответствии с международным стандартом ISO4873-86. В коде КОИ-8 кроме символов базового ASCII представлены буквы русского алфавита и дополнительные управляющие символы. Соответствие русских управляющих символов КОИ-8 английским управляющим символам ASCII можно проследить по табл.П.2.2. В табл.п.2.2 и П.2.3 приведены только шестнадцатеричные коды, но их нетрудно перевести в двоичную форму, если воспользоваться рекомендациями, приведёнными в вопросе 2.3. Десятичные цифры в коде ASCII (табл.П.2.1) закодированы по принципу двоично-десятичного кодирования, так как четыре младших бита (b0 – b3) кодов десятичных цифр соответствуют двоично-десятичному коду 8 – 4 – 2 – 1.

Символы кодов обмена информацией составляют основу алфавитов всех современных систем кодирования. По этой причине большинство символов кода ASCII отображены на клавишах стандартной клавиатуры любого компьютера. Ярким примером применения символов ASCII являются символы коды ISO-7, предназначенного для программного управления оборудованием. В этом коде, которому соответствует отечественный ГОСТ 20999-83, используются исключительно символы ASCII. Код ISO-7 является 8-битным, причём свободный старший бит в каждом байте кода ISO-7 используется для контроля кода по чётности (см. вопрос 2.5). Код ISO-7 не может считаться двоичным кодом, так как его слова состоят не из двоичных символов (не из наборов нулей и единиц), а из символов ASCII.

Аналогично строятся языки ассемблеров, которые позволяют при программировании в машинных кодах пользоваться алфавитно-цифровыми мнемоническими обозначениями кодов операций и команд процессоров УВМ, присваивать символические имена их рабочим регистрам и формировать удобные схемы адресации. Тем более не отображаются непосредственно в двоичных кодах алгоритмические языки высокого уровня.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.