Устройство относится к области вы числительной техники и может быть ис пользовано в устройствах ввода цифровых вычислительных машин. Известно устройство для транслиро вания пpoгpa Ф, содержащее блок управления, блок подсветки, блок хранения символов языка, блок выделения команды, блок хранения адресов, блок хранения описаний, формирователи, блок вывода 1. Однако данное устройство имеет большой объем оборудования. Наи. близким к данному изобре тению техническим решением является селекторный канал, содержащий первый, второй и третий элементы ИЛИ-И, выходы которых являются срртветствен но выходами функциональных символов переменных, чисел устройства, блок оперативной памяти, выход которого соединен с первыми входами первого, второго и третьего элементов ИЛИ-И, дешифратор входных символов, соединенный двусторонними связями с 6.ЛОком оперативной памяти, вход дешифр тора входных символов является входо устройства (2. Недостатком устройства является то, что при вводе символов их коды без всяких лексических преобразований передаются в оперативную память вычислительной машины. Затем в процессоре вычислительной машины производится анализ введенного текста с помощью специальной программы-транслятора. При этом, прежде всего, выполняется лексический анализ, при котором из последовательности кодов выделяются первичные семантические структуры - слова (функциональные символы, разделители, переменные, числа и др.). После-этого производится синтаксический и семантический знализ в срдной информации. Выполнение программы транслятора уменьшает быстродействие вычислительной машины Целью йзбёрётёнйя являётся увелич ение быстродействия. Поставленная цель достигается тем, что устройство содержит четыре элемента И, первый и второй триггеры, единичными выходами соединенные с первыми входами соответственно первого и третьего элементов И, а нулевыми выходами - с первыми входами соответственно второго и четвертого элементов И, первый выход дешифратора входных символов соединен с вторым входом первого элемента ИЛИ-И, выход которого соединен, с нулевши входом первого триггера, второй выход деишфратора входных символов соединен с единичным входом первого триггера, третий выход дешифратора входных символов соединен с вторыми входами первого и второго элементов И, выходы которых соединены с третьи и вторым входами соответственно первого и второго элементов ИЛИ-И, четвертый выход дешифратора входных символов соединен с единичным входом второго триггера и третьим входом второго элемента ИЛИ-И, четвертый вход которого соединен с выходом третьего элемента И и нулевым входом второго триггера, пятый выход дешифратора входных символов соединен с вторыми входами третьего и четвертого элементов И, выход четвертого элемента И соединен с вторым входом третьего элемента ИЛИ-И.
На чертеже представлена блок-схема устройства.
Устройство содержит элементы ИЛИ-И 1-3, элементы И 4-7, триггеры 8 и 9, дешифратор 10 входных символов, блок 11 оперативной памяти.
Элементы И 4-7 и ИЛИ-И 1-3 служат -для обеспечения выполнения логических условий при передаче управляющих сигналов.
Триггеры 8 и 9 служат для запоминания состояния устройства лексического анализа. Триггер 8 фиксирует состояние, когда формируется буквенный функциональный символ (sin, tg, sgrt и т.п.), триггер 5 когда формируется переменная (al5, ylO и т.д.
Дешифратор 10 служит для анализа поступающих на его вход с входа 12 устройства литер и выдачи управляющих Сигналов на формирование в блоке 11 слов Из этих.литер и на передачку этих слов (функциональных символов, разделителей, переменных и чисел) на соответствующие выходы 13-15.
Блок 11 оперативной памяти используется для накопления, хранения и выдачи ,слов текста задачи. Своим входом и выходом он соединен с деишфратором 10 входных символов, другой выход соединен с соответствуквдими входами элементов ИЛИ-И 1-3.
Решаемая задача, записанная на алгоритмическом языке в виде кодов литер, из которых составлены слова, поступает последовательно литера за литерой в дешифратор 10, где каждая поступающая литера сравнивается с предыдущей литерой, записанной в блоке 11 оперативной памяти. В зависимости от сочетания литер в блоке 10 элементах И 4-7 и ИЛИ-И 1-3 вырабатываются следующие управляющие сигналы.
Если поступающая литера буква, а в блоке 11 оперативной памяти были также записаны буквы, то поступающая буква записывается в блок 11 памяти и триггер 8 устанавливается в единичное состояние. Если же в блоке 11 памяти был записан знак арифметической операции или разделитель, то подается управляющий сигнет на элемект ИЛИ-И 1 и слово из блока 11 папамяти выдается на выход 13 функциональных символов, а триггер 8 устанавливается в нулевое.состояние.
Если поступающая литера цифра, а в блоке 11 памяти была буква, то подается управляющий сигнал на элемент ИЛИ-И 2 и слово из блока 11 памяти, выдается на выход 14 переменных, одновременно подается сигнал на единичный вход триггера.9. Если в блоке 11 памяти - цифра, то поступающая цифра записывается в .блок 11 памяти. Если в блоке 11 памяти был знак арифметической операции или разделитель, то подается управляющий сигнал на элемент ИЛИ-И 1 и слово из блока 11 памяти выдается на выход 13 функциональных символов, а триггер 8 устанавливается в нулевое состояние-.
Если поступающая литера - знак арифметической операции, а в блоке 11 памяти была записана буква, то подается управляющий сигнал на элемент ИЛИ-И 2 и слово из блока 11 памяти выдается на выход 14 переменных одновременно триггер 9 устанавливается в единичное состояние. Если в блоке 11 памяти были записаны цифры, то в зависимости от состояния триггера 9 подается управляющий сигнал на элементы ИЛИ-И 2 или ИЛИ-И 3 и слово из блока 11 памяти выдается либо на выход 14 переменных, как индекс переменной, либо наВЫХОД 15 числа. Если триггер 9 находится в единичном состоянии, то одновременно с выдачей слова на выход 14 переменных, он устанавливается в нулевое состояние. Если в блоке 11 памяти был записан разделитель, то подается управляющий сигнал на элемент ИЛИ-И 1 и слово из блока 11 памяти вьщается на выход 13 функциональных символов, а триггер 8 устанавливается в нулевое состояние.
Если поступающая литера была разделителем, а в блоке 11 памяти была записана буква, то в зависимости от состояния триггера 8 подается управляющий сигнал на элемент ИЛИ-И 1 или ИЛИ-И 2 и слово из блока 11 памяти выдается либо на.выход 13 функциональных символов, либо на выход 14 переменных.
Если в блоке 11 памяти была записана цифра, то в зависимости от состояния триггера 9 подается управляющий сигнал на элемент ИЛИ-И 2 и
название | год | авторы | номер документа |
---|---|---|---|
Устройство для ввода данных | 1976 |
|
SU564630A1 |
Устройство для лексического анализа программ | 1984 |
|
SU1238103A1 |
Устройство для лексического анализа | 1986 |
|
SU1361578A1 |
Устройство для лексического анализа программ | 1987 |
|
SU1418757A1 |
Устройство для лексического анализа метатранслятора | 1983 |
|
SU1153329A1 |
Устройство для объединения лексических множеств | 1990 |
|
SU1795477A1 |
УСТРОЙСТВО ДЛЯ ОБЪЕДИНЕНИЯ ЛЕКСИЧЕСКИХ МНОЖЕСТВ | 1990 |
|
RU2022354C1 |
Устройство для лексического анализа метамикроассемблера | 1982 |
|
SU1034043A1 |
Устройство для преобразования кодов с одного языка на другой | 1988 |
|
SU1522237A1 |
Микропрограммное устройство для анализа программ | 1980 |
|
SU943729A1 |
Авторы
Даты
1979-10-05—Публикация
1976-03-30—Подача