Ещё добавлю. В случае императива, модель вычислителя представляет собой микропрограммный автомат (МПА) с естественной адресацией (как правило, хотя в принципе может быть и с принудительной). Реально этот МПА может быть виртуальным (не "в железе"), как в случае с программами на ЯВУ. Очень полезно представлять себе эту машину. Оператор рассматривается как атомарное действие (микрооперация). Выполнение оператора -- переход МПА из одного состояния в другое. Текущее состояние МПА -- это значения всех переменных плюс текущий адрес в программе (точка на структурной схеме алгоритма). Это, конечно, несколько упрощено и слишком прямолинейно, но зато позволяет уловить суть.
Извините за такие академические подробности, надеюсь они будут интересныkemiisto, автору темы.

PS: Все эти выкладки не применимы к декларативному программированию