Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Надо прям на примерах. Кто даст неболшой осмысленный пример чтобы в сишный код принципиально был в 2 и больше раз асемблерного на одном алгоритме.
Отправлено
VasilyS
(80.92.96.25)
22 мая 2010, г. 09:37
В ответ на:
клоп драный (токовый клещ) понтуется, что заделает любой алгоритм на асме так, что в тот будет 2 раза быстрее/меньше, чем на Сях. Но кроме понтов ничего выкатить не может - только гон. оно - типичный быдлокодер
отправлено
Vit
22 мая 2010, г. 08:52
Составить ответ
|
Вернуться на конференцию
Ответы
Могу дать осмысленный пример. DDS-генератор на AVR, на Си это невозможно.
-
Леонид Иванович
(22.05.2010, 14:14:44
87.252.227.56
, 1944 байт)
Прерывание без пролога и эпилога? Тут всю программу переписывать надо.
-
VasilyS
(22.05.2010, 14:48:3
80.92.96.25
,
пустое
)
Да. Куча регистров за ним закреплена. На Си и близко не получится сделать такой дешевый генератор.
-
Леонид Иванович
(22.05.2010, 14:53:53
87.252.227.56
,
пустое
)
например тертый-перетертый алгоритм реверса бит в байте... Сколько это будет на С ??
-
argus98
(22.05.2010, 10:53:20
81.22.205.230
,
пустое
)
Си даст больше, только нормальная коммерчески значимая программа не состоит вся из реверсов бит в байте. Вся программа состоит из подготовки данных для такой и подобных процедур и их вызовов. И тут что си что асм дают примерно одинаковый код, но поддерживать и модифицировать сишный код при этом в разы легче.
-
Mebius
(22.05.2010, 11:02:27
87.251.142.3
,
пустое
)
Ну, на RLC быстрее на пару байт. На Си самое короткое 15 байт недавно то ли на сахаре то ли в элекстрониксе. & 0x55, << 2, потом & 0xaa >> 2 и в конце swap_nibbles.
-
VasilyS
(22.05.2010, 11:00:12
80.92.96.25
,
пустое
)
15 команд конечно, а не байт. Не знаю откуда байты приплёл :-)
-
VasilyS
(22.05.2010, 13:07:18
80.92.96.25
,
пустое
)
кстати, приведеный алгоритм ошибочен (+):
-
argus98
(22.05.2010, 11:49:56
81.22.205.230
, 132 байт)
Да что вы, проверять что ли стали? Ну это ж я примерно дал :-)))))) Если надо строго, то вот так 15 >>
-
VasilyS
(22.05.2010, 12:35:0
80.92.96.25
, 202 байт,
ссылка
)
то только первая часть
-
Vit
(22.05.2010, 12:13:48
77.123.102.177
, 484 байт)
сколько тактов/байт ?
-
argus98
(22.05.2010, 12:16:32
81.22.205.230
,
пустое
)
Не, эт не то.... Эт не 15.
-
VasilyS
(22.05.2010, 12:38:49
80.92.96.25
,
пустое
)
Да мне неинтересно. Я никогда биты не двигал - надобности не было. Если понадобится, а на асме будет быстрее, то применить не постесняюсь.
-
Vit
(22.05.2010, 12:23:58
77.123.102.177
,
пустое
)
листинг давай... Сам ведь определенности хотел
-
argus98
(22.05.2010, 11:34:42
81.22.205.230
,
пустое
)
Дал. 15 как одна копеечка. А & 0х55.... привел просто чтобы как показатель альтернативы традиционной asm-ротации на RLC / RRC.
-
VasilyS
(22.05.2010, 13:03:25
80.92.96.25
,
пустое
)
Крок дал. Там всё понятно. И это как раз интересно. Но до момента написания отдельной матлибы
-
Vit
(22.05.2010, 10:38:34
77.123.102.177
,
пустое
,
ссылка
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 234:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru