Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

как на С (АВР) лучше скомпоновать 4 байта в long ?

Отправлено ыфефт 22 марта 2007 г. 16:34


делаю так :

part_info->sectors = ((uint32_t)buf[35] << 24) | ((uint32_t)buf[34] << 16) | ((uint32_t)buf[33] << 8) | ((uint32_t)buf[32]);

получается страшное :

69e: 83 a1 ldd r24, Z+35 ; 0x23
6a0: 99 27 eor r25, r25
6a2: aa 27 eor r26, r26
6a4: bb 27 eor r27, r27
6a6: b8 2f mov r27, r24
6a8: aa 27 eor r26, r26
6aa: 99 27 eor r25, r25
6ac: 88 27 eor r24, r24
6ae: 22 a1 ldd r18, Z+34 ; 0x22
6b0: 33 27 eor r19, r19
6b2: 44 27 eor r20, r20
6b4: 55 27 eor r21, r21
6b6: a9 01 movw r20, r18
6b8: 33 27 eor r19, r19
6ba: 22 27 eor r18, r18
6bc: 82 2b or r24, r18
6be: 93 2b or r25, r19
6c0: a4 2b or r26, r20
6c2: b5 2b or r27, r21
6c4: 21 a1 ldd r18, Z+33 ; 0x21
6c6: 33 27 eor r19, r19
6c8: 44 27 eor r20, r20
6ca: 55 27 eor r21, r21
6cc: 54 2f mov r21, r20
6ce: 43 2f mov r20, r19
6d0: 32 2f mov r19, r18
6d2: 22 27 eor r18, r18
6d4: 82 2b or r24, r18
6d6: 93 2b or r25, r19
6d8: a4 2b or r26, r20
6da: b5 2b or r27, r21
6dc: 20 a1 ldd r18, Z+32 ; 0x20
6de: 33 27 eor r19, r19
6e0: 44 27 eor r20, r20
6e2: 55 27 eor r21, r21
6e4: 82 2b or r24, r18
6e6: 93 2b or r25, r19
6e8: a4 2b or r26, r20
6ea: b5 2b or r27, r21
6ec: 8c 83 std Y+4, r24 ; 0x04
6ee: 9d 83 std Y+5, r25 ; 0x05
6f0: ae 83 std Y+6, r26 ; 0x06
6f2: bf 83 std Y+7, r27 ; 0x07


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 567:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru