5.变址寻址(基址看存器变址寄存器间接寻址)m 例如:指令“M0VCA @A+DPTR"是变址寻址 变址寻址示意图 解:假设DPTR的内容为 2030H,累加器A的 DPTR ROM 内容为12H。 2030H 地址 该指令的功能是将 2030H和12H相加 +=2042H 56H 得到2042H作为操作 A 数地址,在程序存 储器中找到2042H单 12H 元,将其内容送至 累加器A 56H 平大学出版社
http://www.wenyuan.com.cn/webnew/ 变址寻址示意图 例如:指令“MOVC A, @A+DPTR”是变址寻址。 解:假设DPTR的内容为 2030H,累加 器A的 内容为12H。 该指令的功能是将 2030H 和 12H 相 加 , 得到2042H作为操作 数地址,在程序存 储器中找到2042H单 元,将其内容送至 累加器A。 DPTR ROM + = 2042H 2030H 12H 56H 56H A A7 A0 地址 5. 变址寻址(基址寄存器+变址寄存器间接寻址)
SINGHUA 6.相对寻址 VERSITY PRESS 00100101011011010 相对转移指令执行时,是以当前的PC值加上指令中规定的 偏移量re而形成实际的转移地址。这里所说的PC的当前值 是执行完相对转移指令后的PC值。 一般将相对转移指令操作码所在地址称为源地址,转移后 的地址称为目的地址。于是有: 目的地址=源地址+相对转移指令本身字节数+re 相对寻址只出现在相对转移指令中,以修正PC的方式来控 制程序的转移目的 清华大学出版社⑨
http://www.wenyuan.com.cn/webnew/ 6. 相对寻址 ◼ 相对转移指令执行时,是以当前的PC值加上指令中规定的 偏移量rel而形成实际的转移地址。这里所说的PC的当前值 是执行完相对转移指令后的PC值。 ◼ 一般将相对转移指令操作码所在地址称为源地址,转移后 的地址称为目的地址。于是有: 目的地址=源地址+相对转移指令本身字节数+rel ◼ 相对寻址只出现在相对转移指令中,以修正PC的方式来控 制程序的转移目的
SINGHUA 6.相对寻址 VERSITY PRES 00100101011011010 例 在程序存储器中 相对转移指令操作示意图 2000H单元有一条双字 ROM 节的相对转移指令 SJMP 75H 2000HI 80H 解:程序存储器2000H PC-000HI 2001H单元的内容80H、 2 2001H 75H 75H是“SJMP75H"的 75 2002H 机器语言代码 PC-2077H 2077H 清华大学出版社⑨
http://www.wenyuan.com.cn/webnew/ 例如: 在 程 序 存 储 器 中 相对转移指令操作示意图 2000H单元有一条双字 节的相对转移指令 “SJMP 75H”。 解:程序存储器2000H、 2001H单元的内容80H、 75H是“SJMP 75H”的 机器语言代码。 6. 相对寻址
SINGHUA 7.位寻址 NIVERSITY PRESS 00100101011011010 位寻址指令中给出的是位地址,即片内RAM某一单元中的 位。位地址在指令中用bit表示。 单片机片内RAM有两个区域可以进行位寻址。具体如下: 内部RAM中的位寻址区—该区共有16个单元,单元地址是 20H~2FH,一共有128位,位地址为00~7FH 持殊功能寄存器的可操作位——有11个单元地址能被8整除 的寄存器,它们都可以进行位寻址,实际可寻址位为83个。 清华大学出版社⑨
http://www.wenyuan.com.cn/webnew/ 7. 位寻址 ◼ 位寻址指令中给出的是位地址,即片内RAM某一单元中的一 位。位地址在指令中用bit表示。 ◼ 单片机片内RAM有两个区域可以进行位寻址。具体如下: ⚫ 内部RAM中的位寻址区——该区共有16个单元,单元地址是 20H~2FH,一共有128位,位地址为00~7FH。 ⚫ 特殊功能寄存器的可操作位——有11个单元地址能被8整除 的寄存器,它们都可以进行位寻址,实际可寻址位为83个
可寻址位在插今的表示方式 00100101011011010 ①直接使用位地址。 例:PSW寄存器的第5位可表示为D5H。 20H单元的第7位可表示为07H ②用位名称表示 例:PSW寄存器的第5位可表示为F0。 ③单元地址加位号表示。 例:PSW寄存器的第5位可表示为D0H.5。 20H单元的第7位可表示为20H.7 ④可以用寄存器名称加位号表示。 例:PSW寄存器的第5位可表示为PSW.5。 清华大学出版社⑨
http://www.wenyuan.com.cn/webnew/ 可寻址位在指令中的表示方式 ① 直接使用位地址。 例:PSW寄存器的第5位可表示为D5H。 20H单元的第7位可表示为07H。 ② 用位名称表示。 例:PSW寄存器的第5位可表示为F0。 ③ 单元地址加位号表示。 例:PSW寄存器的第5位可表示为D0H.5。 20H单元的第7位可表示为20H.7。 ④ 可以用寄存器名称加位号表示。 例:PSW寄存器的第5位可表示为PSW.5