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

 
 
 
Reply to this topicStart new topic
> Как правильней хранить большие массивы?, 2К и больше.
Димон Безпарольн...
сообщение Sep 8 2017, 18:38
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 606
Регистрация: 29-11-10
Пользователь №: 61 247



Если хранить в функции, то прошивка виснет при вводе - выводе. Могу предположить что массив пытается разместится в стеке. Хотя я вижу:

Цитата
Program Size: Code=30174 RO-data=2502 RW-data=228 ZI-data=4996


Что на 2К увеличивается RO-data=2502.

Если хранить как глобальный массив, то так:

Цитата
Program Size: Code=30242 RO-data=634 RW-data=2096 ZI-data=4992


т.е. RW-data=2096 увеличен на 2K. Получается что массив размещается в ОЗУ? Это вообще не подходит.

Как правильно его разместить?
Go to the top of the page
 
+Quote Post
Baser
сообщение Sep 8 2017, 19:10
Сообщение #2


Просто Che
*****

Группа: Свой
Сообщений: 1 279
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Димон Безпарольный @ Sep 8 2017, 21:38) *
Получается что массив размещается в ОЗУ? Это вообще не подходит.
Как правильно его разместить?

Вы сначала определитесь что вы хотите получить (где нужно разместить массив), а потом спрашивайте.
У компилятора достаточно средств, чтобы положить данные куда угодно (RTFM)
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Sep 8 2017, 19:12
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 606
Регистрация: 29-11-10
Пользователь №: 61 247



Цитата(Baser @ Sep 8 2017, 23:10) *
Вы сначала определитесь что вы хотите получить (где нужно разместить массив), а потом спрашивайте.
У компилятора достаточно средств, чтобы положить данные куда угодно (RTFM)

Да, наверно надо было сказать что это массив должен быть размещен в программной памяти. Его изменять не надо, надо просто передать.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Sep 8 2017, 19:48
Сообщение #4


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 7 706
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



const
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Sep 8 2017, 20:15
Сообщение #5


Знающий
****

Группа: Участник
Сообщений: 606
Регистрация: 29-11-10
Пользователь №: 61 247



Цитата(ViKo @ Sep 8 2017, 23:48) *
const

Точно. Спасибо.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 9 2017, 06:22
Сообщение #6


Гуру
******

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



А если это локальный массив функции - static const.
Димон Безпарольный, вы бы учебник по Си какой почитали перед сном, а?


--------------------
На любой вопрос даю любой ответ
"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
scifi
сообщение Sep 9 2017, 08:23
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 786
Регистрация: 7-02-07
Пользователь №: 25 136



Димон не туда постит. Вроде бы есть раздел для начинающих.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Sep 9 2017, 09:42
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 774
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Судя по вопросам, ему даже туда ещё рано писать biggrin.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st November 2017 - 08:21
Рейтинг@Mail.ru


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