[an error occurred while processing this directive]
как для 55хх использовать общие для АСМ и С константы ?
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено man55 09 сентября 2005 г. 07:37

например узнать размер массива по аналогии с sizeof() в С
в функцию на асме передается указатель на массив, а ассемблер при ассемблировании как-то должен узнать его размер - как ???

и вообще глобальный вопрос - как создавать общие для асма и С константы.
То, что на С делается #define
с переменными все понятно, а с константами - какая-то задница.
например объявлен енум:

typedef enum
{
TIMER_ID_LINE_SYNC,
TIMER_ID_UART_RX,
TIMER_ID_WDT,
TIMER_ID_TEST,
TIMER_ID_I2C,
TIMER_ID_CONFIG,
TIMER_ACT_TIMER,
TIMER_ACT_AIC_RX,
TIMER_ACT_AIC_TX,
TIMER_ACT_UART,
TIMER_QUEUE_SIZE
} TimerQueue;
и потом отведена память
volatile u16 timer_queue[TIMER_QUEUE_SIZE];
как в асме знать например чему равен TIMER_ACT_AIC_TX ?
опять же максимум что можно узнать - указатель на начало timer_queue

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru