Первое понимание.

Как я уже рассказывал в предыдущей записи мой путь в программирование начался с микрокалькулятора «Электроника МК-54». Этот калькулятор для вычислений использовал польскую нотацию. Для выполнения арифметических действий над числами использовался стек.  Например, сложение двух чисел происходило следующим образом:

  1. Вводим первое число.
  2. «Проталкиваем» число в стек.
  3. Вводим второе число.
  4. Вводим требуемую операцию, в данном примере сложение.
  5. Первое и второе число исчезают, из стека, а на его вершине появляется результат.

Как в такой системе производить операции над числами я освоил сразу, а вот всю мощь и прелесть стека оценить сразу не смог. Понимание того, как устроен стек, я считаю своим действительно первым пониманием в программировании. Как это не печально, но произошло оно на экзамене по информатике. Я получил 4, но зато узнал как работает стек. Преподаватель задал мне вопрос: «Как выполнить на калькуляторе (2+10)*(15-3) без использования регистров памяти ?» Если Вы не можете это сделать, то Вы так же, как и я 25 лет назад не понимаете, как работает стек !