|
CodeVision массив по конкретному адресу, Как расположить проинициализированный массив в памяти по нужному адрес |
|
|
|
Jun 30 2008, 03:51
|
Местный
  
Группа: Свой
Сообщений: 401
Регистрация: 18-11-06
Из: Хабаровск
Пользователь №: 22 469

|
Здравствуйте. Есть массив (табличный метод расчета кцк). Не могу в CodeVision разместить его по нужному адресу. Например: Код char array[5] = {0x12, 0x34, 0x45, 0x56, 0x67}; Хочу чтобы лежал он с адреса 0x100: Код char array[5] = {0x12, 0x34, 0x45, 0x56, 0x67} @0x100; // не помогает Куда только эти @0x100 я не ставил. Хотя вот так пишут в хелпе: Код char a@0x100; ... и все пашет. А с инициализацией нивкакую...
|
|
|
|
|
 |
Ответов
|
Jul 1 2008, 08:53
|
Местный
  
Группа: Свой
Сообщений: 401
Регистрация: 18-11-06
Из: Хабаровск
Пользователь №: 22 469

|
Цитата Повнимательней посты читать надо. Вам предложили 2 варианта решения проблемы, которые отличаются тем, что в 1м варианте Вы выигрываете 256 байт ОЗУ + универсальность() кода. Во втором - выигрыш в 1 такт (применив ldd вместо lpm) ценой повышенного расхода памяти. И прежде чем обвинять в корявости, подумайте, каким образом попадают данные в инициализированные переменные в RAM. Просто Вам предлагают сделать некоторые действия вместо компилятора, раз он такому не обучен. Не надо считать себя много умнее других. Во-первых, про тормознутость lpm писал я сам - потому и просил помочь с размещением массива не в памяти программ, а в памяти данных. Во-вторых, и тут я действительно не просвещен, Вы утверждаете, что размещение инициализированногог массива во flash в коде программы с последующим его переписыванием в RAM - есть одно и то же, что просто размещение инициализированного массива (в коде) в памяти данных (т. е. без ключевого слова flash)? В-третьих, CRC16 от CRC8 я могу отличить - у меня CRC16 (таблиц две по 256 байт - для младшего и старшего байта)!
|
|
|
|
|
Jul 1 2008, 09:14
|

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

|
Цитата(InvisibleFed @ Jul 1 2008, 11:53)  Вы утверждаете, что размещение инициализированногог массива во flash в коде программы с последующим его переписыванием в RAM - есть одно и то же, что просто размещение инициализированного массива (в коде) в памяти данных (т. е. без ключевого слова flash)? А вы думаете, что данные появляются в RAM каким-то иным (магическим) способом? Кстати о CV: версии 1.хх не поддерживали раздельную компиляцию (прочитав инструкцию к 2.хх не понял, изменилось ли что-то в этом плане), поэтому понятие линковки в нем отсутствует. Подумайте, как бы вы решили вашу задачу на голом асме и дальше исходите из того, что CV генерит из ваших исходников один большой асм-файл который и подсовывает ассемблеру.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
Сообщений в этой теме
InvisibleFed CodeVision массив по конкретному адресу Jun 30 2008, 03:51 haker_fox Цитата(InvisibleFed @ Jun 30 2008, 12:51)... Jun 30 2008, 04:54 InvisibleFed Цитата(haker_fox @ Jun 30 2008, 15:54) А ... Jun 30 2008, 06:31  defunct Цитата(InvisibleFed @ Jun 30 2008, 09:31)... Jun 30 2008, 22:17 vet InvisibleFed,
предваряйте определение переменной д... Jun 30 2008, 10:13 VDG Цитата(InvisibleFed @ Jun 30 2008, 07:51)... Jun 30 2008, 11:43 vet Цитата(VDG @ Jun 30 2008, 15:43) и к чему... Jul 1 2008, 06:02  VDG Цитата(vet @ Jul 1 2008, 10:02) Сам приме... Jul 2 2008, 21:05   vet Цитата(VDG @ Jul 3 2008, 01:05) Вот я про... Jul 3 2008, 05:43    VDG Цитата(vet @ Jul 3 2008, 09:43) почему не... Jul 3 2008, 09:48     vet Цитата(VDG @ Jul 3 2008, 13:48) не надо с... Jul 3 2008, 12:23      VDG Цитата(vet @ Jul 3 2008, 16:23) Не уловил... Jul 3 2008, 12:30 sgs Цитата(InvisibleFed @ Jun 30 2008, 08:51)... Jun 30 2008, 16:32 Т.Достоевский Непонятно, зачем конкретный адрес? Что асм, что ко... Jun 30 2008, 23:35 defunct Цитата(Т.Достоевский @ Jul 1 2008, 02:35)... Jun 30 2008, 23:45 InvisibleFed Здравствуйте. Всем спасибо за ответы. Отвечу и вне... Jul 1 2008, 06:57 Александр Куличок Цитата3. Некоторые противоречат сами себе - говоря... Jul 1 2008, 08:24 Александр Куличок ЦитатаВо-первых, про тормознутость lpm писал я сам... Jul 1 2008, 09:34 InvisibleFed ЦитатаУ меня код для CRC16 занимает 16/17 тактов н... Jul 1 2008, 10:24 defunct Табличный способ расчета CRC внезависимости от раз... Jul 1 2008, 10:27 Александр Куличок Перед вызовом Y <= указатель на данные
XL (или ... Jul 1 2008, 12:03 defunct Цитата(Александр Куличок @ Jul 1 2008, 15... Jul 1 2008, 21:09 Александр Куличок ЦитатаВы шутите наверное?!
X использовать под ... Jul 1 2008, 21:54 defunct Цитата(Александр Куличок @ Jul 2 2008, 00... Jul 2 2008, 15:51 sgs Цитата(InvisibleFed @ Jun 30 2008, 08:51)... Jul 18 2008, 08:33 SasaVitebsk А если перейти на IAR (или GCC), то решается две з... Jul 18 2008, 17:55 InvisibleFed SasaVitebsk, спасибо, полностью согласен. Но так у... Jul 22 2008, 06:34 Qwertty Цитата(InvisibleFed @ Jul 22 2008, 10:34)... Jul 22 2008, 07:00 sgs Цитата(InvisibleFed @ Jul 22 2008, 11:34)... Jul 22 2008, 10:30
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|