Keil Logo

Version 3.4 Differences

  • _at_Keyword
    C51 supports variable location using the _at_ keyword. This new keyword allows you to specify the address of a variable in a declaration.
  • NOAMAKE Directive
    C51 now supports the NOAMAKE directive. This directive causes C51 to generate object modules without project information and register optimization records. This is necessary only if you want to use object files with older versions of C51 tools.
  • OH51 Hex File Converter
    The OHS51 Object-Hex-Symbol Converter provided with prior versions of C51 has been replaced with OH51.
  • Optimizer Level 6
    C51 now supports optimizer level 6 which provides loop rotation optimization. The resulting code is more efficient and executes faster. Refer to OPTIMIZE for more information.
  • ORDER Directive
    When you specify the ORDER directive, C51 locates variables in memory in the order in which they are declared in your source file.
  • REGFILE Directive
    C51 now supports the REGFILE directive which allows you to specify the name of the register definition file generated by the linker. This file contains information that optimizes the use of registers between functions in different modules.
  • vprintf and vsprintf Library Functions
    The vprintf and vsprintf library functions have been added.
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.