程序存储器取常量寻址的方式
发表:2023-08-29 12:06:26 阅读:127

 在下面寻址方式的示意图中,OP表示操作码;RA-MEND表示RAM空间的最高位地址;FLASHEND表示FLASH空间的最高位地址。

 

程序存储器取常量寻址

程序存储器取常量寻址方式的功能主要是从程序存储器Flash中读取常量,该寻址方式只能用于指令LPM。

程序存储器中常量的地址由地址寄存器Z的内容决定。地址寄存器Z的高1 5位用于选择常量在程序存储器中的地址,而最低位用于选择常量在程序存储器地址的高/低字节。当最低位为“0"时,选择常量在程序存储器地址的低字节;当最低位为“1”时,选择常量在程序存储器地址的高字节(如图3—9所示)。

例:LPM

操作:R0←(Z),即把以Z为指针的程序存储器的内容送到R0。若Z=$0100,则把地址为$0080的程序存储器的低字节内容送到RO。若Z=$0101.则把地址为$0080的程序存储器的高字节内容送到R0。

LPM R18,Z

操作:R1 8←(Z),即把以Z为指针的程序存储器的内容送到R1 8。若Z=$0100,则把地址为$0080的程序存储器的低字节内容送到R18。若Z=$0101,则把地址为$0080的程序存储器的高字节内容送到R18。

 

程序存储器取常量寻址方式

 

 

电子街推荐您:

 

单寄存器与双寄存器的直接寻址

I/O寄存器与数据存储器的直接寻址

数据存储器与带后增量的数据存储器的间接寻址

带预减量与带位移的数据存储器的间接寻址