|
Алгоритм, перестановка битов |
|
|
|
Aug 1 2006, 05:37
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 4-07-06
Пользователь №: 18 558

|
Помогите найти алгоритм наиболее быстрый, для перестановки битов R->R ----- 0->7 1->6 2->5 3->4 4->3 5->2 6->1 7->0 1). Простой, сдвиговый с иполозование бита переноса региста флагов ldi cnt,8 loop: rol tmp ror tmp1 dec cnt brne loop mov tmp,tmp1 занимает 8байт памяти, время выполнения 5мкс, использование 3регистров, и если сохранять регистр флагов, то еще больше
|
|
|
|
|
 |
Ответов
|
Aug 2 2006, 04:41
|
Местный
  
Группа: Свой
Сообщений: 303
Регистрация: 3-03-05
Пользователь №: 3 044

|
Цитата(Slavik_tz @ Aug 1 2006, 08:37)  1). Простой, сдвиговый с иполозование бита переноса региста флагов ldi cnt,8 loop: rol tmp ror tmp1 dec cnt brne loop mov tmp,tmp1 занимает 8байт памяти, время выполнения 5мкс, использование 3регистров, и если сохранять регистр флагов, то еще больше А так больше нравиться? Код ldi tmp1,$80 loop: rol tmp ror tmp1 brcc loop mov tmp,tmp1;это не обязательно, если ожидать и использовать результат в tmp1
Сообщение отредактировал CDT - Aug 2 2006, 04:54
--------------------
Опыт - чудесная вещь: легко использовать, можно продать, трудно пропить.
|
|
|
|
|
Aug 2 2006, 05:39
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 4-07-06
Пользователь №: 18 558

|
Цитата(CDT @ Aug 2 2006, 07:41)  Цитата(Slavik_tz @ Aug 1 2006, 08:37)  1). Простой, сдвиговый с иполозование бита переноса региста флагов ldi cnt,8 loop: rol tmp ror tmp1 dec cnt brne loop mov tmp,tmp1 занимает 8байт памяти, время выполнения 5мкс, использование 3регистров, и если сохранять регистр флагов, то еще больше
А так больше нравиться? Код ldi tmp1,$80 loop: rol tmp ror tmp1 brcc loop mov tmp,tmp1;это не обязательно, если ожидать и использовать результат в tmp1 Класный алгоритм, мне понравился
|
|
|
|
Сообщений в этой теме
Slavik_tz Алгоритм Aug 1 2006, 05:37 DeXteR 3->4
4->3
Эти биты можеш поменять мсестами ... Aug 1 2006, 06:22 Andy_F Для PIC'а это выглядит так:
<CODE>
;***... Aug 1 2006, 07:58 add Цитатазанимает 8байт памяти, время выполнения 5мкс... Aug 1 2006, 08:15 singlskv Цитата(add @ Aug 1 2006, 12:15) rol tmp
r... Aug 1 2006, 16:45  singlskv Или вот так:
Код; 13 words / 13 cycles
... Aug 1 2006, 20:36  Slavik_tz Цитата(singlskv @ Aug 1 2006, 19:45) Цита... Aug 2 2006, 06:11 pokos Если использовать таблицу в 256 значений, то получ... Aug 1 2006, 08:23 Andy Mozzhevilov Цитата(Slavik_tz @ Aug 1 2006, 11:37) зан... Aug 1 2006, 08:26 _Bill Цитата(Slavik_tz @ Aug 1 2006, 08:37) Пом... Aug 1 2006, 12:25 Slavik_tz Всем большое спасибо за помощь!!! Aug 2 2006, 05:27 add Цитата; 13 words / 13 cycles
; tmp= abcd... Aug 2 2006, 06:11 Andy Mozzhevilov Цитата(add @ Aug 2 2006, 12:11) да...век ... Aug 2 2006, 06:18 singlskv Цитата(add @ Aug 2 2006, 10:11) да...век ... Aug 2 2006, 07:22
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|