Составители:
22
2.4. Программная реализация интерпретатора языка МИЛАН
Интерпретатор языка МИЛАН реализован на языке PHP. Назначение файлов
программной реализации языка МИЛАН приведено в таблице 7.
Таблица 7
Назначение файлов интерпретатора языка МИЛАН
Имя файла
Назначение
Интерфейс
interface.php
Главный файл. С него возможен запуск выполнения
программы.
Отображает поле для выбора файла, содержащего исходный
текст на языке МИЛАН, а также текстовую область, в которую
загружается выбранный файл с возможностью редактирования.
pole.php
Содержит в себе поле выбора файла для загрузки.
Отправляет имя файла на обработку в скрипт interface.php
Интерпретатор
milan.php
Содержит в себе функции для обеспечения связи между
интерфейсом и интерпретатором. Отвечает за выбор режима
работы интерпретатора и восстановление данных потерянных
при перезагрузке скрипта.
interpretator.php
Основной файл интерпретатора, содержащий все функции по
трансляции и интерпретации исходного кода языка МИЛАН.
Рассмотрим особенности программной реализации режимов работы
интерпретатора и проверки корректности ввода целого числа.
Описание режимов работы интерпретатора. Текущий режим работы
определяется значением скрытого поля «mode», расположенного на клиентской
форме. В зависимости от этого присваивается значение переменной
$ct_milanMode. Описание режимов работы интерпретатора приведено в
таблице 8.
Таблица 8
Режимы работы интерпретатора языка МИЛАН
Режим
работы
Описание
0
1) Выполняется только лексический анализатор.
2) В результате работы лексический анализатор на экран пользователя могут
выводиться: таблицы лексем, идентификаторов и констант; сообщение о лексиче-
ской ошибке.
3) Производится сохранение таблиц лексем (в скрытые поля формы «lex_code»,
«lex_value»), идентификаторов (в скрытое поле «tab_ident») и констант (в скрытое
поле «tab_const»).
1
1) Восстанавливаются таблицы лексем, идентификаторов и констант, сохра-
нённые в скрытых полях формы.
2) Выполняется стадия синтаксического анализа, совмещенная с интерпретацией.
3) При выполнении команды «READ» производится генерация html страницы с
полем ввода «stdin» и кнопкой отправки запроса. Также на сгенерированной html
странице в скрытых полях производится сохранение таблиц (аналогично пункту 3
режима 0. В поле с именем «readbuf», располагается массив данных, полученных с
помощью команды «READ», на протяжении всей работы интерпретатора.
2.4. Программная реализация интерпретатора языка МИЛАН Интерпретатор языка МИЛАН реализован на языке PHP. Назначение файлов программной реализации языка МИЛАН приведено в таблице 7. Таблица 7 Назначение файлов интерпретатора языка МИЛАН Имя файла Назначение Интерфейс Главный файл. С него возможен запуск выполнения программы. interface.php Отображает поле для выбора файла, содержащего исходный текст на языке МИЛАН, а также текстовую область, в которую загружается выбранный файл с возможностью редактирования. Содержит в себе поле выбора файла для загрузки. pole.php Отправляет имя файла на обработку в скрипт interface.php Интерпретатор Содержит в себе функции для обеспечения связи между интерфейсом и интерпретатором. Отвечает за выбор режима milan.php работы интерпретатора и восстановление данных потерянных при перезагрузке скрипта. Основной файл интерпретатора, содержащий все функции по interpretator.php трансляции и интерпретации исходного кода языка МИЛАН. Рассмотрим особенности программной реализации режимов работы интерпретатора и проверки корректности ввода целого числа. Описание режимов работы интерпретатора. Текущий режим работы определяется значением скрытого поля «mode», расположенного на клиентской форме. В зависимости от этого присваивается значение переменной $ct_milanMode. Описание режимов работы интерпретатора приведено в таблице 8. Таблица 8 Режимы работы интерпретатора языка МИЛАН Режим Описание работы 1) Выполняется только лексический анализатор. 2) В результате работы лексический анализатор на экран пользователя могут выводиться: таблицы лексем, идентификаторов и констант; сообщение о лексиче- 0 ской ошибке. 3) Производится сохранение таблиц лексем (в скрытые поля формы «lex_code», «lex_value»), идентификаторов (в скрытое поле «tab_ident») и констант (в скрытое поле «tab_const»). 1) Восстанавливаются таблицы лексем, идентификаторов и констант, сохра- нённые в скрытых полях формы. 2) Выполняется стадия синтаксического анализа, совмещенная с интерпретацией. 3) При выполнении команды «READ» производится генерация html страницы с 1 полем ввода «stdin» и кнопкой отправки запроса. Также на сгенерированной html странице в скрытых полях производится сохранение таблиц (аналогично пункту 3 режима 0. В поле с именем «readbuf», располагается массив данных, полученных с помощью команды «READ», на протяжении всей работы интерпретатора. 22
Страницы
- « первая
- ‹ предыдущая
- …
- 20
- 21
- 22
- 23
- 24
- …
- следующая ›
- последняя »