|
поменять местами биты в байте, простой вопрос |
|
|
|
 |
Ответов
|
Apr 26 2010, 07:56
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555

|
Для AVR все равно быстрее так Код uint8_t rsb(uint8_t a) { a = ((a & 0x55) << 1) | ((a & 0xAA) >> 1); a = ((a & 0xCC) >> 2) | ((a & 0x33) << 2); return __swap_nibbles(a); } 15 тактов. Даже если на асм написать развернутый цикл со сдвигом через перенос получится 16 тактов. Код 5 a = ((a & 0x55) << 1) | ((a & 0xAA) >> 1); \ 00000000 2F10 MOV R17,R16 \ 00000002 7515 ANDI R17,0x55 \ 00000004 0F11 LSL R17 \ 00000006 7A0A ANDI R16,0xAA \ 00000008 9506 LSR R16 \ 0000000A 2B01 OR R16,R17 6 a = ((a & 0xCC) >> 2) | ((a & 0x33) << 2); 7 return __swap_nibbles(a); \ 0000000C 2F10 MOV R17,R16 \ 0000000E 7C1C ANDI R17,0xCC \ 00000010 9516 LSR R17 \ 00000012 9516 LSR R17 \ 00000014 7303 ANDI R16,0x33 \ 00000016 0F00 LSL R16 \ 00000018 0F00 LSL R16 \ 0000001A 2B01 OR R16,R17 \ 0000001C 9502 SWAP R16 \ 0000001E 9508 RET
|
|
|
|
Сообщений в этой теме
Vny4ek поменять местами биты в байте Apr 25 2010, 19:34 zltigo Цитата(Vny4ek @ Apr 25 2010, 21:34) 0х72=... Apr 25 2010, 19:45 aaarrr Цитата(zltigo @ Apr 25 2010, 23:45) Не хи... Apr 25 2010, 19:47 ASN Vny4ek
тут есть Apr 25 2010, 19:53 Vny4ek я это вижу как цикл на 8 шагов
где проверяется зна... Apr 25 2010, 20:04 baralgin Сумбурное описание, но если правильно понял то тип... Apr 25 2010, 20:04 demiurg_spb Если вопрос звучал так: "Как зеркалить биты в... Apr 25 2010, 20:53 KRS IMHO цикл тут неоптимален.
Можно же стандартный сп... Apr 25 2010, 20:46 baralgin Цитата(KRS @ Apr 25 2010, 23:46) Можно же... Apr 25 2010, 20:57 zltigo Цитата(baralgin @ Apr 25 2010, 22:57) Цик... Apr 25 2010, 21:12 baralgin Не поленился, проверил (плохая привычка меряться..... Apr 25 2010, 21:55 zltigo Цитата(baralgin @ Apr 25 2010, 23:55) Не ... Apr 25 2010, 22:04 KRS Цитата(baralgin @ Apr 26 2010, 01:55) ps:... Apr 25 2010, 22:07 baralgin Цитата(zltigo @ Apr 26 2010, 01:04) Сильн... Apr 25 2010, 22:31 Vny4ek я проще себе это представлял, не знаю только как н... Apr 26 2010, 05:33 zltigo Цитата(Vny4ek @ Apr 26 2010, 07:33) я про... Apr 26 2010, 06:58 demiurg_spb Цитата(KRS @ Apr 26 2010, 11:56) Даже есл... Apr 26 2010, 20:59  MrYuran Цитата(demiurg_spb @ Apr 27 2010, 00:59) ... Apr 27 2010, 09:06 x736C Цитата(KRS @ Apr 26 2010, 11:56) Для AVR ... Apr 27 2010, 01:53  singlskv Цитата(x736C @ Apr 27 2010, 05:53) С перв... Apr 27 2010, 20:58   x736C Цитата(singlskv @ Apr 28 2010, 00:58) у В... Apr 28 2010, 00:36    singlskv Цитата(x736C @ Apr 28 2010, 04:36) Перепр... Apr 28 2010, 08:03 Vny4ek ЦитатаВсе плохо, Вы, как оказалось, не только напи... Apr 26 2010, 17:12 smac Цитата(Vny4ek @ Apr 26 2010, 21:12) Инфы ... Apr 26 2010, 19:45 sigmaN Vny4ek вот как-то так:
установить бит в байтеКодb ... Apr 26 2010, 19:55 Vny4ek sigmaN, спасибо большое. То что написали после вас... Apr 27 2010, 05:02 zltigo Цитата(Vny4ek @ Apr 27 2010, 07:02) sigma... Apr 27 2010, 07:35 sergeeff Jr. Я по простому сделал (как и сказали, при помощи та... Apr 27 2010, 06:15 akl Может.
Apr 27 2010, 09:16 sergeeff Jr. Блин крутые специалисты, вы проблему решаете или п... Apr 27 2010, 22:55 aaarrr Цитата(sergeeff Jr. @ Apr 28 2010, 02:55)... Apr 27 2010, 23:29 sergeeff Jr. Я решаю задачи (взяв AVR с большим количеством пам... Apr 28 2010, 00:09 aaarrr Цитата(sergeeff Jr. @ Apr 28 2010, 04:09)... Apr 28 2010, 00:22 sigmaN ЦитатаА во вторых человек настолько хреново разбир... Apr 28 2010, 02:55 ASN sergeeff Jr
Тут речь не оптимизации ради оптимизац... Apr 28 2010, 15:21 x736C Да, облажался. Мне показалось, АВР делает цикличес... Apr 28 2010, 09:04 sergeeff Jr. Такое впечатление, что все ваши начальники понимаю... Apr 28 2010, 13:56 zltigo Цитата(sergeeff Jr. @ Apr 28 2010, 15:56)... Apr 28 2010, 14:11 aaarrr Цитата(sergeeff Jr. @ Apr 28 2010, 17:56)... Apr 28 2010, 14:13 sergeeff Jr. Байт конечно, очепятался я.
Я не говорил, что я н... Apr 28 2010, 16:49 KRS Цитата(sergeeff Jr. @ Apr 28 2010, 20:49)... Apr 28 2010, 22:11 sergeeff Если обратите внимание, в последних книгах по прог... Apr 28 2010, 17:35 aaarrr Цитата(sergeeff Jr. @ Apr 28 2010, 20:49)... Apr 28 2010, 18:05 sergeeff Это все на тему - сделать работоспособное устройст... Apr 28 2010, 20:41 Vny4ek Всем большое спасибо за помощь. Сам понимаю что ту... Apr 30 2010, 06:27
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|