This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

C and Assembler

How could I compare C and Assempler on a 8051.
What are the advantages and disadvantages of each Programming language.
I'm happy if anyone knows something about that or even know some good Homepages where I can find some useful information
thanks

Parents
  • I'll add to the previous replies that IMHO another important reason to know assembly-level programming is so that you can understand what the processor is doing when it's running your C code and doesn't do what you expect ... The trouble is, you don't reach that level of understanding until you've written a moderate amount of assembly that works.

    Writing very short assembly code is quite different from writing 64+ KBytes of working assembly. I wrote embedded code in assembly for some 15+ years -- now, I start everything in C. But I do still write assembly when it's required, especially when doing things that C does not inherently support (e.g. playing with the stack). And I examine a lot of C compiler output (in assembly) to judge the quality (and sometimes correctness) of the compiler's output.

    In short, I think that you will be a better C programmer if you have a working knowledge of assembly-level programming. Perhaps a good way to start is do your work in C, and fiddle around after hours in assembly.

    Regards,

Reply
  • I'll add to the previous replies that IMHO another important reason to know assembly-level programming is so that you can understand what the processor is doing when it's running your C code and doesn't do what you expect ... The trouble is, you don't reach that level of understanding until you've written a moderate amount of assembly that works.

    Writing very short assembly code is quite different from writing 64+ KBytes of working assembly. I wrote embedded code in assembly for some 15+ years -- now, I start everything in C. But I do still write assembly when it's required, especially when doing things that C does not inherently support (e.g. playing with the stack). And I examine a lot of C compiler output (in assembly) to judge the quality (and sometimes correctness) of the compiler's output.

    In short, I think that you will be a better C programmer if you have a working knowledge of assembly-level programming. Perhaps a good way to start is do your work in C, and fiddle around after hours in assembly.

    Regards,

Children
No data