哈佛结构是为了高速数据处理而采用的,因为可以同时读取指令和数据(分开存储的)。大大提高了数据吞吐率。缺点是结构复杂。
通用微机指令和数据是混合存储的,结构上简单,成本低。假设是哈佛结构:你就得在电脑安装两块硬盘,一块装程序,一块装数据,内存装两根,一根储存指令,一根存储数据……
是什么结构要看总线结构的。51单片机虽然数据指令存储区是分开的,但总线是分时复用得,所以顶多算改进型的哈佛结构,呵呵。ARM9虽然是哈佛德,但是之前的版本也还是冯诺结构。早期的X86能迅速占有市场,一条很重要的原因,正是靠了冯 诺依曼这种实现简单,成本低的总线结构。楼上的兄弟有一点说的不确切,现在的处理器虽然外部总线上看是诺依曼结构的,但是由于内部CACHE的存在,因此实际上内部来看已经算是改进型哈佛结构的了。
这个问题21ic上讨论翻了无数个帖子,没有什么定论,见仁见智。
至于优缺点,呵呵,楼上的兄弟说的就比较的明白了。哈佛结构就是复杂,对外围设备的连接与处理要求高,十分不适合外围存储器的扩展。所以早期通用CPU难以采用这种结构。而单片机,由于内部集成了所需的存储器,所以采用哈佛结构也未尝不可。现在的处理器,依托CACHE的存在,已经很好的将二者统一起来了。