??? 07/25/05 09:03 Read: times |
#97955 - deep understanding.... Responding to: ???'s previous message |
C is a wonderful language, very flexible, very efficient ... but the flexibility implies that syntaxically correct code could produce unwanted results.
I think you should learn C (forget about c++ in embeded systems, OOP features will kill performance if you use them) through pc programming. If you happen to know a little bit about i386 ASM look at the dumps of your program (in object file so you dont get the dump of statically linked functions) and see what operators do ( use unoptimized compiler mode of course) If you happen to be running a linux/gnu machine you could do this using gcc/objdump quite easily... Of course, you could always use your µc dev kit compiler that should provide an ASM dump... When you understand how C compilers handle things (of course thsi is compiler specific but there are similarities) you will have enough knowledge to start with. The Kernigam and Richie book is a must have (sometimes even name the new testament by some fanatics :-). Never forget that that C is merely a description language that happens to be interpreted by binary code generators programs (compilers), and specifically for mcu check that your way of describing an algorithm in even if correct is also "performance friendly" Good luck Best regards Benjamin Damet |
Topic | Author | Date |
Learning C language - advice | 01/01/70 00:00 | |
take both | 01/01/70 00:00 | |
Yes - take both! | 01/01/70 00:00 | |
Thanks for the advice! | 01/01/70 00:00 | |
Find a good book! | 01/01/70 00:00 | |
Which area will you work in.. | 01/01/70 00:00 | |
Why this forum? | 01/01/70 00:00 | |
Learning C for 8051 | 01/01/70 00:00 | |
C for 8051 | 01/01/70 00:00 | |
There is no C/C++ | 01/01/70 00:00 | |
deep understanding.... | 01/01/70 00:00 | |
Has anyone got opinion on these books? | 01/01/70 00:00 | |
C & The 8051 | 01/01/70 00:00 | |
C & The 8051 | 01/01/70 00:00 | |
Amazon | 01/01/70 00:00 | |
beware | 01/01/70 00:00 | |
thanks for the inputs!![]() | 01/01/70 00:00 |