arm-cortex M3内存对齐问题

      之前在资料上看到ARM 处理器要四字节对齐,今天验证时发现字节不对齐也没有问题。

        环境:MDK5.1模拟器

        第1种方法:

        定义变量:

        uint8_t zyk_test1 = 0x12;

        uint8_t zyk_test2 = 0x12;

        在主函数均要引用下。

         printf("\nzyk_test1 = %x\n",zyk_test1);

 printf("\nzyk_test2 = %x\n",zyk_test2);

         代码正常运行。

        通过map文件查看,zyk_test1和zyk_test2地址如下:

        

        发现程序正常运行

         第2种方法:

            1:uint32_t* p_temp;

            2:p_temp = (uint32_t*)(0x20000005);

            3:*p_temp = 0x12345678;

            程序正常运行


猜你喜欢

转载自blog.csdn.net/zhuangyongkang/article/details/80302524