Вот глянь, мы с Блэкиглом письками мерялись. Но то под АВР. И как можно быстрее.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
=mse=
19 ноября 2004 г. 10:21
В ответ на:
По образу и подобию железа.....а воопче идея избавится от деления ИМХО рулит...
отправлено колян безпарольный 18 ноября 2004 г. 22:43
http://www.telesys.ru/wwwboards/mcontrol/297/messages/141667.shtml
Составить ответ
|||
Конференция
|||
Архив
Ответы
кстати, для пика 16 бит bin2bcd ~130 тактов (у блэкигла дольше;)
—
пьеро
(19.11.2004 15:44,
пустое
,
ссылка
)
Алгоритм у БЕ другой, и код меньше - 54 байта
—
=mse=
(19.11.2004 15:58,
пустое
)
Коротке (до 65534) чивла быстрее перевести в ascii вычитанием. Это всем давно известно. А ...
—
асибо
(19.11.2004 13:56, 130 байт)
получится быстрее, посмотри, за сколько ПИК освоит 2-байтное, и сравни. Пропорция сохранится.
—
=mse=
(19.11.2004 14:04,
пустое
)
Деклараций не надо - результат покажите. Попробовал для AVR вычитанием. Получилось медленнее (1180), не говоря о размере кода.
—
асибо
(19.11.2004 14:37, 844 байт)
вот для моего алгоритма - 0ffffffh->16777215d - 157 тактов.
—
=mse=
(19.11.2004 14:35,
пустое
)
Код забыли.
—
асибо
(19.11.2004 14:42,
пустое
)
посмотри выше. или здесь
—
=mse=
(19.11.2004 15:17,
пустое
,
ссылка
)
Деклараций не надо - результат покажите. Попробовал для AVR вычитанием. Получилось медленнее (1180), не говоря о размере кода.
—
асибо
(19.11.2004 14:32,
пустое
)
на результат - 233 такта 0ffffffh->16777215d, учитывая CALL и RET
—
=mse=
(19.11.2004 15:05, 2317 байт)
для числа а 0f423ff->1599999 - 332 такта. Кстати, в первом сообщении ошибка, кусок с исправлением здесь
—
=mse=
(19.11.2004 15:14, 405 байт)
Фу... Ассемблер. Предупреждал же - интересует Си.
—
асибо
(19.11.2004 15:08,
пустое
)
Ха! "С" его интересует! ;О). Вон не прошло и 5 лет, как ИАР стал использовать умножитель в АВРах. Думаю, они и бинбцд такой же левой ногой пишут. Колян хотел АСМ, вот пущай и гребёт. А смеха ради, напиши для ПИКа. Интересно, сможет хотя бы к 500 приблизиться? ;О)
—
=mse=
(19.11.2004 15:21,
пустое
)
все уже написано
—
пьеро
(19.11.2004 15:42,
пустое
,
ссылка
)
ну и как циферка?
—
=mse=
(19.11.2004 15:58,
пустое
)
в три раза меньше :(
—
пьеро
(19.11.2004 16:31,
пустое
)
меньше чего? Скока в тактах? ;О)
—
=mse=
(19.11.2004 16:48,
пустое
)
если ты не врешь про свои ~330 тактов, то у тебя меньше, чем у них раза в три. (они на пик16), но если попробовать на dsPIC'е ... ;)
—
пьеро
(19.11.2004 18:00,
пустое
)
Чё мне врать - исходник дал - проверяй. А насчёт ДСПика, ну тоды давай сАРМой или ТМСом каким померяемся. Разговор то идёт о МК ценой до $5-10.
—
=mse=
(20.11.2004 10:18,
пустое
)
Слабая отмазка, и неубедительная и не по делу. Ищу Си вариант.
—
асибо
(19.11.2004 15:26,
пустое
)
флаг сам знаешь куда ;О), я на Ц не пишу
—
=mse=
(19.11.2004 15:31,
пустое
)
Оно и заметно. Сочувствую. Ну ничего, ничего, не переживай, всякое случается ;)
—
асибо
(19.11.2004 15:35,
пустое
)
Эт я вам сочувствую. Как начнётся заваруха "хлопцЫ, как мне на Ц сделать это?" и флейма на пол-страницы ;О)
—
=mse=
(19.11.2004 15:39,
пустое
)
В таких заварухах не участвую из педагогических соображений
—
асибо
(19.11.2004 15:56, 215 байт)
и это правильно, не все-же ЦШТ ХП в 51 пихают как вчерашний пряник, которому 128К флэша для 51 понадобилось ;О). Мы тут потихоньку приборчики ваяем всяко-разные, нам Ц и ЦПП не надобно ;О)
—
=mse=
(19.11.2004 16:17,
пустое
)
думаю, что на авр все таки быстрее получится, если очень постараться. внутри ссылки и результаты для 16бит bin2bcd. асм. пик. (+)
—
пьеро
(19.11.2004 15:03, 323 байт)
Быстрое 16 бит -> 5 знаков у меня есть. Ищу быстрое маленькое 24 -> 7. Самому варианты перебирать - долго и нудно, авось кто поделится готовым .
—
асибо
(19.11.2004 15:16,
пустое
)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru