У меня в IAR такой косвенный вызов функции уложился в 10 байт(+)
(«Телесистемы»: «Конференция «Микроконтроллеры и их применение»»)

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

Отправлено 0men 21 апреля 2003 г. 00:31
В ответ на: Ответ: отправлено ДМ 20 апреля 2003 г. 22:38


12 void main( void )
13 {
14 ArrFunc[ 0 ]( );
\ __nearfunc void main();
\ main:
\ 00000000 .... LDI R30,LOW(ArrFunc)
\ 00000002 .... LDI R31,(ArrFunc) >> 8
\ 00000004 9105 LPM R16,Z+
\ 00000006 9114 LPM R17,Z
\ 00000008 01F8 MOVW R31 : R30,R17 : R16
\ 0000000A 9509 ICALL


Это точно, за все надо платить :)

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

Ответы



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

E-mail: info@telesys.ru