Завантажити PDF файл.

Формула / Реферат

1. Синтаксичний аналізатор, який має у своєму складі блок керування, двійковий лічильник, блок порівняння, блок пам'яті, який відрізняється тим, що містить керуючий вхід, вхід "Скидання", другий двійковий лічильник, елемент АБО, чотири інформаційні виходи, причому керуючий вхід з'єднаний з першим входом блока керування, вхід "Скидання" з'єднаний з другим входом блока керування та входами "Скидання" двійкових лічильників, перший вихід блока керування з'єднаний з підсумовувальним входом першого двійкового лічильника, виходи якого з'єднані з адресними входами блока пам'яті, другий вихід блока керування з'єднаний з першим інформаційним виходом, виходи блока пам'яті з'єднані з входами блока порівняння, перший вихід блока порівняння з'єднаний з підсумовувальним входом другого двійкового лічильника, другий вихід блока порівняння з'єднаний з віднімаючим входом другого двійкового лічильника, третій вихід блока порівняння з'єднаний з третім входом блока керування та другим інформаційним виходом, вихід позики другого двійкового лічильника з'єднаний з третім інформаційним виходом та четвертим входом блока керування, виходи другого лічильника з'єднані з відповідними входами елемента АБО, вихід якого з'єднаний з четвертим інформаційним виходом.

2. Синтаксичний аналізатор за п. 1, який відрізняється тим, що блок керування містить чотири входи блока, два виходи блока, генератор імпульсів, елемент І, тригер, елемент АБО, причому перший вхід блока з'єднаний з першим входом елемента І, вихід генератора імпульсів з'єднаний з другим входом елемента І, вихід тригера з'єднаний з третім входом елемента І, другий вхід блока з'єднаний з одиничним входом тригера, третій вхід блока та четвертий вхід блока з'єднані з входами елемента АБО, вихід якого з'єднаний з нульовим входом тригера, вихід елемента І з'єднаний з другим виходом блока.

3. Синтаксичний аналізатор за п. 1, який відрізняється тим, що блок порівняння містить групу інформаційних входів, три виходи блока, три групи входів кодів лексем, три схеми порівняння, причому група інформаційних входів з'єднана з першими групами входів схем порівняння, перша група входів кодів лексем з'єднана з другою групою входів першої схеми порівняння, друга група входів кодів лексем з'єднана з другою групою входів другої схеми порівняння, третя група входів кодів лексем з'єднана з другою групою входів третьої схеми порівняння, вихід першої схеми порівняння з'єднаний з першим виходом блока, вихід другої схеми порівняння з'єднаний з другим виходом блока, вихід третьої схеми порівняння з'єднаний з третім виходом блока.

Текст

