ARM926ej-s header instructions and the reality comparison

0

When dealing with ARM926ej-s microcontroler there are still some uncertainties with a header which was supposed to be like this:

enter image description here

But in the boot program it is written like this:

__start:                                               /*label - allso an entry point*/
arm926ejs_reset:                                       /*label*/
    B     arm926ejs_reset_handler                      /*header - vector (0x00)*/
    .word   0x41676d69                                 /*header - magic (0x04)*/
    .word   0,0,0,0,0                                  /*header - execution_crc32 + Reserved0 (0x08)*/
image_type:                                            /*label*/
    .word   0x0000000A                                 /*header - ImageType (0x1C)*/
sizeOfPermanentCode:                                   /*label*/
    .word   (__image_size)                             /*header - ImageLength (0x20)/
    .word   0,0                                        /*header - ReleaseID + buildTime (0x24)*/
bootparameter:                                         /*label*/
    .word   0                                          /*sbzBootParameter (0x2C)*/
    .word   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0    /*cust_reserved + header_crc32 + Reserved1 (0x30)*/

arm926ejs_reset_handler:

1st i need to know how is it possible that labels don't take space? If i take this into consideration adresses match perfectly with a supplied picture. But I wonder why is there so many 0? Don't we need to specify something so that the header is valid?

Thanks.

assembly
header
arm
asked on Stack Overflow Nov 26, 2013 by 71GA • edited Nov 26, 2013 by 71GA

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0