嵌入式系统初始化程序中有一段代码如下: mov r8,#RAM_BASE_BOOT //RAM_BASE_BOOT是重映射前内部RAM区地址 add r9, pc,#-(8+.-VectorTable) //VectorTale是异常向量表入口 ldmia r9!, {r0-r7} //读8个异常向量 stmia r8!, {r0-r7} //保存8个异常向量到RAM区 ldmia r9!, {r0-r4} //读5个异常处理程序绝对地址
stmia r8!, {r0-r4} //保存5个异常处理程序绝对地址到RAM区 请问其中的add r9, pc,#-(8+.-VectorTable)这一句做何解?其实主要是不明白#-(8+.-VectorTable)的含义。
哪位大侠指点一下 |