Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Алгоритм преобразования арифметических выражений в ПОЛИЗ



1. Поступающие на вход операнды сразу проходят на выход.

2. Поступающие на вход операторы сравниваются по приоритету. Если приоритет оператора на входе магазина больше, чем в верхушке магазина, то оператор со входа поступает в магазин (first in/last out). Если приоритет оператора на входе меньше или равен приоритету оператора в верхушке магазина, то оператор из верхушки магазина идет на выход и сравнение повторяется. Эти процедуры выполняются до тех пор, пока не исчерпается строка.

Операции Магазинный Сравнительный
( Æ ¥
:= Æ ¥
+ -    
* /    
(степень) ­    
) - Æ

y:=a*(b+c) ­e/(d-k)

y сразу проходит на выход…

) /)

yabc yabc + e yabc + e­*dk yabc + e­*dk-/:=

1 23 2 32

При выполнении используется стек.

Операнды поступают в стек. Поступив на вход стека, оператор вытягивает из стека столько операндов, сколько ему нужно. Результат заталкивается в вершину стека.

+ ­ * - /:=

2 2

3 5 25 3 1 25

2 1 1 25 25 y

1 y y y y

y





Дата публикования: 2014-11-03; Прочитано: 363 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...