I was trying to generate .elf file using C51 compiler. From my quick search in Keil official website, apparently C51 compiler could not generate .elf format, I might be wrong. So, I would like to understand the following items:
No.
It's Intel OMF - and, if you use CX51 and/or LX51, there are proprietary extensions.
Why do you think you need ELF ?
http://www.catb.org/esr/faqs/smart-questions.html#goal