本帖最后由 fxg2024 于 2024-6-14 08:52 编辑
请教STC32G系列单片机 MOV Rm,@WRj+dis 类似指令的执行原理?
MOV Rm,@WRj+dis
MOV @WRj+dis,Rm
MOV Rm,@DRk+dis
MOV @DRk+dis,Rm
MOV WRj,@WRj+dis
MOV @WRj+dis,WRj
MOV WRj,@DRk+dis
MOV @DRk+dis,WRj STC32G系列单片机的汇编指令中,有这么几条指令,和传统8051单片机不同,想问问其指令执行原理。
1、这几条指令是否可以属于 变址寻址方式(基地址+偏移地址) ?
2、dis 该怎么解释?
我在程序中试了以下:
- MOV R0,@WR0+P0
- MOV R0,@WR0+20H
- MOV R0,@WR0+TCON
复制代码
这几种情况,编译不报错。
下面几种情况
- MOV R0,@WR0+R4
- MOV R0,@WR0+A
- MOV R0,@WR0+DPTR
- MOV R0,@WR0+WR4
- MOV R0,@WR0+DR4
复制代码
编译都报错,error A12: ILLEGAL OPERAND
3、@WRj+dis 中是否可以说 dis是基地址 WRJ是偏移地址 ?
4、传统8051单片机中,MOV Rm,Rm 是错指令,STC32G系列单片机中,这种指令是正确的,这是什么原因? |