STC32G手册中指令表示符号 dir16、dis的区别问题。
本帖最后由 fxg2024 于 2024-6-30 10:07 编辑STC32G手册中指令表示符号 dir16、dis的区别问题?
手册中dir16: 16位内存地址(0x000000~0x00FFFF);dis:一般在变址寻址方式中作为0到64KB偏移值的间接内存位置(0x000000~0xFFFFFF)
如:
MOV WRj,Dir16 机器码为: 01111110[地址高字节][地址低字节]
MOV WRjd,@WRjs+dis机器码为:01001001[偏移高字节][偏移低字节]
Dir16 代表一个16位的直接地址
dis 表示一个16位的偏移值,这个值代表一个16位的偏移地址,和前面寄存器的内容相加,得到一个存储地址。
在实际程序指令应用时,具体指令实例如下
MOV WR0,EDATA 200H
MOV WR2,@WR6+200H
这里发现,作为Dir16 用时,要加EDATA;作为dis时,直接写,不用加其他前缀。
提醒:注意使用时不要超过STC32G的EDATA地址范围
页:
[1]