KF8的11种数据传送指令详析
MOVdir数据传送指令
语法: MOVdir
操作数: dir,00H~7FH
操作: dir←(dir)
受影响标志位:Z
说明:将通用寄存器或特殊寄存器 dir的数据送给dir单元,单周期指令 MOVRn ,dir数据传送指令
语法: MOVRn ,dir
操作数: dir,Rn。
操作: Rn←(dir)
受影响标志位:无
说明:将将通用寄存器或特殊寄存器 dir的数据送给Rn寄存器组单元,单 周期指令 MOVdir ,Rn数据传送指令
语法: MOVdir ,Rn
操作数: Rn,dir。
操作: dir←(Rn)
受影响标志位:无
说明:将寄存器组Rn 的数据传送给通用寄存器或特殊功能寄存器 dir,单周 期指令 MOVRn ,#data数据传送指令
语法: MOVRn ,#data
操作数: #data 八位立即数,00H~FFH
操作: Rn←data
受影响标志位:无
说明:将8 位立即数送给寄存器组 Rn单元,单周期指令 MOVRn ,Rs数据传送指令
语法: MOVRn ,Rs
操作数: Rn,Rs。
操作: Rn←(Rs)
受影响标志位:无
说明:将寄存器组Rs 单元里的数值传送给寄存器组 Rn单元,单周期指令 LDRn ,数据传送指令
语法: LDRn ,
操作数: Rs 单元数据内容所指向的地址单元的数据,
操作: Rn←
受影响标志位:无
说明:将寄存器组Rs单元里面的内容所指的单元地址的内容传送给Rn单元, 单周期指令 ST ,Rs 数据传送指令
语法: ST ,Rs
操作数: 寄存器组 Rs 单元内容,
操作: ←Rs
受影响标志位:无
说明:将寄存器组 Rs 单元内容送到 Rn 的内容所指的地址单元,单周期指令 SWAPRRn ,dir 半字节交换指令
语法: SWAPRRn ,dir
操作数: Rn ,dir
操作: Rn<7:4>=dir<3:0>
Rn<3:0>=dir<7:4>
受影响标志位:无
说明:将寄存器组Rn 的高低半字节分别于通用寄存器组或特殊功能寄存器 dir 的低高半字节进行相互交换,一般用来保护寄存器的值,在中断程序处 理之前要进行保护特殊功能寄存器状态不受影响。单周期指令
示例:
SWAPR R1 ,PSW
MOV PSW_TEMP, R1 SWAPdir 半字节交换指令
语法: SWAPdir
操作数: dir
操作: dir<7:4>=dir<3:0>
dir<3:0>=dir<7:4>
受影响标志位:无
说明:将通用寄存器或特殊功能寄存器的值进行高低半字节的交换,通常用 来进行半字节交换,交换高低位状态。单周期指令 MOVP dir 给 PCH 赋值立即数
语法: MOVPdir
操作数: dir
操作: PCH=dir
受影响标志位:无
说明: 立即数赋值到 PCH 寄存器,用户实现 CALL 或 JMP 的高 bit 位地址修 改。仅增强型型号具有该指令。 MOVB dir 给 BANK 赋值立即数
语法: MOVBdir
操作数: dir
操作: BANK=dir
受影响标志位:无
说明:将区定位数据直接赋值到 BANK 寄存器。仅增强型型号具有该指令。
页:
[1]