I Изобретение относится к вычислительной технике и может быть исполь .зовано при создании быстродействующих операционных систем обработки информации, в системах с диалоговым режимом разработки, отладки и выпол нения программ, а также в аппаратных -преобразователях эмуляторах, интерпретаторах и т.п. и при непос редственной реализации языков высокого уровня. Известно устройство для преобразования кодов с одного языка на дру гой, содержащее последовательно сое диненные дешифратор, блок памяти сл выходного языка и регистр вьщачи, первый выход которого подключен к выходу устройства, первый информационный вход устройства через блок элементов И подключен к входу прием ного регистра, второй информационный вход - к первому входу первого элемента И и вторым входам блока элементов И. Устройство позволяет сопоставить входному слову эквивалентную последовательность выходных слов ОЗ Однако в устройстве не обеспечивается возможность выбора эквивален ных последовательностей, расположен ,ных в разных местах блока памяти, что приводит к усложнению блока пам ти и к ограничению области применения устройства. Недостатками устрой ства являются также низкая достовер ность выходной информации, обусловленная отсутствием контроля функцио нир ования, и ограниченные функциональные возможности из-за ограниченного класса возможных преобразований слов входного языка в слова выходного языка (либо только взаимо однозначное преобразование слов входного языка, либо преобразование слова входного языка в фиксированну последовательность слов выходного языка|. Кроме, того в устройстве низкиеГибкость формирования слов выходного языка н коэффициент испол зования блока памяти. Известно устройство для преобразования кодов с одного языка на дру гой, содержащее регистр приема, регистр управления, блок элементов И, выходы регистра приема соединены через дещифратор с входами блока памяти, первая группа выходов которого соединена через регистр вьщачи с выходами устройства. Устройств 832 позволяет сопоставить входному слову эквивалентную последовательность выходных слов, обеспечивает также выбор эквивалентной последовательности слов, расположенных в разных местах блока памяти 2 . Основной недостаток устройства состоит, в том, что для размещения управляющих слов, сопровождающих каждое слово в эквивалентной последовательности и представляющих собой адрес следукйцего слова в этой последовательности, используется значительный о.бъем памяти. Это увеличивает аппаратурное оборудование и снижает эффективность работы устройртва. Кроме того, недостатками указанного устройства являются низкие функциональные возможности, обусловленные ограниченным классом преобразований слов входного языка, большим временем преобразования, а также отсутствием контроля правильности преобразования в последовательность кодов выходного языка. Низкая экономичность блока памяти устройства вызвана тем, что в блоке памяти для каждого входного слова записана соответствующая последовательность слов на выходном языке. Поэтому если одно и то же слово (оператор) выходного языка присутствует в нескольких последовательностях эквивалентных различным входным словам, то данное слово (оператор) должно быть записано в блоке памяти несколько раз. Это приводит к большой избыточности информации в блоке памяти и, как следствие, к снижению его экономичности. Экономичность блока памяти снижается также за счет того, что в выходных словах имеются отдельные участки слов, koторые являются повторяющимися. Наиболее близким по технической сущности и достигаемому результату к изобретению является устройство для преобразования кодов с одного языка на другой,содержащее регистр приема, входы которого соединены с с выходами группы элементов ИЛИ, первьй вход каждого элемента ИЛИ соединен с выходом соответствующего элемента И первой группы, первые входы элементов И первой группы являются входами устройства, второй вход каждого элемента ИЛИ соединен с выходом соответствующего элемента И второй группы, выходы регистра приема через дешифратор подключены к адресным входам блока памяти, ныходы которого соединены соответствен но с входами регистра вьщачи, устройство содержит также два дополнительных разряда в регистре вьщачи, два элемента И, третью группу элемен :tOB. Ш выходы которых являются выход ми уётройства, первые входы элементо И второй и третьей групп подключены соответственно к выходам регистра вы дачи, вторые входы элементов И второй группы - к прямому выходу перво. То дополнительного раэряда регистра вьщачи, инверсньга вькод которого сое динен с вторыми входами элементов И третьей.группы и первыми входами пер вого и второго элементов И, вторые входы которых соединены соответствен но с прямым и инверсным вьрсодами вто рого дополнительного разряда регистра вьвдачи, вьпкод первого элемента И подключен к суммирующему входу,регис ра приема, выход второго элемента И соединен с вторыми входами элементо И первой группы, входы дополнительных разрядов регистра выдачи подйлючены соответственно к управляющим вы ходам блока памяти -0 Недостатком известного устройства является его низкая экономичность обусловленная большим объемом блока памяти слов выход ного языка, в котором для каждого входного слова записана соответствующая последовательность слов на выходном языке. Поэтому, если один и тот же-оператор (слово) выходного языка присутствует в нескольких последовательностях, эквивалентных различным входным словам, то он должен быть записан в блоке памяти несколько раз. Это приводит к большой избыточности информации в блоке памяти и, как.след-ствие, к снижению его экономичности. Недостатком устройства является также низкая гибкость формируемого им базиса слов выходного язьжа, обусловленная тем, что структура устройства не обеспечивает многократ ную интерпретацию множества хранимых слов выходного языка (базиса слов выходного языка)«т.е. коды слов выходного языка, хранимые в блоке памяти, не могут быть использованы для формирования других слов, которые необходимо ввести, например, при расширении списка команд входного языка. Это существенно сужа834ет область применения устройства, поскольку именно способность к модификации набора выполняемых слов (операторов) входного языка является одним из основных достоинств при реализации мультиязыковых процессоров или соответствукнцих трансляторов операционных систем. Гибкость слов выходного языка, формируемых устройством, может быть оценена формулой U -Mj. n «. Mg где М - множество слов выходного языка, формируемого устройством;Mg - множество слов, которые мюгут быть сформированы (мощность базиса слов выходного языка). В известном устройстве для преобра зования кодов с одного языка на другой Mg Mg, поэтому /Ь 1. При изменении макрофункций, нштример, при переходе к новым операционным системам, а следовательно, при расширении числа требуемых слов вы хбдного языка в известном устройстве необходимо увеличивать объем памяти и изменять содержимое блока памяти (слова выходного язьжа). Это приводит к существенным затратам оборудования, снижению экономичности блока памяти. Недостатками уст- . ройства являются также сложность , модификации адресов выбираемых слов выходного языка, а также ограниченный класс возможных преобразований слов входного языка в слова вьрсодного языка .(только либо взаимооднозначное преобразование слов входного языка; либо преобразование слова входного языка в фиксированнун} последовательность слов выходного языка) . Модификация адреса слова выхрдного языка, выбираемого из памяти, определяется либо выбранным словом, определи ющим адрес ячейки, где записано очередное слово эквивалентной последовательности, либо адрес определяется адресом следующей ячейки. В устройстве отсутствует возможность прои1эвольной выборки слов выходного языка, что снижает гибкость устройства и, как следствие, ограничивает область его применения. На практике в качестве блоков . памяти используются стандартные боль- шие интегральные схемы (БИС} емкост например, 4X14 бит. Однако в БИС памяти, как правило, остаются свобо ные ячейки. Предположим, таких свободных ячеек осталось 200. При.расширении набора макрофункций числов слов выходного языка увеличивается в среднем на 10-15% на каждую вводи мую макрофункцию. Тогда введение дв дополнительных макрофункций потребу ет введения 170-260 слов выходного языка. При введении 170 дополнитель ных слов в БИС памяти остается 30 свободных ячеек. Следовательно, при этом в устройстве может быть зарезе вировано только 30 слов. Во втором случае потребуется 2060 ячеек памяти, а следовательно, вторая БИС . памяти емкостью 4х 14 бит. В то же время при увеличении гибкости базиса слов выходного языка расширение набора макрофункций может.быть обеспечено без увеличения его мощности. Однако эта возможность в известном устройстве не реализуется. Таким образом, известное устройство вследствие низкой гибкости базйса слов выходного языка имеет довольно узкую область применения. Целью изобретения является расширение -функциональных возможностей за счет повышения гибкости формируемого базиса слов выходного языка. Поставленная цель достигается тем, что в устройство, содержащее блок памяти, регистр приема, регист выдачи, группу элементов ИЛИ, триггер пуска, .генератор так:товых импульсов, причем вход вход ного слова устройства соединен С информационньй входом регистра прие ма, вход пуска устройства соединен; с единичным входом триггера пуск-а, единичный вькод которого соединен с входом генератора тактовых импульсо выходы разрядов регистра выдачи являются выходами выходных слов устройства, введены регистр условий, регистр адреса, группа элементов суммы по .модулю два, группа регистров адреса, группа .блоков памяти, причем вход условий процесса преобразования соединен с первыми вхо-. дами элементов суммы по модулю два группы, выходы которых соединены с первым информационным входом регистра адресаj выходы разрядов ре836гистра адреса соединены с адресным входом блока памяти, выход кода следующего адресного слова соединен с первыми входама элементов ИЛИ группы,, выходы разрядов регистра приема соединены с вторыми входами элементов ИЛИ группы, выходы которых соединены с вторым информационным входом регистра адреса, выход кода проверяемых условий блока памяти соединен с информационным входом регистра условий, выходы разрядов которого соединены соответственно с вторыми входами элементов суммы по модулю два группы, первый. выход генератора такто-вьк импульсов соединен с синхроии зирующим входом регистра адреса, выходы кодов адресов слогов выходных слов блока памяти соединены с соответствующими информационными входами регистров адреса группы, выходы разрядов которых соединены с адресными входами блоков памяти группы, второй выход генератора тактовых импульсов соединен с синхронизирунщими входами регистров адреса группы, выходы блоков памяти группы соединены с соответствующими информационными входами ре гистра вьщачи, синхронизирующий вход которого соединен с третьим выходом генератора тактовых импульсов. Гибкость базиса слов выходного язьпса достигается за счет декомпозиции частей (слогов I слов выходного языка и их хранения в специальных БИС памяти, при этом базис слов формируется на уровне слогов слов выходного язьжа, а т,акже за счет композиции слов выходного языка из их слогов, хранимых Д1;1фференцированно. В предлагаемом устройстве каждый код выходного слова У представляется в виде композиции 5 ) 5 где V (А 1 , п) - часги кодов ( слов выходного языка, которые хранятся в отдельных БИС памяти. На фиг,1 представлена функциональная схема устройства для преоб разовайия кодов с одного языка на другой; на фиГ.2 - распределение памяти выходных слов по отдельным блокам памяти путем разделения выходного слова длиной Y на ряд (п 4) частей (слогов при количестве выходных слов N 8. Устройство содержит блок 1 памяти, группу блоков 2 памяти, регистр 3 приема, регистр 4 условий, регистр 5 адреса, регистр 6 вьщачи, группу регистров 7 адресов, группу элементов ИЛИ 8, Группу элементов 9 суммы по модулю два, триггер 10 пуска, генератор II тактовых импульсов, вход 12 входного слова, вход 13 условий процесса преобразования, вход 14 пуска устройства и выход 15 выходных слов. На фиг.2 представлен пример распределения памяти выходных слов с длиной слова Y и количеством слов при их разделении на равные (h 4) по дпине слоги. В общем случае длина каждого слога может быть произвольной.j ,-й слог i -го выходного слова т) хранится в отдельном блоке памяти, аричем в каждом блоке памяти слогов нет повторя щихся, что приводит к увеличению коэффициента использования памяти. Блок I памяти предназначен для хранения адресов слогов выходных слов, а также информации об адресе очередного слова. Адрес очередного выходного слова задается либо явно с выхода блоки .1 при линейной последовательности слов, либо косаенно, когда адрес зависит от условий преобразования. Код проверяемого ус ловия, которое определяет путь даль нейшего преобразовшгия, задан с выхода блока памяти. Группа блоков 2 памяти предназначена для хранения информации об отдельных слогах выходных слов. Регистр 3 предназначен для вре менной записи в него с входа 12 уст ройства входного слова. Регистр А условий служит для хра нения усилия определяющего код пре .образования входных слов в выходные Регистр 5 адреса задает адрес, по которому должна быть сосчитана .информация с блока 1 памяти. Регистр 6 ввдачи предназначен для формирования в рем выходных слов из отдельных слогов и образованного выходного слова на вы ход 15 устройства.: Группа регистров 7 адреса предназначена, дпя задания адресов, по которым необходимо осуществить выборку информации из группы блоков 2 памяти об отдельных слогах выходного слова. Группа элементов ИЛИ предназначена для сборки кодов адресов, определяющих процесс дальнейшего преобразования. . Группа элементов 9 суммы по модулю два осуществляет модификацию адреса очередного выходного слова условиями, поступающими с входа 13 устройства. Триггер 10 пуска предназначен для фиксации состояния работы устройства. Работа устройства начинается путем подачи импульса с взсода 14 устройства на единичный вход триггера 10 пуска. Генератор 11 тактовых импульсов предназначен для синхронизации работы устройства. Устройство работает следующим образом. В исходном состоянии элементы памяти устройства находятся в нулевом состоянии. Входное слово поступает на вход 12 vcтpoйcтвa и заносится в регистр 3 приема. Работа устройства начинается при поступлений на вход 14 импульса, который переводит триггер Ю пусг ка в единичное состояние. Высокий потенциал на управляющем входе генератора I1 разрешает формирование на его выходах тактовых импульсов. По импульсу генератора 1, поступающему на синхронизирующий вход регистра 5, входное слово переписывается с регистра 3 через блок элементов ИЛИ 8 в pe гистр 5. Тем самым сформирован адрес первого адресного слова в блоке памяти. Для повьшения гибкости формирования устройства путем формирования выходных слов в любой заранее заданной (кодом входного слова) последовательности блок памяти выходных слов разбит на два канала - адресный и операционный. При Этом операционный канал содержит группу блоков памяти, в каждом,блоке которой хранится некоторое множество слогов выходных слов. Кроме того, разделение блока памяти на адресный и операционный каналы позволяет осуществить режим шаговой интерпретации, при котором возможен процесс преобразова 1ия слов входного языка не всех путей (участков) преобразования, а только одного из них. в соответствии с дешифрированным адресом с выходов блока 1 памяти по тактовому импульсу с второго вьпсода генератора 1 1 в регистры 7 заносятся адреса слогов первого выходного слова (при преобразовании режима Один в несколько). С группы блоков 2 памяти сосчитаны коды слогов выходного слова. По приходу тактового импульса с третьего выхода генератора 11 слоги выходного слова заносятся в регистр 6 .выдачи с которого сформированное выходное слово поступает на выход 15 устройства. Очередное выходное слово может быть либо выходньш словом линей ной последовательности слов, либо его адрес зависит от некоторых уело ВИЙ, определяющих процесс преобра-зованйя. Кроме того, возможен режим преобразования Один к одному в котором входному слову соответствует одно выходное слов. При реализации этого режима одновременно с выдачей адресов .слогов выходного слова выдается метка-признак (например, с выхода блока 1 памяти) окончания преобразования входного слова. По этой метке-признаку с вхо да 12 устройства в регистр, 3 приема заносится очередное входное слово (не показано), и процесс преобразования продолжается. Если очередное выходное слово является выходным словом линейной последовательности то с выхода блока 1 памяти через . группу элементов ИЛИ 8 на информационньй вход регистра 5 поступает код адреса очередного выходного слова. По тактовому импульсу с выхода генератора- 11 происходит запись этого кода в регистр 5 адреса .начинается выборка информации из блока 1 памяти. С выходов блока 1 памяти на информационные входы регистров 7 поступают-коды адресов слогов очередного выходного слова. Тактовый импульс с второго выхода генератора 11 производит запись информации в регистры 7 и начинает ся выборка слогов из блоков 2 памя ти. Тактовый импульс с третьего выхода генератора 11 осуществляет запись слогов в регистр 6 выдачи, где происходит формирование очеред ного выходного слова и вьщача его на выход 15 устройства. Если очередное выходное слово я ляется словом, после которого процесс преобразования идет по оцному из возможных путей, определяемому некоторыми условиями, то с выхода блока 1 памяти одновременно с выдачей адреса слогов сосчитывается косвенный адрес, с другого выхода код логического условия, определяющий ход преобразования. С выхода блока 1 памяти код проверяембго .условия заносится в регистр 4. Код проверяемого условия на сумматорах по модулю два модифицируется логическими условиями, поступающими с входа 13 устройства. В результате модификации косвенного адреса на входах регистра 5 адреса образуется адрес очередного слова, определяющего дальнейший процесс преобразования слов входного языка в слова выходного языка. Далее устройство функционирует аналогично. В конце преобразования триггер IО переходит в нулевое состояние (не , показано) , и работа устройства прекращается. Таким образом, в предлагаемом устройстве выходное слово У представляется в виде-композиции - (п1,,т2).-м ri) 5 гдет|(1,У1) - слоги выходного слова, хранимые в отдельных блоках (БИС) памяти. Например, для выходного слова, состоящего из четырех слогов, имеем Y + (m5 , где знак + означает операцию сериализации отдельных слогов., т.е. последовательного их составления; ,И - номер i -го слога. Выборка отдельных слогов и формирование из них выходных слов позволяет увеличить гибкость формируемого базиса слов вькодного языка. Если в известном устройстве производится выборка полностью всего выходного слова длиной Y и всего может быть сфорг ировано N выходных слов, то в предлагаемом могут быть сформированы одно-, двух-,...,П-слоговые выходные слова. Набор выходньпс слов при Мколичестве слогов -го типа(1 l,i) , где п - набор слогов, образующих выходное слово, составляет V J-N. Очевидно, что VJj VJn. При М 8 и ft 4 имеем Wj 8 и Wg 4096. Тогда 4096 i.W Таким образом, разделение вькодНых слов на отдельные слоги, хране13618312ние их в отдельных блоках, памяти и за счет этого их произвольная выборка позволяют увеличить гибкость фор- мируемого базиса слов выходного языка, а следовательно, и область целесообразного применения устройства.
название | год | авторы | номер документа |
---|---|---|---|
Устройство для аппаратурной трансляции | 1983 |
|
SU1144108A1 |
Устройство для преобразования кодов с одного языка на другой | 1984 |
|
SU1238104A1 |
Устройство для аппаратурной трансляции языков программирования | 1985 |
|
SU1270766A1 |
Устройство для преобразования кодов с одного языка на другой | 1985 |
|
SU1283797A1 |
Устройство для преобразования кодов с одного языка на другие | 1987 |
|
SU1453416A1 |
Устройство для преобразования языков | 1983 |
|
SU1111176A1 |
Устройство для трансляции кодов с одного языка на другой | 1985 |
|
SU1283798A1 |
Устройство для формирования периодических функций | 1987 |
|
SU1441391A1 |
Микропрограммное устройство управления | 1983 |
|
SU1108448A1 |
Устройство для аппаратурной трансляции | 1984 |
|
SU1164736A1 |
УСТРОЙСТВО ДЛЯ ПРЕОБРАЗОВАНИЯ КОДОВ С ОДНОГО ЯЗЫКА НА ДРУГОЙ, содержащее блок памяти, регистр приема, регистр-вьщачи, группу элементов ИЛИ, триггер пуска, генератор тактовых импульсов, причем вход входного слова устройства соединен с информационньм входом регистра приема, вход пуска устройства соединен с единичным входом триггера пуска, единичный выход которого соединен с входой генератора тактовых импульсов, выходы разрядов регистра вьщачи являются выходами выходных слов устройства, отличающееся тем, что, с целью расширения функциональных возможностей за счет повьшения гибкости формируемого базиса слов выходного языка, в него введены регистр условий, регистр адреса, группа элементов суммы по модулю два. группа регистров адреса, группа-блоков памяти, причем вход условий прог цесса преобразования соединен с первыми входами элементовсуммы по модулю два группы, выходы которьк соединены с первым .информационным входом регистра адреса, выходы разрядов регистра, адреса соединены с адресным входом блока памяти, выход кода следуницего адресного слова соединен с первыми входами элементов ИЛИ группы, выходы которых соединены с вторым информационным входом регистра адреса, выход кода проверяемых условий блока памяти соединен с информационным входом регистра, уелоВИЙ, выходы разрядов которого сое(Л динены соответственно с вторьми входами &лементов суммы по модулю два с группы, первый В-тход генератора тактовых импульсов соединен с синхронизирующим входом регистра адреса, выходы кодов адресов слогов выходных слов блока памяти соединены с соот-; |Ветствушщими информационными входа00 ми регистров адреса, группы, выходы 0) разрядов которых соединены с адресными входами блоков памяти группы, 00 зторой выход генератора тактовых имсо пульсов соединен с синхронизирующими входами регистров адреса группы,. выходы блоков памяти группы соединены с соответствующими информационными входами регистра вьщачи, синхронизирующий вхрд которого соединен с третьим выходом генератора тактовьЛ импульсов, выходы разрядов регистра приема соединены с вторыми вх дaми элементов ИЛИ группы.
Печь для непрерывного получения сернистого натрия | 1921 |
|
SU1A1 |
Устройство для преобразования кодов с одного языка на другой | 1977 |
|
SU631931A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Аппарат для очищения воды при помощи химических реактивов | 1917 |
|
SU2A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Переносная печь для варки пищи и отопления в окопах, походных помещениях и т.п. | 1921 |
|
SU3A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1985-01-23—Публикация
1983-10-18—Подача