Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Топ:
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Эволюция кровеносной системы позвоночных животных: Биологическая эволюция – необратимый процесс исторического развития живой природы...
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Интересное:
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
| Новая конструкция | Значение | Примечание | |
| Лексика | Number = digit {digit} | целое | Новая область данных |
| Синтаксис | атом = Number | Встраивание новой обла- сти в систему понятий ЯП | |
| Семантика | (SUM x y) | (x + y) | Добавление операций над новыми данными |
| (DIF x y) | (x – y) | ||
| (MUL x y) | (x * y) | ||
| (DIV x y) | (x / y) | ||
| (ADD1 x y) | (x + 1) | ||
| (MIN1 x y) | (x – 1) | ||
| (NUMBER x) | NIL или T | Предикат, выделяющий числа |
|
LD – ввод данного из контекста в стек промежуточных значений; LDC – ввод константы из программы в стек;
LDP – ввод определения процедуры; LDW – ввод числа из памяти в стек;
STW – сохранение значения в глобальной памяти; STE – сохранение значения в локальном контексте;
RET – возврат из процедуры к вызвавшей ее программе;
IF – ветвление в зависимости от активного (верхнего) значения стека; EQ – равенство двух верхних значений стека;
LT – верхнее значение в стеке меньше, чем второе; INC – увеличение числа на 1;
DEC – уменьшение числа на 1;
|
DIV – частное от деления верхнего элемента стека на второй элемент; BR – безусловная передача управления по абсолютному адресу;
AP – применение процедуры к аргументам, расположенным в стеке; STOP – останов.
Для реализации компилятора АМ расширена добавлением экстракодов ввода-вывода:
WR – вывод значения из памяти на внешнее устройство; RD – ввод значения в память из внешнего устройства.
|
Машина SECM, как и SECD, работает над четырьмя регистрами: стек для промежуточных значений, контекст для размещения аргументов, локальных значений переменных и регистра возврата, управляющая вычислениями про- грамма, память (Stack, Environment, Control program, Memory). Регистры S E C приспособлены для хранения данных в форме векторов, не пересекаю- щихся по фактическим адресам. Память, доступная через регистры S E C, расположена в памяти, доступной через регистр M. Состояние машины пол- ностью определяется содержимым этих регистров. Поэтому функционирова- ние машины можно описать достаточно точно в терминах изменения содер- жимого регистров при выполнении команд, что выражается следующим об- разом:
s e c m → s' e' c' m' – переход от старого состояния к новому.
Теперь мы можем методично описать эффекты всех перечисленных выше команд.
s e (LDC q. c) m p → (q. s) e c m p
(a. s) e (INC. c) m p → (a+1. s) e c m p
(a. s) e (DEC. c) m p → (a-1. s) e c m p
(a b. s) e (ADD. c) m p → (a+b. s) e c m p
(a b. s) e (SUB. c) m p → (a-b. s) e c m p
(a b. s) e (MUL. c) m p → (a*b. s) e c m p
(a b. s) e (DIV. c) m p → (a/b. s) e c m p
(a a. s) e (EQ. c) m p → (TRUE. s) e c m p
(a b. s) e (EQ. c) m p → (FALSE. s) e c m p
(a b. s) e (LT. c)m p → (t. s) e c m p8
(TRUE. s) e (IF ct cf. c) m p → s e (ct. c) m p
(FALSE. s) e (IF ct cf. c) m p → s e (cf. c) m p
|
[x] – содержимое памяти по адресу x;
e[n] – содержимое n-го элемента контекста; A(Pr) – число аргументов процедуры Pr;
L(Pr) – число локальных переменных процедуры Pr; @c – адрес позиции «c» в программе;
![]() |
8 t имеет значение «TRUE» или «FALSE».
_ – произвольное значение (_ подчерк).
s e (LDW x. c) m → ([x]. s) e c m
s e (LD n. c) m → (e[n]. s) e c m
(a. s) e (STW x. c) m → s e c (m[x]=a)
(a. s) e (STE x. c) m → s (e[x]=a) c m
s e (LDP @Pr. c) m → (@f L(Pr) A(Pr). s) e c m
(@Pr KL N a1... aN. s) e (AP. c) m → s ((KL+N) _... _ a1... aN @c. e) Pr m
s (K e1... eK p. e) (RET. c) m → () e p m
s e(BR @Pr. c) m → s e Pr m
|
|
Предстоящие шаги инкрементального, т. е. пошагового, процесса рас- крутки СП могут быть связаны с расширением типов обрабатываемых дан- ных, подключением удобных форматов управления вычислениями, специа- лизацией особых категорий функций, созданием программного инструмента- рия и т. д. до полного или практически достаточного покрытия ЯП его реализацией в СП.
Дальнейшее развитие СП заключается в пошаговом расширении спектра обрабатываемых данных и присоединении ВС до полного покрытия ЯП его реализацией в СП. Каждую новую область данных подключают к АМ как ком- плект подпрограмм, реализующий предикат для выяснения принадлежности данного новой области и операции обработки данных. ВС, как правило, могут быть определены в терминах самого ЯП с помощью средств его ядра.
Интеграция вспомогательной семантики новых компонент ЯП в ранее реализованную версию СП осуществляется комплексным включением ряда согласованных определений на всех уровнях определения ЯП:
– дописывание БНФ;
– добавление ветвей в определение интерпретатора;
– дополнение АМ новыми командами.
В случае SECM кроме образа БС фактически реализована работа с векто- рами и указателями (адреса в памяти). Поэтому реализационное замыка-
ние учебного концентра языка Pascal естественно будет включать в себя об- работку структур данных. Соответствующие, фактически поддержанные на уровне АМ, правила языка:
Данные = array of
AM: x[i]:= y
X:= y [i]
*x:= @y доступ по указателю к адресу.
|
Таблица 9
|
|
|
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!