1. Синтаксичний аналізатор, який має у своєму складі блок керування, двійковий лічильник, блок порівняння, блок пам'яті, який відрізняється тим, що містить керуючий вхід, вхід "Скидання", другий двійковий лічильник, елемент АБО, чотири інформаційних виходи, причому керуючий вхід з'єднаний з першим входом блока керування, вхід "Скидання" з'єднаний з другим входом блока керування та входами "Скидання" двійкових лічильників, перший вихід блока керування з'єднаний з підсумовуючим входом першого двійкового лічильника, виходи якого з'єднані з адресними входами блока пам'яті, другий вихід блока керування з'єднаний з першим інформаційним виходом, виходи блока пам'яті з'єднані з входами блока порівняння, перший вихід блока порівняння з'єднаний з підсумовуючим входом другого двійкового лічильника, другий ви хід блока порівняння з'єднаний з віднімаючим входом другого двійкового лічильника, третій вихід блока порівняння з'єднаний з третім входом блока керування та другим інформаційним виходом, вихід позики другого двійкового лічильника з'єднаний з третім інформаційним ви A (54) СИНТАКСИЧНИЙ АНАЛІЗАТОР 38734 Найбільш близьким до запропонованого є синтаксичний аналізатор, якій містить вхідний регістр, дешифратор лексичних одиниць, блок керування, дешифратор, блок пам'яті, дешифратор пріоритетів, буферний регістр, двійковий лічильник, дешифратор аксіоми (а. с. СРСР № 1334149, кл. G 06 F 11/00). Недоліком відомого синтаксичного аналізатора є велика складність схеми пристрою. В основу винаходу поставлено задачу створити синтаксичний аналізатор, в якому нові елементи і відповідні взаємозв'язки дозволили б виконувати синтаксичний аналіз з меншими апаратними витратами. Поставлене завдання вирішується тим, що синтаксичний аналізатор, що містить блок керування, двійковий лічильник, блок порівняння, блок пам'яті, згідно з винаходом, має у своєму складі керуючий вхід, вхід "Скидання", другий двійковий лічильник, елемент АБО, чотири інформаційних виходи, причому керуючий вхід з'єднаний з першим входом блока керування, вхід "Скидання" з'єднаний з другим входом блока керування та входами "Скидання" двійкових лічильників, перший вихід блоку керування з'єднаний з підсумовуючим входом першого двійкового лічильника, виходи якого з'єднані з адресними входами блоку пам'яті, другий вихід блоку керування з'єднаний з першим інформаційним виходом, виходи блоку пам'яті з'єднані з входами блоку порівняння, перший вихід блоку порівняння з'єднаний з підсумовуючим входом другого двійкового лічильника, другий вихід блоку порівняння з'єднаний з віднімаючим входом другого двійкового лічильника, третій вихід блоку порівняння 6 з'єднаний з третім входом блоку керування та другим інформаційним виходом, вихід позики другого двійкового лічильника з'єднаний з третім інформаційним виходом та четвертим входом блоку керування виходи другого лічильника з'єднані з відповідними входами елемента АБО, вихід якого з'єднаний з четвертим інформаційним виходом. Поставлене завдання вирішується також тим, що блок керування містить чотири входи блоку, два ви ходи блоку, генератор імпульсів, елемент І, тригер, елемент АБО, причому перший вхід блоку з'єднаний з першим входом елемента І, вихід генератора імпульсів з'єднаний з другим входом елемента І, вихід тригера з'єднаний з третім входом елемента І, другий вхід блоку з'єднаний з одиничним входом тригера, третій вхід блоку та четвертий вхід блоку з'єднаний з входами елемента АБО, ви хід якого з'єднаний з нульовим входом тригера, вихід елемента І з'єднаний з другим виходом блоку. Поставлене завдання вирішується також тим, що блок порівняння містить групу інформаційних входів, три ви ходи блоку, три гр упи входів кодів лексем, три схеми порівняння, причому група інформаційних входів з'єднана з першими групами входів схем порівняння, перша група входів кодів лексем з'єднана з другою гр упою входів схеми порівняння, друга група входів кодів лексем з'єднана з другою гр упою входів схеми порівняння, третя група входів кодів лексем з'єднана з другою групою входів схеми порівняння, вихід першої схеми порівняння з'єднаний з першим виходом блоку, вихід другої схеми порівняння з'єднаний з другим виходом блоку, ви хід третьої схеми порівняння з'єднаний з третім виходом блоку. На фіг. 1 представлена функціональна схема синтаксичного аналізатора. На фіг. 2 представлена функціональна схема блоку керування. На фіг. 3 представлена функціональна схема блоку порівняння. Синтаксичний аналізатор містить керуючий вхід 1, вхід "Скидання" 2, блок керування 3, двійковий лічильник 4, блок пам'яті 5, блок порівняння 6, другий двійковий лічильник 7, елемент АБО 8, чотири інформаційних виходи 9, 10, 11, 12. Елементи схеми пристрою з'єднані таким чином. Керуючий вхід 1 з'єднаний з першим входом блока керування 3, вхід "Скидання" 2 з'єднаний з другим входом блока керування 3 та входами "Скидання" двійкових лічильників 4 та 7, перший вихід блоку керування 3 з'єднаний з підсумовуючим входом першого двійкового лічильника 4, виходи якого з'єднані з адресними входами блоку пам'яті 5, другий ви хід блоку керування з'єднаний з першим інформаційним виходом 9, виходи блоку пам'яті 5 з'єднані з входами блоку порівняння 6, перший вихід блоку порівняння 6 з'єднаний з підсумовуючим входом другого двійкового лічильника 7, другий вихід блоку порівняння 6 з'єднаний з віднімаючим входом другого двійкового лічильника 7, третій вихід блоку порівняння 6 з'єднаний з третім входом блоку керування 3 та другим інформаційним виходом 10, вихід позики другого двійкового лічильника з'єднаний, з третім інформаційним виходом 11 та четвертим входом блоку керування 3 виходи др угого лічильника з'єднані з відповідними входами елемента АБО 8, вихід якого з'єднаний з четвертим інформаційним виходом 12. Блок керування 3 містить чотири входи блоку 13, 14, 15, 16, два ви ходи блоку 17, 18, генератор імпульсів 19, елемент І 20, тригер 21, елемент АБО 22. Елементи блоку керування 3 з'єднані таким чином. Перший вхід блоку 13 з'єднаний з першим входом елемента І 20, вихід генератора 19 імпульсів з'єднаний з другим входом елемента І 20, вихід тригера 21 з'єднаний з третім входом елемента 20, другий вхід блоку 14 з'єднаний з одиничним входом тригера 21, третій вхід блоку 15 та четвертий вхід блоку 16 з'єднаний з входами елемента АБО 22, вихід якого з'єднаний з нульовим входом тригера 21, вихід елемента І 20 з'єднаний з другим виходом блоку 18. Блок порівняння 6 містить групу інформаційних входів 23, три виходи блоку 24, 25, 26, три групи входів кодів лексем 27, 28, 29, три схеми порівняння 30, 31, 32. Елементи блоку порівняння з'єднані таким чином. Група інформаційних входів 23 з'єднана з першими групами входів схем порівняння 30, 32, 32, перша група входів кодів лексем 27 з'єднана з другою групою входів схеми порівняння 30, друга група входів кодів лексем 28 з'єднана другою групою входів схеми порівняння 31, третя група входів кодів лексем 29 з'єднана з другою гр упою входів схеми порівняння 31, вихід першої схеми порів 2 38734 няння 30 з'єднаний з першим виходом блоку 24, вихід другої схеми порівняння 31 з'єднаний з другим виходом блоку 25, вихід третьої схеми порівняння 32 з'єднаний з третім виходом блоку 26. Всі елементи пристрою є стандартними елементами обчислювальної техніки і можуть бути виконані по будь-якій відомій схемі. Працює синтаксичний аналізатор таким чином. Контекстно вільна граматика - це різновид формальної граматики і є засобом формального представлення синтаксису і семантики природних і штучни х мов. Сукупність лексичних об'єктів в контекстно вільній граматиці задається двома класами (алфавітами) символів: термінальними (елементарні одиничні об'єкти) і нетермінальними. При синтаксичному аналізі контекстно вільної граматики здійснюється граматичний розбір і перевіряється правильність розташування дужок в реченні. У даному синтаксичному аналізаторі код лексеми "(" подається на групу входів 27 блоку порівняння, код лексеми ")" подається на групу входів 28 блоку порівняння, код лексеми "Кінець строки" подається на групу входів 29 блоку порівняння. Коди лексем речення, що аналізується, записані у блоку пам'яті 5 і поступають на перші групи входів схем порівняння. Якщо коди лексем співпадають із заданими, то на виходах відповідних схем порівняння формується сигнал "1". На вхід 2 "Скидання" подається сигнал "Скидання", що встановлює двійкові лічильники 4 та 7 у стан "0...0", а тригер 21 у стан "1". На керуючий вхід 1 подається сигнал "1", що відкриває елемент 20 І і імпульси з виходу генератора 19 проходять на вихід 18 блоку керування 3 і змінюють стан першого двійкового лічильника 4, при цьому з блоку пам'яті 5 код відповідної лексеми поступає на входи блоку порівняння 6, який здійснює аналіз кодів лексем. Якщо лексема "(", то двійковий лічильник 7 збільшує стан на одиницю, а якщо лексема ")", то зменшує на одиницю. Якщо у процесі роботи кількість лексем ")" більше, ніж кількість лексем "(", тоді на виході позики двійкового лічильника 7 формується сигнал "1", який встановлює тригер 21 у стан "0", і елемент 20 І закривається, на виході 9 формується сигнал "0", що свідчить про закінчення процесу аналізу, а значення сигналу "1" на виводі 11 свідчить про некоректність речення. Якщо лексема, що аналізується "Кінець строки", тоді на виході 10 формується сигнал "1", який переводить тригер 21 у стан "0", тобто відключає генератор 19 та зупиняє роботу пристрою. Якщо речення некоректне, тобто кількість лексем "(" більше, ніж кількість лексем ")", тоді на виході 12 сигнал "1", а якщо коректне - тоді сигнал "0". Таким чином, пристрій проводить синтаксичний аналіз та інформує про результати аналізу. Порівняння даного пристрою та прототипу показує, що він має меншу кількість елементів, тобто вирішує задачу синтаксичного аналізу з меншою складністю і його застосування надасть ефект. Фіг. 1 3 38734 Фіг. 2 Фіг. 3 __________________________________________________________ ДП "Український інститут промислової власності" (Укрпатент) Україна, 01133, Київ-133, бульв. Лесі Українки, 26 (044) 295-81-42, 295-61-97 __________________________________________________________ Підписано до друку ________ 2001 р. Формат 60х84 1/8. Обсяг ______ обл.-вид. арк. Тираж 50 прим. Зам._______ ____________________________________________________________ УкрІНТЕІ, 03680, Київ-39 МСП, вул. Горького, 180. (044) 268-25-22 ___________________________________________________________ 4

Дивитися

Додаткова інформація

Назва патенту англійською

Syntactic analyzer

Автори англійською

Chumachenko Ihor Volodymyrovych

Назва патенту російською

Синтаксический анализатор

Автори російською

Чумаченко Игорь Владимирович

МПК / Мітки

МПК: G06F 17/27

Мітки: аналізатор, синтаксичний

Код посилання

<a href="https://ua.patents.su/4-38734-sintaksichnijj-analizator.html" target="_blank" rel="follow" title="База патентів України">Синтаксичний аналізатор</a>

Подібні патенти