4.1.可编程器件的工作原理
(1)电子器件的发展方向:由模拟器件转向数字器件(比如电视机的从模拟电视到数字电视的发展);由ASIC(专用芯片,又称为硬编码,一个芯片只能完成一个任务,需要频繁更换芯片)转向可编程器件(CPU,其功能可后天被编程改变)。
(2)可编程器件的特点:CPU在固定频率的控制下有节奏的运行(譬如说210的主频为1G);CPU可以通过总线读取外部存储设备(譬如说内存)中的二进制指令集,然后解码执行;被CPU解码执行的二进制指令集是CPU设计的时候确定的,其本质上是一串由1和0组成的数字,这就是CPU的汇编指令集(譬如ARM公司是整个CPU规则的设定者,三星公司按照ARM制定的规则生产CPU,编译器开发商按照ARM规则制造编译器,程序员进行编程然后使用编译器进行编译然后放在CPU里面执行)。
(3)源代码编译及运行过程:程序员用汇编指令编程–>经汇编器汇编成二进制可执行程序文件–>二进制文件被CPU读取进去–>CPU内部电路对二进制文件解码–>解码通过则CPU执行指令、完成指令动作。如果程序员用C语言等高级语言编程,则编译器先将C语言程序编译为汇编程序,再进行上面的后续部分(见图1)。
4.2.指令集对CPU的意义
(1)汇编语言与C等高级语言的差异:汇编较C语言来讲编写难度较大;汇编没有可移植性,C语言有一定的可移植性(C语言可移植性受限于操作系统);Java等更高级语言可移植性更强(Java可跨操作系统);汇编语言效率最高(在操作系统内核的关键部分使用),C语言次之(应用于操作系统层面),Java等更高级语言效率最低(应用于纯应用层面);汇编不适合完成大型复杂的项目,更高级语言更适合完成更大、更复杂的的项目。
(2)汇编语言的本质:汇编的实质是机器指令(机器码)的助记符,是一种低级符号语言;机器指令集是一款CPU的编程特征,是该款CPU的设计者制定的,CPU的内部电路设计就是为了实现这些指令集的的功能,机器指令集就好像CPU的API接口一样。
(3)编程语言的发展过程:纯机器码编程(使用机器码进行编程)–>汇编语言编程(使用汇编器将汇编语言翻译成机器码)–>C语言编程(屏蔽汇编语言和机器之间的紧密结合,

本文介绍了可编程器件的工作原理,重点解析了RSIC和CSIC两种指令集的区别。RSIC强调精简指令,而CSIC致力于用最少的指令完成任务。汇编语言作为CPU的机器指令集助记符,是CPU的本质特征,影响着编程语言的发展和效率。CISC设计复杂,适合早期CPU,而RISC简化设计,降低功耗,现代CPU趋向于两者结合。
1837

被折叠的 条评论
为什么被折叠?



