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

using idata

i tried to make a space but it's still said "missing ';' before '_at_'"
i wrote :
char idata nim[14] _at_ 0x00;

and is idata starting address at 0x80?
and data starting address at 0x00?

so, if i want to set an array starting at the first address of idata, is it right if i define the array as idata and starting address at 0x00?

or i should starting at 0x80?

thanks very much

sincerly,
hardian

Parents
  • I created the following program:

    char idata nim[14] _at_ 0x00;
    
    void main (void)
    {
    }
    

    And compiled it with no errors. The following listing file was generated:

    C51 COMPILER V6.10  TEST                                                                   01/26/2001 19:19:14 PAGE 1   
    
    
    C51 COMPILER V6.10, COMPILATION OF MODULE TEST
    OBJECT MODULE PLACED IN .\test.OBJ
    COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\test.c DEBUG OBJECTEXTEND CODE SYMBOLS
    
    stmt level    source
    
       1          char idata nim[14] _at_ 0x00;
       2          
       3          void main (void)
       4          {
       5   1      }
       6          
    C51 COMPILER V6.10  TEST                                                                   01/26/2001 19:19:14 PAGE 2   
    
    ASSEMBLY LISTING OF GENERATED OBJECT CODE
    
    
                 ; FUNCTION main (BEGIN)
                                               ; SOURCE LINE # 3
                                               ; SOURCE LINE # 4
                                               ; SOURCE LINE # 5
    0000 22                RET     
                 ; FUNCTION main (END)
    
    C51 COMPILER V6.10  TEST                                                                   01/26/2001 19:19:14 PAGE 3   
    
    NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
    ====                                    =====   ======  ====    ======  ====
    
    
    main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
    nim. . . . . . . . . . . . . . . . . .  PUBLIC   IDATA  ARRAY    0000H  14
    
    
    MODULE INFORMATION:   STATIC OVERLAYABLE
       CODE SIZE        =      1    ----
       CONSTANT SIZE    =   ----    ----
       XDATA SIZE       =   ----    ----
       PDATA SIZE       =   ----    ----
       DATA SIZE        =   ----    ----
       IDATA SIZE       =   ----    ----
       BIT SIZE         =   ----    ----
    END OF MODULE INFORMATION.
    
    
    C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)
    

    Jon

Reply
  • I created the following program:

    char idata nim[14] _at_ 0x00;
    
    void main (void)
    {
    }
    

    And compiled it with no errors. The following listing file was generated:

    C51 COMPILER V6.10  TEST                                                                   01/26/2001 19:19:14 PAGE 1   
    
    
    C51 COMPILER V6.10, COMPILATION OF MODULE TEST
    OBJECT MODULE PLACED IN .\test.OBJ
    COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\test.c DEBUG OBJECTEXTEND CODE SYMBOLS
    
    stmt level    source
    
       1          char idata nim[14] _at_ 0x00;
       2          
       3          void main (void)
       4          {
       5   1      }
       6          
    C51 COMPILER V6.10  TEST                                                                   01/26/2001 19:19:14 PAGE 2   
    
    ASSEMBLY LISTING OF GENERATED OBJECT CODE
    
    
                 ; FUNCTION main (BEGIN)
                                               ; SOURCE LINE # 3
                                               ; SOURCE LINE # 4
                                               ; SOURCE LINE # 5
    0000 22                RET     
                 ; FUNCTION main (END)
    
    C51 COMPILER V6.10  TEST                                                                   01/26/2001 19:19:14 PAGE 3   
    
    NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
    ====                                    =====   ======  ====    ======  ====
    
    
    main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
    nim. . . . . . . . . . . . . . . . . .  PUBLIC   IDATA  ARRAY    0000H  14
    
    
    MODULE INFORMATION:   STATIC OVERLAYABLE
       CODE SIZE        =      1    ----
       CONSTANT SIZE    =   ----    ----
       XDATA SIZE       =   ----    ----
       PDATA SIZE       =   ----    ----
       DATA SIZE        =   ----    ----
       IDATA SIZE       =   ----    ----
       BIT SIZE         =   ----    ----
    END OF MODULE INFORMATION.
    
    
    C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)
    

    Jon

Children
No data