??? 04/21/04 07:38 Read: times |
#68947 - RE: Keil C51 uses DJNZ Responding to: ???'s previous message |
hi,
the compiler might "suddenly" stop using DJNZ; eg, if all the available registers get used up for other things Andy, if there is not enough registers for DJNZ then compiler uses memory locations because DJNZ may be used both with registers and direct memory. For example, next code: volatile unsigned char x; unsigned char a=0; for (x=200; x > 0; x--) a++;is compiled into: CLR A MOV R7,A MOV 0x08,#0xC8 FOR_CYCLE: INC R7 DJNZ 0x08,FOR_CYCLE Regards, Oleg |
Topic | Author | Date |
Keil Halt | 01/01/70 00:00 | |
Use Assembler. | 01/01/70 00:00 | |
RE: Keil Halt | 01/01/70 00:00 | |
RE: Keil C51 uses DJNZ | 01/01/70 00:00 | |
RE: Keil C51 uses DJNZ | 01/01/70 00:00 | |
RE: Keil C51 uses DJNZ | 01/01/70 00:00 | |
Optimise your C | 01/01/70 00:00 | |
RE: DJNZ | 01/01/70 00:00 | |
RTFM? | 01/01/70 00:00 | |
RE: RTFM? | 01/01/70 00:00 | |
RE: RTFM? | 01/01/70 00:00 | |
RE: RTFM? | 01/01/70 00:00 | |
RE: RTFM? | 01/01/70 00:00 | |
RE: RTFM? | 01/01/70 00:00 | |
Keil Halt - Primer | 01/01/70 00:00 | |
RE: Keil Halt - Primer | 01/01/70 00:00 | |
This way lies disaster!!![]() | 01/01/70 00:00 | |
RE: Keil Halt | 01/01/70 00:00 |