Программирование
<<  Карельский детский фольклор Введение в разработку под Kinect  >>
Картинок нет
Картинки из презентации «Разработка SQL компилятора для СУБД «ОМЕГА»» к уроку информатики на тему «Программирование»

Автор: 1. Чтобы познакомиться с картинкой полного размера, нажмите на её эскиз. Чтобы можно было использовать все картинки для урока информатики, скачайте бесплатно презентацию «Разработка SQL компилятора для СУБД «ОМЕГА».ppt» со всеми картинками в zip-архиве размером 259 КБ.

Разработка SQL компилятора для СУБД «ОМЕГА»

содержание презентации «Разработка SQL компилятора для СУБД «ОМЕГА».ppt»
Сл Текст Сл Текст
1Разработка SQL компилятора для СУБД 9конструкция как
«ОМЕГА». Докладчик Губин Максим <select–from–where>). Челябинск 2006
Владимирович Научный руководитель г. 9.
Соколинский Леонид Борисович. Челябинск 10Грамматика языка SQL? При
2006 г. 1. синтаксическом анализе проверяется цепочка
2Постановка задачи. Разработка SQL распознанных лексем на принадлежность
компилятора СУБД «ОМЕГА» Под компилятором множеству цепочек, порождаемых грамматикой
будем понимать программу, которая языка SQL?. Пример правил грамматики языка
преобразует цепочку входных символов, SQL? для синтаксической конструкции
введенных пользователем, в дерево <select-from-where>:
физических операций над данными СУБД <SFW>:=Select <ListAtribute>
«ОМЕГА». В работе можно выделить два From <ListForm> Where
направления: разработка компилятора, <ListCondition>;
который на входе принимает некоторую <ListAtribute>:=<Atribute>?<
строку запроса в терминах подмножества Atribute>,<Atribute>
языка SQL, на выходе имеет физический план <Atribute>:=<Identifier>?<I
выполнения запроса SQL; определение языка entifier>.<Form>
SQL', который является некоторым <ListForm>:=<Form>?<Form>
подмножеством языка SQL (точнее, можно ,<Form>
предположить, что язык SQL' имеет ряд <Form>:=<Identifier>
дополнительных ограничений наложенных на <ListCondition>:=<Condition>?(
язык SQL). Челябинск 2006 г. 2. lt;Condition>) And (<Condition>)
3Общая структура компилятора. Челябинск <Condition>:=<Atribute>=<Id
2006 г. 3. ntifier>?<Atribute>=<Atribute&
4Основные компоненты SQL компилятора t; <Identifier>:=ident?*. Челябинск
лексический анализатор – предназначен для 2006 г. 10.
выделения лексем из цепочки символов 11Реализация синтаксического разбора.
запроса, проверки их принадлежности одному При анализе цепочки лексем используется
из классов лексем и передачи их нисходящий метод разбора слева направо,
синтаксическому анализатору; т.е . Разбор осуществляется автоматом с
синтаксический анализатор – предназначен магазинной памятью (МП-автомат)
для распознавания синтаксической структуры R=(Q,V,Z,?,q0,z0,F), где Q – конечное
из представленных лексических композиций, множество состояний автомата; V – алфавит
и представления этой структуры в виде входных символов; Z – алфавит магазинных
дерева разбора или синтаксического дерева; символов автомата V?Z, ? – функция
препроцессор – предназначен для контроля переходов; q0 – начальное состояние
употребления имен отношений, имен автомата, q?Q; z0 – начальный символ
атрибутов и типов самих атрибутов; автомата, z?Z; F – множество конечных
генератор логического плана – предназначен состояний автомата, F?Q. Конфигурацию
для преобразования дерева разбора в МП-автомата можно описать в виде тройки
логический план выполнения запроса с (q,?,?) ?Q?V*?Z*, которая определяет
использованием набора операций реляционной состояние автомата q, цепочку еще не
алгебры; генератор физического плана прочитанных символов ? на входе автомата и
выполнения запроса – формирует физический содержание магазина (стека) ?. Начальная
план исполнения запроса в известных конфигурация определяется (q0,?,z0), ??V*,
физических операциях. Челябинск 2006 г. 4. множество конечных состояний автомата –
5Лексический анализатор. На входе (q,?,?), q?F, ??Z*. МП-автомат допускает
лексического анализатора (ЛА) имеется цепочку символов с опустошением магазина,
цепочка символов некоторого алфавита. если при окончании разбора цепочки автомат
Алфавит может содержать следующие символы: находится в одном из конечных состояний, а
английский алфавит – {A,B,C…Z,a,b,c…z}; стек автомата пуст. Челябинск 2006 г. 11.
арабские числа – {0,1,2,3..9}; разделители 12Прототипы основных функций,
– {_, ’, ., ;}; операторы отношений – реализующих семантический анализ. stack
{=,<,>,*}. На выходе ЛА содержаться stack_SemAn //организация стека для
лексемы. Определим основные классы лексем: МП-автомата tree tree_sinAn //дерево
константа (например: 1 или 1.55); синтаксического разбора char *terminal[]
идентификатор (перем1 или атрибут2); //список терминалов char *neterminal[]
строка (представляет произвольный набор //список нетерминалов char *first[][]
символов ограниченный кавычкой «‘»); //множество fist char *follow[][]
оператор «*»; точка «.»; запятая «,»; //множество follow struct Gram{
точка запятая «;»; пробел «_»; оператор //структура правил грамматики int id; char
отношения «=», «>», «<». Челябинск Rul[][];} int M[][] //таблица состояний
2006 г. 5. предикативного //синтаксического разбора
6Лексический анализатор строиться на int GetRul() //процедура чтения правил из
основе детерминированного конечного внешнего файла int spisokTerminalov()
автомата ДКА=(Q,V, ?,q0,F) , где Q – //определение списка терминалов из правил
конечное множество состояний автомата; V – int spisokNeTerminalov() //определение
конечное множество допустимых входных списка нетерминалов из правил int
символов; ? – функция переходов; q0 – oprTerm() //определение терминалов в
начальное состояние автомата, q?Q; F – лексемах void FindFirst() //определяем
множество конечных состояний автомата, множество FIRST () int FOLLOW()
F?Q. Детерминированный конечный автомат. //определяем множество FOLLOW() int
Челябинск 2006 г. 6. TablRazbora() //создание таблицы
7Матрица состояний ДКА. Челябинск 2006 синтаксического разбора int SinAn()
г. 7. ST. ST. ST. ST. ST. ST. ST. ST. ST. //синтаксический анализ. Челябинск 2006 г.
ST. ST. ST. ST. ST. ST. ST. CL - Классы 12.
символов. CL - Классы символов. CL - 13Препроцессор. Для определения
Классы символов. CL - Классы символов. CL действительности синтаксического дерева
- Классы символов. CL - Классы символов. разбора, необходимо выполнить контроль его
CL - Классы символов. CL - Классы следующих параметров: контроль
символов. CL - Классы символов. CL - употребления имен отношений, который
Классы символов. CL - Классы символов. CL определяет существование отношения,
- Классы символов. CL - Классы символов. зарегистрированного в текущей схеме
«’». «*». «/». «.». «,». «;». «=», «<», данных; контроль использования имен
«>». Начальное сост. Авт. Q0. . . . атрибутов и их разрешение, который
Цифры. Буквы. Пробел. Другой. 1. 2. 3. 4. определяет существование каждого атрибута
5. 6. 7. 8. 9. 11. 12. 0. 2. 1. 3. -4. -5. и его принадлежность одному из отношений
-6. -7. -8. -9. -11. -13. ident. 1. 1. 1. заявленных в синтаксическом дереве;
-11. -1. -1. -1. -1. -1. -1. 10. -1. контроль типов, который проверяет способ
constanta. 2. 2. 1. -11. -2. -2. 2. -2. использования каждого атрибута на
-2. -2. 10. -2. string. 3. 3. 3. -3. 3. 3. соответствие типу атрибута. При
3. 3. 3. 3. 3. 3. multiply. 4. 2. 1. 3. возникновении ошибки на любом из
-4. -5. -6. -11. -8. -9. 10. -11. div. 5. параметров контроля, формируется код
2. 1. -11. -11. -11. -11. -11. -8. -11. ошибки и передается управление системе
10. -11. point. 6. -11. 1. -11. -11. -11. обработки ошибок. Например, препроцессор
-11. -11. -11. -11. 10. -11. comma. 7. 2. может обнаружить использование атрибута с
-11. -11. -11. -11. -11. -11. -8. -11. 10. одинаковым именем в двух отношениях,
-11. spase. 8. 2. 1. 3. -4. -5. -6. -7. используемых при выборе в одном запросе.
-8. -9. 10. -13. point comma. 9. -11. -11. Челябинск 2006 г. 13.
-11. -11. -11. -11. -11. -8. -11. -11. 14Прототипы основных функций,
-11. other. 11. 10. 10. 10. 10. 10. -6. реализующих работу препроцессора. Int
-7. -8. -9. 10. -11. error. 12. -11. -11. existtable(char* name) //проверяем наличие
-11. -11. -11. -11. -11. -11. -11. -11. таблицы int existatribut(char* name)
-11. is. 13. 2. 1. 3. -11. -11. -11. -11. //проверяем наличие атрибута int
-8. -11. -11. -13. truetype() //проверяем соответствие типа.
8Основные прототипы процедур, Челябинск 2006 г. 14.
необходимых для работы ЛА: int D[13][12] 15Генератор логического плана. Генератор
//матрица состояний КА char *out[]= логического плана предназначен для
//классы лексем преобразования дерева разбора в логический
{"ident","constant",&q план выполнения запроса с использованием
ot;string","multiply"," набора операций реляционной алгебры. Для
div","point","comma&qu примера преобразования синтаксического
t;,"spase","point дерева разбора в логический план запроса,
comma","other","error& представленным выражениями реляционной
uot;,"is" }; struct tabLexAn{ алгебры, рассмотрим синтаксическую
//структура таблицы лексем int id; конструкцию <SFW>. Эта конструкция
//порядковый номер лексемы char name[]; состоит из трех реляционных операций: -
//имя лексемы(содержание) char *type;} декартова произведения ? всех отношений из
//тип лексемы void LexAn() //функция списка <FromList>; - оператора
выполнения лексического анализа. Челябинск выбора ?C из условия <Condition>; -
2006 г. 8. оператора проекции ?L соответствующего
9Синтаксический анализатор. Задача списку <AtributList>. Челябинск 2006
синтаксического анализатора состоит в г. 15.
преобразовании последовательности лексем в 16Пример. Если на входе мы имеем
дерево разбора (синтаксическое дерево). следующий подзапрос: Select Atr1, Atr2
Каждая вершина дерева разбора представляет From From1, Form2 Where Atr1=Atr2, то
одну из следующих сущностей: атомы – выражение реляционной алгебры имеет вид:
лексические единицы, такие как служебные Челябинск 2006 г. 16.
слова (например, SELECT), наименования 17Прототипы функций, реализующих
атрибутов или отношений, константы, скобки генерацию логического плана запроса. Tree
операторы и иные элементы; синтаксические tree_logplan //определение дерева
конструкции – группа лексем объединенных в логического плана char param[][]
конструкцию по некоторому устойчивому //определение дополнительных параметров
смыслу над этой группой (например, void create_logplan() //функция генерации
<SFW> это такая синтаксическая логического плана.
Разработка SQL компилятора для СУБД «ОМЕГА».ppt
http://900igr.net/kartinka/informatika/razrabotka-sql-kompiljatora-dlja-subd-omega-139241.html
cсылка на страницу

Разработка SQL компилятора для СУБД «ОМЕГА»

другие презентации на тему «Разработка SQL компилятора для СУБД «ОМЕГА»»

«Кислота омега» - Нарушается структура и функция эпителия слизистых и кожи. В последнее время проведены исследования, показывающие влияние ОМЕГА 3 и ОМЕГА 6 жирных кислот как модуляторов иммунной системы. Положительный эффект часто достигается при аллергических дерматитах. Эйкозапентаеновая и докозагексаеновая жирные кислоты, относящиеся к группе ОМЕГА 3, замедляют рост опухолей.

«Разработка сайтов» - 10 вопросов, чтобы понять, какой сайт нужен: Сколько денег есть? Где территориально находятся Ваши Клиенты? (География реализации товаров/услуг). Какие функциональные компоненты будут на сайте? Как часто предполагается менять информацию на сайте? Какую? 9. Какие сайты Вам нравятся? 6. Кто Ваши конкуренты?

«Разработка бизнес-плана» - Действующему. Содержание разделов бизнес-плана Анализ рисков. Типовые разделы бизнес-плана. Содержание разделов бизнес-плана Анализ отрасли и рынка. Состав, структура и объем бизнес-плана. Бизнес-планирование ? творческий процесс, требующий профессионализма и искусства. Содержание разделов бизнес-плана Описание компании.

«Методические разработки» - Технический труд» «Технология. Методическое обеспечение учащихся 5-7 класс (новинки -2008-2009 г.). Введение «Декоративное вязание крючком» «Декоративное вязание на спицах» Приложения Литература. Методическое обеспечение учащихся (тетради и учебники) 6 класс - девочки. Методические разработки (7 класс – 2-ой вариант).

«Разработка программ» - Компоновка - процесс формирования загрузочного модуля из нескольких объектных модулей. Выполняет трансляцию программа tasm.exe (tasm32.exe). Assembler. План темы: 2. Программное обеспечение для разработки программ на ассемблере. Трансляция - процесс формирования объектного модуля из текстового файла *.asm.

«Разработка раздела образовательной программы» - Приложения. Список литературы. Цели и задачи раздела. Система знаний и система деятельности. Критерии оценки методической разработки раздела образовательной и учебной программы. Ожидаемые результаты освоения раздела программы. Поурочное планирование по разделу. Разработка урока, наиболее полно представляющего специфику методики, реализуемой учителем.

Программирование

31 презентация о программировании
Урок

Информатика

130 тем
Картинки
900igr.net > Презентации по информатике > Программирование > Разработка SQL компилятора для СУБД «ОМЕГА»