Я не уверен, полностью ли понимаю ваш вопрос. Вы спрашиваете о разнице между кодом, сгенерированным для «короткой истории [1000]» и «короткой истории1, истории2, ..., истории1000;»?
Оба должны использовать одинаковые объемы ОЗУ: каждая запись будет храниться в одном регистре файлов (при условии, что вы используете 16-битный PIC). Однако код для вычисления среднего значения последнего будет уродливым и, вероятно, потребует совсем немного ПЗУ, так как для этого потребуется ссылаться на каждое значение отдельно (а не просто смещать основание).
Edit:
Причиной ограничения в 256 элементов является подкачка регистра файлов на PIC. Вы не можете обратиться к большему массиву, просто сместив базовый регистр, потому что вам может потребоваться запрос на изменение страницы.
Вам абсолютно необходимо рассчитать скользящее среднее? Или вы можете сделать общее среднее? Если с общим средним значением все в порядке, используйте вариант ответа Alphaneo: просто сохраните сумму и количество значений, собранных в две переменные, и делите в любое время, когда вам нужно среднее значение.