Keil™, An ARM® Company

Cx51 User's Guide

COMPACT Compiler Directive

Abbreviation CP
Arguments None.
Default SMALL
µVision Options — Target — Memory Model.
Description 

This directive selects the COMPACT memory model.

In the COMPACT memory model, all function and procedure variables and local data segments reside in the external data memory of the 8051 system. This external data memory may be up to 256 bytes (one page) long. With this model, the short form of addressing the external data memory through @R0/R1 is used.

Regardless of memory model type, you may declare variables in any of the 8051 memory ranges. However, placing frequently used variables (such as loop counters and array indices) in internal data memory significantly improves system performance.

Note

  • The stack required for function calls is always placed in IDATA memory.
See Also LARGE, ROM, SMALL
Example 
C51 SAMPLE.C COMPACT

#pragma compact

Related Knowledgebase Articles