реклама на сайте
подробности

 
 
> Смена информации для подпрограммы, Директива SET
Wise
сообщение Jul 14 2006, 21:09
Сообщение #1


Пользователь забанен
*****

Группа: Свой
Сообщений: 1 138
Регистрация: 9-08-05
Пользователь №: 7 492



Вопрос уважаемому сообществу.
Можно ли директивой SET переустанавливать ею же определенные именованные константы, перед вызовом подпрограммы, если эти константы в подпрограмме используются?

Сомнения вот в чем. Подпрограмма же не макрос, не записывается в PIC столько раз, сколько вызывается. И в кодах команд подпрограммы, "зашитой" в PIC, в каждой строке, должны быть, видимо, записаны конкретные значения операндов. И как они могут перед вызовом подпрограммы переустанавливаться?

Все это вызвано попыткой вводить в подпрограммму перед каждым вызовом новую информацию. И можно ли это делать, кроме косвенной адресации?


--------------------
It's me
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
xemul
сообщение Jul 15 2006, 11:43
Сообщение #2



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



Цитата(Wise @ Jul 15 2006, 01:09) *
Вопрос уважаемому сообществу.
Можно ли директивой SET переустанавливать ею же определенные именованные константы, перед вызовом подпрограммы, если эти константы в подпрограмме используются?

Сомнения вот в чем. Подпрограмма же не макрос, не записывается в PIC столько раз, сколько вызывается. И в кодах команд подпрограммы, "зашитой" в PIC, в каждой строке, должны быть, видимо, записаны конкретные значения операндов. И как они могут перед вызовом подпрограммы переустанавливаться?

Все это вызвано попыткой вводить в подпрограммму перед каждым вызовом новую информацию. И можно ли это делать, кроме косвенной адресации?

Вы пытаетесь константы, задаваемые на этапе компиляции (директива SET), использовать как переменные (в данном случае аргументы для процедуры) на этапе исполненияsmile.gif.
Определите аргументы для процедуры (если я правильно понял, набор констант) как массив (через DW, DE...) и передавайте в процедуру или саму требуемую константу, или указатель на нее.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 12:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01373 секунд с 7
ELECTRONIX ©2004-2016