CPU(中央处理器)是现代计算机的核心部件,因此CPU的规格与主频常常被用来衡量一台计算机的性能。
CPU的基本组成结构由以下几部分组成:
1)时钟单元:产生所有模块同步运转的基准信号,和一些中断信号;
2)存储单元:用来存储代码和数据;
3)存储控制单元:用来协调代码指令的读取和数据部分的读写;
4)指令计数器:控制指令按顺序或者指定的跳跃执行;
5)算术运算单元:执行运算,保存运算结果等操作;
6)CPU控制单元:是cpu的核心模块,通过缓存指令,解释指令,来产生其他模块的控制信号。
CPU的工作方式可以简单表达为:
从上面的基本结构可以看出,CPU的根本任务就是执行指令,因此一款cpu的设计也包括指令集的设计,即该cpu能执行哪些操作和功能。
例:设计一条无符号加法运算指令
指令长度:16比特(表示该cpu为16位cpu)
指令结构:12比特的操作数(立即寻址:操作数包含在指令中,立即数),4比特操作码(0110代表ADD指令,执行加法运算)
当程序执行到该条指令时,判别操作码,然后将操作数送与运算单元,与运算单元中的缓存结果相加,并将结果继续缓存到运算单元。
指令就是一串二进制序列,将刚刚设计的指令用一个便于记忆的方式表达——ADD(助记符),每一款cpu都有一个包含和所支持的一个指令集。 当我们想让cpu完成某一系列的功能即执行一系列的指令,可以写一串的二级制序列来实现——机器代码,或者一串助记符来实现——汇编代码,或者一串更高级的表达方式——c语言代码、c 代码等。当程序用高级语言实现后,再交于解释器,编译器等处理,最终变成机器代码即一串二进制序列,在将其放入cpu的存储单元中,这样cpu就能按照我们的意愿进行工作了。