[an error occurred while processing this directive]
|
В главной программе на C определяем переменную RR_DATA в сегменте data. Далее пишем ассемблерный файл name.a51 со следующим текстом:
NAME RR_MODUL
?PR?readwrite?RR_MODUL SEGMENT CODE
extrn data (RR_DATA)
public RR_LABEL
RSEG ?PR?readwrite?RR_MODUL
RR_LABEL: RR RR_DATA
RET
END
В программе на C определяем внешнюю функцию
extern void RR_MODUL(void);
и далее по программе вызовом RR_MODUL(); каждый раз сдвигаем переменную RR_DATA на один разряд циклически вправо. Файл name.a51 можно просто включить в проект. Если необходимо, то можно создать не процедуру, функцию с передачей параметров. В этом случае она будет подключаться с главной программе так:
extern unsigned char RR_MODUL(unsigned char RR_DATA, CICL);
E-mail: info@telesys.ru