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

 
 
> Уменьшить число тактов.
muravei
сообщение Aug 19 2013, 08:25
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Я пытался спрашивать в "начинающих", но никто мне не ответил. crying.gif
Есть двухбайтовый массив во флеш:
Код
static const uint16_t tab[4096]={0,1,2...типа того

надо выбирать из него значения
Код
*pDAC    =tab[i];

без оптимизации:
Код
     LDR      r5,[pc,#24] ; @0x080003EC  Тут адрес массива во флеш
     LDRH     r5,[r5,r1,LSL #1]
     STR      r5,[r3,#0x00]

Первая команда делает указатель на начало массива, в этом месте явно лишняя(это цикл)
Если включить оптимизацию, то компилятор ее убирает из него.
Вопрос: А нельзя ли это сделать на Си в рукопашную?

И еще, что делает сдвиг влево во второй команде? Адресует полуслово?
Go to the top of the page
 
+Quote Post



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

 


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


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