简述MCS-51内部数据存储器的空间分配。访问外部数据存储器和程序存储器有什么本质区别?
正确答案:
(1)8051内部128B的数据RAM区,包括有工作寄存器组区、位寻址区和数据缓冲区。各区域的特性如下:
①00H~1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0~R7。当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄存器间接寻址来访问。
②20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH。当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。
③30H~7FH为堆栈、数据缓冲区。
(2)访问外部数据存储器和程序存储器的本质区别是它们有各自不同的选通信号。访问外部数据存储器时,由数据指针DPTR提供寻址地址码,由RD/WR进行读/写选通;访问外部程序存储器时,由程序指针PC提供地址码,由PSEN进行读选通。
①00H~1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0~R7。当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄存器间接寻址来访问。
②20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH。当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。
③30H~7FH为堆栈、数据缓冲区。
(2)访问外部数据存储器和程序存储器的本质区别是它们有各自不同的选通信号。访问外部数据存储器时,由数据指针DPTR提供寻址地址码,由RD/WR进行读/写选通;访问外部程序存储器时,由程序指针PC提供地址码,由PSEN进行读选通。
答案解析:有
微信扫一扫手机做题