Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Господа, подскажите самый изящный алгоритм перестановки битов в байте... Так чтобы 0-вой бит стал 7-мым, 1-ый - 6-ым.. и т. д.... сэнкс...
Отправлено
zlogic
21 июня 2007 г. 17:26
Составить ответ
|
Вернуться на конференцию
Ответы
Ответ: Если не жалко 256 байт пзу - табличный способ попробуй - наверное будет быстрее, чем биты менять
—
lebiga
(21.06.2007 22:50:43
195.138.193.179
,
пустое
)
Для FFT биты переворачиваете? Проверьте, может оказаться короче восемь раз выдвинуть бит в CF и одновременно задвинуть из CF'а. (+)
—
YellowTiger
(21.06.2007 18:16:31
83.149.0.98
, 95 байт)
Какой FFT!!! C8051F331 у меня... и биты порта так разведены, что для дизайна (разводка печати такая!) надо перекомпонавать биты... Ваша мысль понятна... Завтра попробую! Сэнкс...
—
zlogic
(21.06.2007 18:38:50
87.118.102.154
,
пустое
)
Ну, я про FFT подумал потому, что сам об этом способе подумал, когда японца читал - у него этот алгоритм вложенными циклами на Васике был реализован, так я посмеялся тогда - что если кто-то так и оставит, на Васике?... и подумал, что нужно будет сделать именно так - шифтАми.
—
YellowTiger
(21.06.2007 19:28:26
83.149.3.146
,
пустое
)
Хэх! Не сразу обратил внимание - это что же, чтобы один раз не трахаться тому, кто разводил плату, проц должен перед каждым выводом в порт байт переворачивать? Аррригинально! Впрочем, если процу делать нечего...
—
YellowTiger
(21.06.2007 19:32:2
83.149.3.146
,
пустое
)
Ага... так получилось... развелось красиво... а переназначить биты байта мона и программно... вопрос в этом, а не в остальном... :)))
—
zlogic
(21.06.2007 19:35:54
85.25.148.242
,
пустое
)
"Красиво" - это в один слой что ли? :о)
—
YellowTiger
(21.06.2007 19:39:10
83.149.3.146
,
пустое
)
Два!!!!!!!!!!!!!! Блин... кинуть разводку платы... куда?
—
zlogic
(21.06.2007 19:42:6
85.25.148.242
,
пустое
)
Не, кидаться не надо, просто был уверен, что при двух слоях можно черта в ступе развести... но посмотрел на корпус - MLP20 - и понял, что пожалуй оччень даже может быть и в двух не развести... :о)
—
YellowTiger
(21.06.2007 20:01:5
83.149.3.146
,
пустое
)
Да можно... можно и обозначить клеммник справа-налево... а не слево-насраво... А алгоритим перекидывания битов всегда пригодиться!!! Сэнкс вам!!!
—
zlogic
(21.06.2007 20:06:29
85.25.148.242
,
пустое
)
Ну уж прям! АЛГОРИТМ! :о))))))))))
—
YellowTiger
(21.06.2007 20:17:25
83.149.3.146
,
пустое
)
Я в бэкграунде ассоциацию принял - "раз 51-й, значит - DIP; шаг 2,54" и т.д. :о)))
—
YellowTiger
(21.06.2007 20:04:30
83.149.3.146
,
пустое
)
А там разве нельзя аппаратно переназначать функции другим выводам?
—
Ник, бля, опять потерялся.
(21.06.2007 19:13:50
85.21.146.66
,
пустое
)
Мона... но порт 8-разрядный полный тока один!!!!!!!!!!!!!!!!!!!!!!!
—
zlogic
(21.06.2007 19:17:28
85.25.148.242
,
пустое
)
Интересно, это будет быстрее, нежели war4one порекомендовал.. Хотя, мне не сильно важно... Мне это в модулях типа ADAMов надо... там скорость и объём кода не важны...
—
zlogic
(21.06.2007 18:47:49
87.118.102.154
,
пустое
)
Заглянул я в даташит этого проца - за все, про все - 16 тактов, а OR'ы с константами - по 2 такта каждый, так что - шифтами быстрее, однозначно.
—
YellowTiger
(21.06.2007 20:14:9
83.149.3.146
,
пустое
)
Сейчас бы АВР встрял... он мастер спорта по экономии инстркуций и циклов... Но увы... пьян... выпил пива... крепкого... башка ваще не варит... :)))
—
zlogic
(21.06.2007 20:19:55
87.118.102.154
,
пустое
)
Мне тоже доводилось экономить такты - писал библиотеку графики на ассемблере для х86. Только это было ужжаасно давно... :о)))
—
YellowTiger
(21.06.2007 20:34:20
83.149.3.146
,
пустое
)
На МК это ещё более актуально бывает... Однако, не в моём случае... Просто хотелось красивости!!!
—
zlogic
(21.06.2007 20:37:50
87.118.102.154
,
пустое
)
>>>
—
war4one
(21.06.2007 17:44:42
81.30.216.72
,
пустое
,
ссылка
)
Соединить два свободных порта ;-)
—
misyachniy
(21.06.2007 17:40:3
212.90.165.14
,
пустое
)
Ха... делал поиск по конфе... и там вспоминали чёрного орла с этим предложением... хотел написать в вопросе.. только не это... но поленился... ;))) Какие порты... у мня F331-ый!!!
—
zlogic
(21.06.2007 17:51:52
85.25.148.242
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 13:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru