hello all, i am new for keil. i want to start all my 8051 programing in C. I want to know, what actually gets converted into assembly laguage when i use ready made c-function like printf(), scanf(), serinit(), getch(), putch(), getchr(), putchr(), etc.... if any one can help pls give rply..... any e-book or soft material or any links on this topic will be highly appreciated.
Actually, nothing gets converted to assembler!
These are Library files - they are supplied to you already in Object (compiled) form. The Linker simply extracts them from the Library, and links them with your own code.
Take a look at the diagram here: http://www.keil.com/product/devproc.asp?t=c51&h=1
"any e-book or soft material or any links on this topic will be highly appreciated"
You do have a good 'C' textbook to start with, don't you...?
Lots more booklists and links here: www.8052.com/.../read.phtml
"i want to start all my 8051 programing in C"
You will never be able to escape some need for assembler - whether it's the startup code that's needed before a 'C' program can even get going, or debugging your code at the machine instruction level.
Also, for embedded 8051 applications, you will not be able to escape needing to know hardware details.
yea i do have, but they do not give information on how these functions ill be interpretated by keil type compiler, they simply states wat o/p on monitor u ill have when u use them.
wat actually i want to know is that, when i use this functions, wat actually it configure in 8051 SFR, so on the basis of this i can configure my hardware.
and whether these function are costumizable to fullfill my hardware needs.
yea i know that. i want to know these functions so that i can accordingly configure my hardware, or other way round, depending on my hardware requirement i can use any of these functions.
"when i use this functions, wat actually it configure in 8051 SFR, so on the basis of this i can configure my hardware."
You need to refer to the appropriate reference Manual for the compiler that you're using; in Keil's case, it is:
http://www.keil.com/support/man/docs/c51/c51_library.htm
"whether these function are costumizable to fullfill my hardware needs"
again, see the Library reference in the Manual; eg,
http://www.keil.com/support/man/docs/c51/c51_lib_source.htm
"You do have a good 'C' textbook to start with, don't you...?"
"yea i do have, but ... they simply states wat o/p on monitor u ill have when u use them.
Please, stop the SMS abbreviations - is it too much effort to write "you" in full?
Anyhow, I hope your textbook doesn't really say that printf et al write to the monitor.
Hopefully, your text book says that printf et al write to stdout - and explains that this may or may not happen to be the monitor screen on your particular system...
The Keil Manual clearly states how the Keil implementation of printf produces its output: http://www.keil.com/support/man/docs/c51/c51_printf.htm (see the Notes)
@Andy Neil
Hey thanx for ur reply...... the links provided by u, answers my quetion!!
and by the way y u got so angry on my use of abbrt.?? r they so unreadable??
They are not unreadable, but they show that you would rather burden several readers with deciphering them instead of going through the effort of typing a few more letters.
Remember: Unlike SMS on cellphones, forum posts have many, many readers, and you're making each of these readers decipher your abbreviations. Many of the readers might not even bother with that and just skip your posting.
Typing letters on an actual keyboard takes only a couple hundred milliseconds. Of course, if you're writing your messages using something other than a computer keyboard, you're excused.
@Christoph Frank
ok i admitt...... i will not do this any more here....