|
|
  |
Давайте устраивать на форуме конкурсы, По программированию |
|
|
|
Aug 24 2011, 11:54
|
self made
   
Группа: Свой
Сообщений: 855
Регистрация: 7-03-09
Из: Toronto, Canada
Пользователь №: 45 795

|
Цитата(ARV @ Aug 23 2011, 12:21)  помнится, была тут темка на счет отзеркаливания битов в байте - такого типа задачки предполагаются?  если склероз не подводит, самая короткая процедурка в 11 ассемблерных команд вышла (AVR8).... Кстати, а что так много - на пике у меня 5 получилось: Код movlw 8 Loop: rlcf Source, F rrcf Dest, F addlw 0xFF bnz Loop Чисто 5 минут подумал пока собачку выгуливал. С АВР не знаком, что у них такая система команд плохая, что в два раза больше команд надо?
|
|
|
|
|
Aug 24 2011, 12:47
|
self made
   
Группа: Свой
Сообщений: 855
Регистрация: 7-03-09
Из: Toronto, Canada
Пользователь №: 45 795

|
Цитата(Rst7 @ Aug 24 2011, 07:58)  Речь об оптимизации по скорости без использования таблицы. тогда 16 - Код rlcf Source, F rrcf Dest, F ;; повторить 8 раз
|
|
|
|
|
Aug 31 2011, 11:01
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(ar__systems @ Aug 24 2011, 17:51)  Понял. На пике тоже получилось 11 команд. Не, на пике 12тактов на авр 13 тактов лучше не сделать
|
|
|
|
Guest_@Ark_*
|
Aug 31 2011, 21:53
|
Guests

|
Цитата Не, на пике 12тактов на авр 13 тактов лучше не сделать Лучше можно сделать. Но лучше не делать. Берете один восмибитный порт МК и соединяете его с другим в обратном порядке. В один порт пишите, из другого читаете. Итого всего две команды (а не такта). Но очень расточительно с точки зрения использования ног МК... Возможны более "щадящие" варианты, с использованием только одного порта...
|
|
|
|
|
Sep 2 2011, 07:38
|

Voltage Control Output
     
Группа: Свой
Сообщений: 4 598
Регистрация: 21-07-09
Из: Kursk
Пользователь №: 51 436

|
Цитата(@Ark @ Sep 1 2011, 00:53)  Итого всего две команды (а не такта). Но очень расточительно с точки зрения использования ног МК... У PIC это одна команда movffЦитата Возможны более "щадящие" варианты, с использованием только одного порта... В CPLD и FPGA это вообще не проблема...
--------------------
Слово - не воробей, вылетит - не пощадит
|
|
|
|
Guest_@Ark_*
|
Sep 2 2011, 12:43
|
Guests

|
Цитата У PIC это одна команда movff Одной командой не получится. Почему - подумайте.  Цитата В CPLD и FPGA это вообще не проблема... Это да. Но речь, вроде бы, идет об МК.
Сообщение отредактировал @Ark - Sep 2 2011, 18:04
|
|
|
|
Guest_@Ark_*
|
Sep 4 2011, 19:40
|
Guests

|
Цитата Команда-то одна, да тактов все равно два. Дело не в тактах. Эта команда сначала читает, а потом записывает. А нужно - все наоборот. Сначала записать данные в порт, а затем извлечь результат из другого порта. Причем, лучше это сделать с некоторой паузой между записью и чтением...
Сообщение отредактировал @Ark - Sep 4 2011, 19:41
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|