SU807299A1 - Устройство дл синтаксическогоКОНТРОл пРОгРАММ - Google Patents
Устройство дл синтаксическогоКОНТРОл пРОгРАММ Download PDFInfo
- 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
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 (прототип).
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) |
-
1978
- 1978-05-22 SU SU782618588A patent/SU807299A1/ru active
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) | Устройство динамического преобразовани адресов |