Каково представление функций помощи

В языке ПЛ/1 имеются следующие возможности: 1) вернуть запись (STRUCTURE в языке ПЛ/1), которая должна быть интерпретирована вызывающей программой. Информация, содержащаяся в этой записи (код ошибки) , укажет вызывающей программе, обнаружила ли стековая машина особую ситуацию и какие заранее предусмотренные действия необходимо предпринять. Затем может последовать соответствующая реакция вызывающей программы; 2) вызвать процедуру помощи, ранее переданную стековой машине в качестве аргумента, или во время текущего, или во время предыдущего вызовов. Сама процедура помощи обеспечивается вызывающей программой. В большинстве случаев, согласно нашему примеру, будем пользоваться первой возможностью. Тогда стековая машина возвратит целочисленный код ошибки, значение которого равно нулю при нормальном завершении, и установит равный такому целому числу, которое идентифицирует обнаруженную особую ситуацию. В таких случаях состояние стековой машины не будет изменяться. В случае же переполнения стека будет вызвана процедура помощи^ Этой процедуре стековая машина передает имя стека, текущий объем памяти, занимаемый стеком и элементом, помещенным на вершину стека, и будет ожидать информацию от процедуры помощи о том, нужно ли уменьшить ограничения на память для стека и в какой степени. Реализация стековой машины. Сначала объединим все описания, необходимые для представления стековой машины и стеков. Часть схемы еще следует уточнить и отобразить средствами языка ПЛ/1. Описания на приведенной ниже распечатке должны быть включены во все модули стековой машины. Связь между модулями осуществляется объявлением базы структуры данных (STACKB) в качестве внешней (EXTERNAL) ; этот атрибут указывает, что все модули стековой машины работают с одной и

Releated Post

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.