Стандартные схемы: различия между версиями

Перейти к навигации Перейти к поиску
нет описания правки
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
'''Стандартные схемы''' (''[[Standard schemata]]'') - схемы алголоподобных программ, исследование которых составляет основное содержание общей [[Теория схем программ|теории схем программ]].  
'''Стандартные схемы''' (''[[Standard schemata]]'') схемы алголоподобных программ, исследование которых составляет основное содержание общей теории схем программ. В отличие от [[Схемы Мартынюка|схем Мартынюка]] стандартные схемы учитывают разбиение памяти на переменные и позволяют исследовать более широкий класс преобразований программ, включающий уже и такие преобразования, как, например, экономия общих подвыражений. Однако как подкласс [[Крупноблочная схема программ|крупноблочных схем]] стандартные схемы запрещают структурность операторов и переменных и, таким образом, моделируют лишь узкий класс
 
В отличие от [[Схемы Мартынюка|схем Мартынюка]] стандартные схемы учитывают разбиение памяти на переменные и позволяют исследовать более широкий класс преобразований программ, включающий уже и такие преобразования, как, например, экономия общих подвыражений.  
 
Однако как подкласс [[Крупноблочная схема программ|крупноблочных схем]] стандартные схемы запрещают структурность операторов и переменных и, таким образом, моделируют лишь узкий класс
реальных программ. Каждый оператор в такой схеме является
реальных программ. Каждый оператор в такой схеме является
либо [[преобразователь|''преобразователем'']] --- оператором, изменяющим
либо [[преобразователь|''преобразователем'']] оператором, изменяющим
состояние памяти, либо [[распознаватель|''распознавателем'']] --- оператором,
состояние памяти, либо [[распознаватель|''распознавателем'']] оператором,
осуществляющим выбор для исполнения одного из нескольких
осуществляющим выбор для исполнения одного из нескольких
своих преемников. Преобразователь содержит одно обязательное
своих преемников. Преобразователь содержит одно обязательное
Строка 12: Строка 8:
не содержит присваиваний и имеет две исходящие дуги, одна из
не содержит присваиваний и имеет две исходящие дуги, одна из
которых называется [[плюс-стрелка|''плюс-стрелкой'']] (или ''1-дугой''),
которых называется [[плюс-стрелка|''плюс-стрелкой'']] (или ''1-дугой''),
а вторая --- [[минус-стрелка|''минус-стрелкой'']] (или ''0-дугой'').
а вторая [[минус-стрелка|''минус-стрелкой'']] (или ''0-дугой'').


[[Файл:StSch.gif|450px]]
[[Файл:StSch.gif|450px]]


==См. также==
==См. также==
''[[Крупноблочная схема программ]]'',
* ''[[Крупноблочная схема программ]]'',
''[[Неинтерпретированные схемы]]'',
* ''[[Неинтерпретированные схемы]]'',
''[[Схема программ]]'',
* ''[[Схема программ]]'',
''[[Схема с косвенной адресацией]]'',
* ''[[Схема с косвенной адресацией]]'',
''[[Схема с распределенной памятью]]'',
* ''[[Схема с распределенной памятью]]'',
''[[Схемы Лаврова]]'',
* ''[[Схемы Лаврова]]'',
''[[Схемы Мартынюка]]'',
* ''[[Схемы Мартынюка]]'',
''[[Схемы Янова]]''.
* ''[[Схемы Янова]]''.


==Литература==
==Литература==
[Ершов/94],  
* Ершов А.П. Избранные труды.  — Новосибирск: Наука. Сиб. отд-ние, 1994.
* Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988.


[Котов-Сабельфельд],
* Котов В.Е., Сабельфельд В.К. Теория схем программ.— М.:  Наука, 1991.


[Касьянов/88]


[[Категория: Теория схем программ]].
[[Категория: Теория схем программ]].

Навигация