Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
06/29/05 18:16
Read: times


 
#96217 - To be taken with a pinch of salt
Responding to: ???'s previous message
Vijayganesh S said:
this will be helpful for those in the learning stage.
http://www.eventhelix.com/RealtimeM...PPCode.htm

Note that this is a general page - not everything stated is applicable to the 8051.
In particular, Keil C51 (and other 8051 'C' compilers, I think) does not use the stack for parameter passing nor for local variables.

On an 8051, maximising local variables can reduce overall memory usage, as the compiler can overlay locals.

The bit about keeping related code & data together does not apply to the 8051 - it doesn't have a cache, and it has separate code & data memory spaces anyhow.

"prefer int over char" is wrong for an 8051. An 8051 is an 8-bit processor, so char is best unless something bigger is specifically needed.
Keil has an option to disable the standard ANSI integer promotions.



article on C to assembly translation http://www.eventhelix.com/RealtimeM...lation.htm

That link is for a 68k; it does not apply to the 8051 - especially the stuff about Stack Frames.

This sort of detail will be compiler-specific - so you must always check it against the Manual for your specific compiler.


List of 54 messages in thread
TopicAuthorDate
code optimization            01/01/70 00:00      
   erm...            01/01/70 00:00      
   guidelines            01/01/70 00:00      
   Duh !!!!            01/01/70 00:00      
      yes its a link to learn optimization            01/01/70 00:00      
         the links provided            01/01/70 00:00      
            Really Wicked Optimisations!            01/01/70 00:00      
            counters in loops?            01/01/70 00:00      
               DJNZ            01/01/70 00:00      
                  ahh            01/01/70 00:00      
                  DOES it ?            01/01/70 00:00      
                     on Keil forum            01/01/70 00:00      
                     Yes!            01/01/70 00:00      
                     Of course it does...            01/01/70 00:00      
                        But...            01/01/70 00:00      
                           asking too much            01/01/70 00:00      
                              Not at all            01/01/70 00:00      
                           Maybe it does...            01/01/70 00:00      
                              Not when I tried it.            01/01/70 00:00      
                                 Lopp Rtation            01/01/70 00:00      
                        While you're there, Jon...            01/01/70 00:00      
                           how like a salt block?            01/01/70 00:00      
                              oh -- got it            01/01/70 00:00      
                           Overlaying and Scope            01/01/70 00:00      
                              Does it matter?            01/01/70 00:00      
                                 debugging            01/01/70 00:00      
   Previously on 8052.com            01/01/70 00:00      
      yes its in the board            01/01/70 00:00      
      IAR Article - Getting the Least            01/01/70 00:00      
   To be taken with a pinch of salt            01/01/70 00:00      
      more like a salt block            01/01/70 00:00      
      Re            01/01/70 00:00      
         switch            01/01/70 00:00      
            Switch/Case Optimization            01/01/70 00:00      
               Re: Switch/Case Optimization            01/01/70 00:00      
                  Look Why            01/01/70 00:00      
               Jon, I may have made a mistake            01/01/70 00:00      
         Big switches            01/01/70 00:00      
         Was?            01/01/70 00:00      
            Link to newer version            01/01/70 00:00      
               Hitex; Chris Hills            01/01/70 00:00      
                  Draft!            01/01/70 00:00      
   intermediate values in lookup tables            01/01/70 00:00      
      Generating lookup tables            01/01/70 00:00      
   a general statement on code optimization            01/01/70 00:00      
      Craft            01/01/70 00:00      
      Corrections            01/01/70 00:00      
         urban legends            01/01/70 00:00      
            Been there.            01/01/70 00:00      
               I think this is closer to the truth            01/01/70 00:00      
                  I just realize that the above            01/01/70 00:00      
               EE/CS            01/01/70 00:00      
            Micro-Optimisations - real-life example            01/01/70 00:00      
               manual optimization            01/01/70 00:00      

Back to Subject List