刚开始单片机内部是没有ROM的,需要通过P0、P1、P2口作为数据或地址总线扩展外部的ROM,寻址空间64KB,通过MPU控制 R、W等引脚对外部的存储器进行读写。16位的地址在内部的寻址空间也是64K,为什么传统51的RAM只有256个byte,我觉得可能是当时的制作工艺达不到为了节省内部空间制作了256个字节的RAM。
MPU主要进行逻辑控制与运算,通过通用的寄存器(组)进行中间结果的保存与运算,因为MPU对寄存器的读取速度远大于RAM和ROM。MPU加上ROM、RAM组成存储设备、集成IO进行数据的采集和输出、时钟(晶振)等够成了简单的微计算机系统。
通用的寄存器暂时存放数据和地址,减少MPU对存储器的访问,每个寄存器有8个触发器组成,多路转换器决定使用哪个寄存器,寄存器的多少由处理器的体系结构决定。
PC(程序计数器)是一个16位的寄存器,保存着下一次执行指令的地址,指令执行完后自动加1(跳转除外),如果一条指令有多个字节也是顺次执行。执行转移指令时,PC的内容由转移地址取代。
SP(堆栈指针)也是一个16位的寄存器。
运算器:累加器A、暂时器TMP、算术逻辑单元ALU、标志寄存器F及其他电路组成。
控制器:指令寄存器、指令译码器、定时控制电路组成。
存储器:地址寄存器、地址译码器、存储单元、控制电路、数据缓冲区。存储器可以按地址访问也可以按字节进行访问。
16位机
8086 16位机内部由EU指令执行单元、BIU总线接口部件。EU执行指令,BIU负责在CPU和存储器、IO之间完成指令和数据的传送。EU和BIU的执行是分开的。
16位机的地址线宽度为20根,寻址空间1M。
16位机中用IP代替8位机中的PC,PC保存的是绝对地址,IP保存的是偏移地址。
1、数据总线的宽度与单片机位长一样,8位机的数据总线8位,地址总线16位。