Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Ой, ужас какой, полубайтная таблица оказывается проигрывает во много разов, если проигрывает. Причем одному из моих же вариантов. Причем процессорозависимо. Ужас, ужас, ужас.:-))))

Отправлено -=ВН=- 18 июня 2007 г. 18:08
В ответ на: плюс размер самой таблицы - и где тут экономия ? отправлено <font color=gray>ыфефт</font> 18 июня 2007 г. 16:44

MSP 430, исходный байт в R12, результат там же, таблица, располагаемая где угодно. Через точку с запятой - времена выполнения в тактах генератора.
MOV R12,R13 ;1
AND #15,R12 ;2
MOV.B TABLE(R12),R12 ;3
RRA R13 ;1
RRA R13 ;1
RRA R13 ;1
RRA R13 ;1
ADD.B TABLE(R13),R12 ;3
Итого 13 циклов.

MSP430, маскирование и сдвиги
Исходный байт в R12, результат там же.
MOV R12,R13 ;1
AND #0x55,R12 ;2
RRA R13 ;1
AND #0x55,R13 ;2
ADD R13,R12 ;1
MOV R12,R13 ;1
AND #0x33,R12 ;2
RRA R13 ;1
RRA R13 ;1
AND #0x33,R13 ;2
ADD R13,R12 ;1
MOV R12,R13 ;1
AND #15,R12 ;2
RRA R13 ;1
RRA R13 ;1
RRA R13 ;1
RRA R13 ;1
ADD R13,R12 ;1

Итого 23 цикла


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 45:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru