This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

A problem for the assembly instruction LCR

Other Parts Discussed in Thread: TMS320F28232

Dear All:

         I'm using TMS320F28232 .

        There are some assembly codes as follows:

       FunArray:

                       .long  Fun1 ;

                       .long  Fun2;

                       .long  Fun3;

                       .long  Fun4;

        MOVL XAR2, #FunArray

         MOVZ AR0, #1

         MOVL XAR7, *+XAR2[AR0]

         LCR   *XAR7

        MOVZ AR0, #3

         MOVL XAR7, *+XAR2[AR0]

         LCR   *XAR7

        These codes are used to allocating some application  funcitons. AR0 is the index. #FunArray is the entry for all allocated functions, which are unified as an array.The address of allocated function is long type. So, the index should be an even number, but not odd.

         Although, in the former code, the index is exactly an odd number, and and the codes can run correctly ,which means that the code can allocate the correct address and find the correct funcion entry.

         I'm puzzle very much. I'm looking forward to your help. Thank you very much!

                                                                                                                                                  Your  sincere

                                                                                                                                                  Andrew Xiao