Аналогичный случай:
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено АКЛ 15 августа 2003 г. 00:58
В ответ на: помните, как то спрашивали, как подсчитать сколько единиц в int/long ? нашел тут такое решение (+) отправлено DASM 14 августа 2003 г. 22:19


Перевод BE -> LE:
unsigned int IntReverse(unsigned int v)
{
unsigned long t;
t = v ^ ((v << 16) | (v >> 16)); // EOR r1,r0,r0,ROR #16
t &= ~0xff0000; // BIC r1,r1,#&ff0000
v = (v << 24) | (v >> 8); // MOV r0,r0,ROR #8
return v ^ (t >> 8); // EOR r0,r0,r1,LSR #8
}

Не менее прозрачно и понятно

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru