Стандартные схемы: различия между версиями
KVN (обсуждение | вклад) Нет описания правки |
KEV (обсуждение | вклад) Нет описания правки |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
'''Стандартные схемы''' ([[Standard schemata | '''Стандартные схемы''' (''[[Standard schemata]]'') — схемы алголоподобных программ, исследование которых составляет основное содержание общей теории схем программ. | ||
В отличие от [[Схемы Мартынюка|схем Мартынюка]] стандартные схемы учитывают разбиение памяти на переменные и позволяют исследовать более широкий класс преобразований программ, включающий уже и такие преобразования, как, например, экономия общих подвыражений. | В отличие от [[Схемы Мартынюка|схем Мартынюка]] стандартные схемы учитывают разбиение памяти на переменные и позволяют исследовать более широкий класс преобразований программ, включающий уже и такие преобразования, как, например, экономия общих подвыражений. | ||
Строка 5: | Строка 5: | ||
Однако как подкласс [[Крупноблочная схема программ|крупноблочных схем]] стандартные схемы запрещают структурность операторов и переменных и, таким образом, моделируют лишь узкий класс | Однако как подкласс [[Крупноблочная схема программ|крупноблочных схем]] стандартные схемы запрещают структурность операторов и переменных и, таким образом, моделируют лишь узкий класс | ||
реальных программ. Каждый оператор в такой схеме является | реальных программ. Каждый оператор в такой схеме является | ||
либо [[преобразователь|''преобразователем'']] | либо [[преобразователь|''преобразователем'']] — оператором, изменяющим | ||
состояние памяти, либо [[распознаватель|''распознавателем'']] | состояние памяти, либо [[распознаватель|''распознавателем'']] — оператором, | ||
осуществляющим выбор для исполнения одного из нескольких | осуществляющим выбор для исполнения одного из нескольких | ||
своих преемников. Преобразователь содержит одно обязательное | своих преемников. Преобразователь содержит одно обязательное | ||
Строка 12: | Строка 12: | ||
не содержит присваиваний и имеет две исходящие дуги, одна из | не содержит присваиваний и имеет две исходящие дуги, одна из | ||
которых называется [[плюс-стрелка|''плюс-стрелкой'']] (или ''1-дугой''), | которых называется [[плюс-стрелка|''плюс-стрелкой'']] (или ''1-дугой''), | ||
а вторая | а вторая — [[минус-стрелка|''минус-стрелкой'']] (или ''0-дугой''). | ||
[[Файл:StSch.gif]] | [[Файл:StSch.gif|450px]] | ||
==См. также== | ==См. также== | ||
[[Крупноблочная схема программ | * ''[[Крупноблочная схема программ]]'', | ||
[[Неинтерпретированные схемы | * ''[[Неинтерпретированные схемы]]'', | ||
[[Схема программ | * ''[[Схема программ]]'', | ||
[[Схема с косвенной адресацией | * ''[[Схема с косвенной адресацией]]'', | ||
[[Схема с распределенной памятью | * ''[[Схема с распределенной памятью]]'', | ||
[[Схемы Лаврова | * ''[[Схемы Лаврова]]'', | ||
[[Схемы Мартынюка | * ''[[Схемы Мартынюка]]'', | ||
[[Схемы Янова | * ''[[Схемы Янова]]''. | ||
==Литература== | ==Литература== | ||
* Ершов А.П. Избранные труды. — Новосибирск: Наука. Сиб. отд-ние, 1994. | |||
* Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988. | |||
* Котов В.Е., Сабельфельд В.К. Теория схем программ.— М.: Наука, 1991. | |||
[[Категория: Теория схем программ]]. | [[Категория: Теория схем программ]]. |
Текущая версия от 14:40, 9 сентября 2011
Стандартные схемы (Standard schemata) — схемы алголоподобных программ, исследование которых составляет основное содержание общей теории схем программ.
В отличие от схем Мартынюка стандартные схемы учитывают разбиение памяти на переменные и позволяют исследовать более широкий класс преобразований программ, включающий уже и такие преобразования, как, например, экономия общих подвыражений.
Однако как подкласс крупноблочных схем стандартные схемы запрещают структурность операторов и переменных и, таким образом, моделируют лишь узкий класс реальных программ. Каждый оператор в такой схеме является либо преобразователем — оператором, изменяющим состояние памяти, либо распознавателем — оператором, осуществляющим выбор для исполнения одного из нескольких своих преемников. Преобразователь содержит одно обязательное присваивание и имеет одну исходящую дугу, а распознаватель не содержит присваиваний и имеет две исходящие дуги, одна из которых называется плюс-стрелкой (или 1-дугой), а вторая — минус-стрелкой (или 0-дугой).
См. также
- Крупноблочная схема программ,
- Неинтерпретированные схемы,
- Схема программ,
- Схема с косвенной адресацией,
- Схема с распределенной памятью,
- Схемы Лаврова,
- Схемы Мартынюка,
- Схемы Янова.
Литература
- Ершов А.П. Избранные труды. — Новосибирск: Наука. Сиб. отд-ние, 1994.
- Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988.
- Котов В.Е., Сабельфельд В.К. Теория схем программ.— М.: Наука, 1991..