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

 
 
 
Reply to this topicStart new topic
> Вопрос по Codevision и указателям на память
microcomp
сообщение Nov 8 2016, 01:58
Сообщение #1





Группа: Участник
Сообщений: 7
Регистрация: 26-07-06
Пользователь №: 19 123



Подскажите.
Есть два массива:
unsigned char ENC_Data[8];
unsigned char ENC_SN[8];
Нужно передать в функцию адреса начала этих массивов. Чтоб можно было в этой функции с ними на ассемблере поколдовать.
Как это сделать? Пример очень приветствуется.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Nov 8 2016, 06:57
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (microcomp @ Nov 8 2016, 04:58) *
Как это сделать? Пример очень приветствуется.

Почитать учебник по Си? Там сказано, что массивы передаются в функции как указатели на их первый элемент.

CODE
void process(uint8_t data[8])
{
.....
}

void process2(uint8_t * data)
{
...
}

void test()
{
process(ENC_Data);
process2(ENC_SN);
}


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Onkel
сообщение Nov 10 2016, 07:53
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 708
Регистрация: 8-05-11
Из: Чг
Пользователь №: 64 861



в СV в функцию на асме параметр передается в каком-то (не помню) регистре 21 или 27, посмотрите прямо в CV help по функциям на асме.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 11th July 2025 - 07:37
Рейтинг@Mail.ru


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