Дата последнего обновления файла 8.11.2009

Вложенные блоки и области действия переменныхязыка программирования PL/M-51

Любой объект, который объявляется в программе на языке PL/M-51, имеет область действия. Область действия существует для:

  • переменных
  • подпрограмм
  • меток

Область действия объекта представляет собой часть программы, в которой объявляется идентификатор объекта за вычетом текста, содержащегося в любом вложенном в него блоке, в котором объявляется тот же самый идентификатор. К объектам запрещено обращение до того,  как они будут объявлены. Это ограничение не касается меток.

Такое определение области действия позволяет не следить при написании программы за использованием идентификаторов, которые уже были использованы в программе в других модулях.

Некоторые блоки могут содержать вложенные блоки, как показано в следующих примерах. Использование внутренних блоков позволяет объявлять локальные переменные. Это позволяет использовать одни и те же ячейки памяти для различных переменных и тем самым экономить ресурсы памяти данных.

Пример 1:

Пример 2:

Переменные существуют только в пределах блока. Если внутри блока были присвоены локальным переменным какие-то значения, то не следует ожидать, что вернувшись снова в этот блок переменные сохранят эти значения. При использовании локальных переменных им назначаются одни и те же ячейки памяти.

Это правило не распространяется на вызов подпрограмм. При вызове подпрограммы переменная, объявленная в блоке становится недоступной, но при возвращении в этот блок она сохраняет свое значение.

Литература:

  1. Л.К. Гребенников А.А. Летник Программирование микропроцессорных систем на языке ПЛ/М, М, 1986

Вместе со статьей "Вложенные блоки и области действия переменныхязыка программирования PL/M-51" читают:

Языки программирования для микроконтроллеров
http://digteh.ru/Progr/progr.php

Язык программирования C-51
http://digteh.ru/MCS51/C51/op_c51.php

Язык программирования ASM-51
http://digteh.ru/MCS51/C51/op_c51.php

Язык программирования PLM-51
http://digteh.ru/MCS51/C51/op_c51.php


Автор Микушин А. В. All rights reserved. 2001 ... 2017

Предыдущие версии сайта:
http://neic.nsk.su/~mavr
http://digital.sibsutis.ru/

Поиск по сайту сервисом Яндекс

Поиск по сайту сервисом ГУГЛ

пЕИРХМЦ@Mail.ru


Rambler's Top100