2013-12-19 2 views
0

я знаю, что он должен сделать что-то с компиляторами превращения Инфиксных выражения постфикса или префиксом (я не знаю, какой именно), и я думаю, компиляторы, что поскольку в постфиксных и префиксах выражений скобок являются не нужно подчеркивать приоритет оператора. так может кто-нибудь сказать мне, почему и как именно компьютер оценивает математические выражения?
- это тот же процесс для всех компиляторов языков программирования?как компиляторы оценивают математические выражения?

+0

Проблема в том, что методы в некотором смысле носят единообразный характер, но индивидуальная реализация варьируется довольно много. Возьмите курс компиляторов или даже просто прочитайте Crenshaw's * Let's Build the Compiler *, и вы получите широкую картину. – dmckee

+0

@dmckee спасибо. вне темы: есть ли «веб-сайты с вопросом и ответами», такие как переполнение стека, что я могу задавать вопросы, относящиеся к компьютерной науке, но вроде: что такое ajax или что такое хорошая книга для изучения C++ и такие вопросы. потому что я думаю, что такие вопросы здесь не ценятся. – gandalf

ответ

1

Обычно это постфиксная нотация с использованием операнда и операторских стеков. Любая первая книга по компьютерной науке (проект компилятора) обсудит детали. Это связано с встречающимися скобками и относительным приоритетом (и ассоциативности) операторов, встречающихся во входе. Большинство компьютерных языков имеют аналогичные правила оценки, приоритета и ассоциативности и будут использовать аналогичный процесс. Но не все!

Смежные вопросы