1、CDP指令
CDP指令的格局为:
CDP{条件}协处理器编码,协处理器操作码1,意图寄存器,源寄存器1,源寄存器2,协处理器操作码2。
CDP指令用于ARM处理器告诉ARM协处理器履行特定的操作,若协处理器不能成功完结特定的操作,则发生未定义指令反常。其间协处理器操作码1和协处理器操作码2为协处理器即将履行的操作,意图寄存器和源寄存器均为协处理器的寄存器,指令不触及ARM处理器的寄存器和存储器。
指令示例:
CDP P3,2,C12,C10,C3,4;该指令完结协处理器P3的初始化
2、LDC指令
LDC指令的格局为:
LDC{条件}{L}协处理器编码,意图寄存器,[源寄存器]
LDC指令用于将源寄存器所指向的存储器中的字数据传送到意图寄存器中,若协处理器不能成功完结传送操作,则发生未定义指令反常。其间,{L}选项表明指令为长读取操作,如用于双精度数据的传输。
指令示例:
LDC P3,C4,[R0];将ARM处理器的寄存器R0所指向的存储器中的字数据传送到协处理器P3的寄存器C4中。
3、STC指令
STC指令的格局为:
STC{条件}{L}协处理器编码,源寄存器,[意图寄存器]
STC指令用于将源寄存器中的字数据传送到意图寄存器所指向的存储器中,若协处理器不能成功完结传送操作,则发生未定义指令反常。其间,{L}选项表明指令为长读取操作,如用于双精度数据的传输。
指令示例:
STC P3,C4,[R0];将协处理器P3的寄存器C4中的字数据传送到ARM处理器的寄存器R0所指向的存储器中。
4、MCR指令
MCR指令的格局为:
MCR{条件}协处理器编码,协处理器操作码1,源寄存器,意图寄存器1,意图寄存器2,协处理器操作码2。
MCR指令用于将ARM处理器寄存器中的数据传送到协处理器寄存器中,若协处理器不能成功完结操作,则发生未定义指令反常。其间协处理器操作码1和协处理器操作码2为协处理器即将履行的操作,源寄存器为ARM处理器的寄存器,意图寄存器1和意图寄存器2均为协处理器的寄存器。
指令示例:
MCR P3,3,R0,C4,C5,6;该指令将ARM处理器寄存器R0中的数据传送到协处理器P3的寄存器C4和C5中。
5、MRC指令
MRC指令的格局为:
MRC{条件}协处理器编码,协处理器操作码1,意图寄存器,源寄存器1,源寄存器2,协处理器操作码2。
MRC指令用于将协处理器寄存器中的数据传送到ARM处理器寄存器中,若协处理器不能成功完结操作,则发生未定义指令反常。其间协处理器操作码1和协处理器操作码2为协处理器即将履行的操作,意图寄存器为ARM处理器的寄存器,源寄存器1和源寄存器2均为协处理器的寄存器。
指令示例:
MRC P3,3,R0,C4,C5,6;该指令将协处理器P3的寄存器中的数据传送到ARM处理器寄存器中。