hi.
i have written a program which does a lot of very complex and clever things. but it is very big. it is very big. how can i compress it in the rom? like upx does on linux. how can can i decompress it. there is no decompress function in keil.
The processor can't run compressed code.
So architectures where compressed code are stored in flash are decompressing that code and placing the decompressed result in RAM - the processor then runs the program from RAM.
In short - they use the flash memory as a type of hard drive, similar to how programs are run on a normal PC.
"he said use some ddr ram for it."
Who is "he"?
Do you really have a 8051 chip that supports DDR memory???