ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
25 ноября
34879
Звероящер (06.07.2005 11:58, просмотров: 2207)
Вопрос спецам по Сям (IAR 51 and Keil) :-) Тупой вопрос по оптимизации... Нужно сделать задержку типа:
	UCHAR b=0;
	UCHAR a=0;
	
        do
        { do
          { __no_operation();
          } while(--b);
	}while(--a);

Keil генерит такой код:
         CLR      A
         MOV      R7,A
         MOV      R6,A
C:0x0017 NOP      
         DJNZ     R7,C:0017
         DJNZ     R6,C:0017
Что есть очень хорошо.

А вот IAR такой:
  00000E  79 00         MOV   R1,#0x00
  000010  78 00         MOV   R0,#0x00
  000012  00            NOP
  000013  19            DEC   R1
  000014  E9            MOV   A,R1
  000015  70 FB         JNZ   0xF6
  000017  18            DEC   R0
  000018  E8            MOV   A,R0
  000019  70 F7         JNZ   0xEE
Что не есть хорошо. Вопрос такой, что можно в IARe подергать, чтобы он генерил вариант как в Кейле? Оптимизацией я баловался...