如何学习计算机组成原理 一般来讲,这种课有两种上法: 1. 着重介绍汇编语言编程和接口技术,技巧性很强。 2. 着重介绍CPU及部分存储器之间的体系结构,顺带介绍汇编语言。 我自己在大学时学的是第二种,就给你说说这个好了。 1. 参考资料: (1) [美]David A. Patterson,计算机组成和设计:软件/硬件接口,清华大学出版社 (2)
http://ocw.mit.edu 这里能找到MIT用的相应课件,里面从头至尾介绍了一种被简化的CPU结构,包括各种实现细节,还提供免费的仿真程序供你使用。课程名称是Computation Structure 2. 先修知识: (1) 数字电路的基础知识,包括组合逻辑和时序逻辑的使用与设计,最好知道一点FPGA知识 (2) 至少一种高级程序设计语言,以C语言为最好 (3) 数据结构中关于堆栈的内容 3. 具体方法: 对于一种或两种特定的并且足够典型的计算机处理器,分块搞清各个组成部分,功能特点(最好与其它CPU)比较。掌握这种CPU的汇编语言,并利用它编制一些程序,尽量结合你搞清楚了的这种CPU的特点,提高程序效率。根据所学,自己设计实现一个至少16位指令集的CPU,优化之,最好用Verilog或VHDL进行设计。另外,MIT的网站上有大量习题可以作为练习。