SU807299A1 - Устройство дл синтаксическогоКОНТРОл пРОгРАММ - Google Patents

Устройство дл синтаксическогоКОНТРОл пРОгРАММ Download PDF

Info

Publication number
SU807299A1
SU807299A1 SU782618588A SU2618588A SU807299A1 SU 807299 A1 SU807299 A1 SU 807299A1 SU 782618588 A SU782618588 A SU 782618588A SU 2618588 A SU2618588 A SU 2618588A SU 807299 A1 SU807299 A1 SU 807299A1
Authority
SU
USSR - Soviet Union
Prior art keywords
register
input
output
grammar
block
Prior art date
Application number
SU782618588A
Other languages
English (en)
Inventor
Александр Анатольевич Гужавин
Олег Григорьевич Кокаев
Original Assignee
Ульяновский Политехнический Инсти-Тут
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ульяновский Политехнический Инсти-Тут filed Critical Ульяновский Политехнический Инсти-Тут
Priority to SU782618588A priority Critical patent/SU807299A1/ru
Application granted granted Critical
Publication of SU807299A1 publication Critical patent/SU807299A1/ru

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

1
Изобретение относитс  к использованию в вычислительной технике  зыков дл  представлени  программ и предназначено дл  проверки последовательностей символов, построенных по определенной совокупности правил, называемых грамматикой  зыка программировани  в форме диаграммы перехода (R - грамматики, PRS грамматики , US - грамматики),
Известны устройства синтаксического контрол , примен емые как субблоки устройств подготовки данных и ввода программ в ЭВМ 1 и
Недостатком известных устройств  вл етс  низкое быстродействие, которое объ сн етс  необходимостью полного ПЕЭребора синтермов в фиксированном множестве правил грамматики контролируемой программы..
Наиболее близким по технической сущности к предлагаемому  вл етс : устройство, содержащее входной регистр провер емой программы, вспомогательный регистр, долговременную и стекрвую пам ти, регистр адреса, выходной регистр и схему сравнени .
В этом устройстве очередной провер емый символ (терм) программы поступает на входной регистр. Затем
из первой части долговременной пам ти по адресу, указанному в регистре адреса считываетс  соответствуннций этому терму синтерм (обобщенный символ соответствующий целому синтаксическому классу термов), который записываетс  на вспомогательный регистр, после чего из второй части.долговременной Пс1м ти считываетс  синтерм из
0 фиксированного подмножества правил грс1мматики  зыка и записываетс  на выходной регистр, после чего производитс  сравнение содержимых выходного и всп  4огательного регистров
5 на схеме сравнени . Если сравнение произошло, то анализируетс  следующий, символ программы, в противном случае, на выходной регистр поступает следугаций синтерм фиксированного подмножества правил грамматики и вновь производитс  сравнение содержимого выходного и вспомогательного регистров . В том случае, если это фиксированное подмножество правил гракмати5 ки исчерпано, а сравнение не произошло , выдаетс  сигнал синтаксической ошибки з.
Однако така  организаци  процесса контрол  приводит к значительным
Q затратам времени. Цель изобретени  - повьииение быст родействи  , т.е. уменьшение времени синтаксического контрол  программ. Поставленна  цель достигаетс  тем, что в устройство дл  синтаксического контрол  программ, содержащее входной регистр, блок долговреме , ной пам ти, блок сравнени , выходной регистр, регистр адреса, блок индикации и блок стековой пам ти, причем первый вход входного регистра  вл етс  входом устройства, выход регист ра адреса соединен со входом блока долговременной пам ти, выход которого соединен с первым входом выходног регистра, первый выход выходного регистра соединен с первымвходом блока сравнени , первый и второй выход которого соединен соответственно со вторым входом выходного ре гистра, с первым входом блока индика ции, выхсй блока стековой пам ти сое динен со вторым входом блока сравнени , введен блок ассоциативной долго временной пам ти и дешифратор опера ций, причем выход входного регистра соединен со входом блока ассоидаативной долговременной пам ти, выход которого соединен со входом регистра адреса, первый и второй вьгходы регис ра адреса соединены соответственно с первым входом входного регистра, со вторым входом блока индикации, второй и третий выходы выходного регистра соединены соответственно со вторым входом входного регистра, со входом дешифратора операций, выход которого соединен со вторым входом блока стековой пам ти. На фиг. 1 представлена блок-схема ассоциативного устройства дл  контрол  программ; а на фиг. 2 - F, G - массивы грамматики алгоритмического  зыка. Устройство содержит вход 1, входной регистр 2, блок 3 ассоциативной долговременной пам ти, регистр 4 адреса, блок 5 долговременной пам ти , выходной регистр б, дешифратор 7 операций, блок 8 сравнени , блок 9 стековой пам ти и блок 10 индикации. Грамматика  зыка, записанна  в блоке 3 ассоциативной долговременной пам ти и в блоке 5 долговременной пам ти, содержит два основных массива F и 6, Массив F представл ет собой таблицу соответстви  термов и синтермов, размещаетс  только в бло ке 3 и занимает п( logj, К -«-Оод а п бит, где п - число термов, а К - чис ло синтермов в алгоритмическом . G - массив состоит из п ти подмас сивов G , 6-2, 65, G, Gj, расположенных вертикально, причем горизонтальное сечение всех подмассивов . рбразует одно правило грамматики, Вва из них - G и G занимают одно слово в блоке 3, а три других - G , i Сд и Gj соответствующее слово в блоке 5. G. содержит ассоциативный признак подмножества правил грамматики и занимает flog j г бит, где ,г - общее число подмножеств правил в грамматике данного алгоритмического  зыка; G 2 содержит код синтерма и занимает flog 2 к бит; GJ - содержит ассоциативный признак подмножества правил-приемников дл  подмножества с признаком указанным в G и занимает log, г бит;G . - содержит код операции со стековой пам тью и занимает ;2 бита; Gj - содержит операнд операции с кодом указанным в G и занимает р од 2. г бит. Горизонтальное сечение G - массива в общем составл ет 3 logg г + + ft 092 К 1 -f 2 бит, а весь G - массив L(3Uog2r + logg ) бит, где L- длина всего массива G, т.е. количество правил в грамматике алгоритмического  зыка. Общий объемпам ти под массивы Г и G составит п( logj к + bog-i п) + 1(3 у од 2 г + logj К + 2) . Причем на долю блока 3 приходитс  п ( log 2 к + logo п) + + Ь (logj rj + log 2 К), . а на долю блока 5 соответственно 2L( log 2 г + 1) бит. Работа устройства происходит следующим образом. В исходном состо нии стекова  пам ть свободна. На входном регистре 2, состо щем из двух частей, в первой части, содержащей log2 г разр дов записан ассоциативный признак начального подмножества правил грамматики , а на вторую часть, содержащую {log2 п разр дов в первом такте работы устройства по входу 1 подаетс  первый символ (терм) провер емой программы, в первом такте работы участвует только втора  часть входного регистра 2. Поступивший на нее терм служит ассоциативным признаком дл  поиска в массиве F и во врем  первого такта из блока 3 с помощью ассоциативной выборки считываетс  соответствующий данному терму синтерм, который с выхода регистра 4 адреса поступает вновь на входной регистр, замен   собой наход щийс  там терм. Таким образом,к концу первого такта работы на регистре 2 комбинаци  ассоциативный признак текущего подмножества правил грамматики + + терм преобразуетс  к виду ассоциативный признак текущего подмножества правил, грамматики + синтерм. Так происходит в том случае, если сравнение произошло и дл  поступившего терма найдетс  соответствующий
ему синтерм. В противном случае, если сигнал на выхода регистра 4 адреса равен О с инверсных выходов регистра 4 адресов на блок 10 индикации поступает сигнал, соответствующий ошибке типа недопустимый символ в провер емой программе.
В случае отсутстви  с иибок в слёдукнцем такте работы содержимое обоих частей регистра 2 служит признаком дл  ассоциативного поиска соответствующего синтерма в фиксированном подмножестве правил грамматики, т.е подмассивах G и Gg- Если указанные коды совпали , то на регистре 4 возникает код возбуждени  дл  блока 5 долговременной пам ти, по которому из блока 5 на выходной регистр б будут выданы кеды 0, G и G. В противном случае, если сигнал на выходе регистра равен нулю, с инверсных выходов регистра 4 на блок 1О поступает сигнал, соответствующий ошибке типа недопустимое сочетание допустимых символов в провер емой программе.
В случае отсутстви  сидибок код G поступает на дешифратор 7 операдии . Если код G означает пустую юперацшй, то код G2пepeпиcывaeтc  в первую часть регистра 2/ если код IG означает запись в сток, то в |верхнюю  чейку блока 9 стековой:пам ти производитс  запись кода Gg, после чего код G переписываетс  в первую часть регистра 2, если код GA означает чтение иЗ:стека, то из верхней  чейки стековой пам ти на блок 8 сравнени  подаетс  код, который сравниваетс  в блоке 8 с кодом Gf. В случае их совпадени  сигнал с выходов блока 8 переписывает код Gj в первую часть регистра 2, а содержимое верхней  чейки стековой пам ти удал етс . В противном случае символ с инверсных выходов блока 8 поступает в блок 10, что соответствует ошибке типа нарушение скобочной структуры в провер емой программе (например не дл  всех begin имеютс  соответствующие end).
В случае отсутстви  с аибок код G э всегда переписываетс  с выходнрго регистра б на входной регистр 2, подготавлива  устройство к приему следук цего терма, и описанные выше действи  производ тс  с новым фи;ксированкйм подмножеством правил грамматики , ассоциативный признак которого и представл етс  кодом 0.
Таким Образом длительность поиска в массиве F и G в предлагаемом устройстве не зависит .от размеров этих массивов- и  вл етс  величиной посто нной.
Предлагаемое устройство дл  синтаксического контрол  программ обладает быстродействием в 1,5 раза большим, чем известное.
10

Claims (3)

1.Авторское свидетельство СССР 247628, кл. о Об F 11/00, 1970.
2.Аззторское свидетельство СССР № 333558, кл. G Об F 11/00.
3. Авторское свидетельство СССР 328460, кл. G 06 F 11/00, 1970 (прототип).
SU782618588A 1978-05-22 1978-05-22 Устройство дл синтаксическогоКОНТРОл пРОгРАММ SU807299A1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU782618588A SU807299A1 (ru) 1978-05-22 1978-05-22 Устройство дл синтаксическогоКОНТРОл пРОгРАММ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU782618588A SU807299A1 (ru) 1978-05-22 1978-05-22 Устройство дл синтаксическогоКОНТРОл пРОгРАММ

Publications (1)

Publication Number Publication Date
SU807299A1 true SU807299A1 (ru) 1981-02-23

Family

ID=20765852

Family Applications (1)

Application Number Title Priority Date Filing Date
SU782618588A SU807299A1 (ru) 1978-05-22 1978-05-22 Устройство дл синтаксическогоКОНТРОл пРОгРАММ

Country Status (1)

Country Link
SU (1) SU807299A1 (ru)

Similar Documents

Publication Publication Date Title
US3949379A (en) Pipeline data processing apparatus with high speed slave store
IT1063722B (it) Matrice di riferimento digitale per la verifica di parole particolarmente per dispositivi di elaborazione di dati
KR860008500A (ko) 데이터 처리장치
US4376977A (en) Computer system with scannable program memory
JPS6359660A (ja) 情報処理装置
KR910003488A (ko) 짧은 명령실행시간과 작은 점유면적을 갖는 가변 워드길이 명령시스템용 데이타 처리장치
SU807299A1 (ru) Устройство дл синтаксическогоКОНТРОл пРОгРАММ
GB1529644A (en) Data display system designed as a microcontroller
US4873628A (en) Command translating computer
JPS5830618B2 (ja) デンシジテン
KR940022305A (ko) 번역장치
JP2792147B2 (ja) 文字処理方法およびその装置
SU1665389A1 (ru) Устройство дл синтаксического контрол
US4125879A (en) Double ended stack computer store
JPS586570A (ja) バツフアメモリ装置
JPH0638254B2 (ja) 仮名漢字変換装置
SU669356A1 (ru) Устройство дл синтаксического контрол программ
SU1765848A2 (ru) Ассоциативное запоминающее устройство
SU1553983A1 (ru) Устройство посто нной пам ти
SU1327112A1 (ru) Устройство дл отладки программ
SU377774A1 (ru) Устройство синтаксического анализа программ
SU333558A1 (ru)
JPH03118661A (ja) 単語検索装置
SU328460A1 (ru) УСТРОЙСТВО СИНТАКСИЧЕСКОГО КОНТРОЛЯ ПРОГРАМB^iBJii-IOTei-CA
SU765805A1 (ru) Устройство динамического преобразовани адресов