#include <AT892051.H> #pragma OPTIMIZE (9, SPEED) void main (void) { unsigned char R; R=0; // this statement always produces ASM-code: // CLR A // MOV R7,A // ...!!!!.... why not MOV R7,#0 (2 bytes 1 cycle instead of 2 bytes and 2 cycles) // but, if R=5; is produced code: MOV R7,#05H ;;;;;;; :o) //.... if(P1==0x55) R++; //... //... }