计算机底层:计算机层次结构(高级语言到低级语言的简单概述):
操作系统可以有效地分配任务给cpu,控制硬件进行搞效率地使用等等,创造操作系统主要是为了满足两大需求:提高资源利用率、增强计算机系统性能。
系统调用(又称广义指令),用户请求操作系统提供服务,如外部设备的使用、分配和回收内存。
如:
机器语言的操作码:000001=汇编语言的:LOAD,机器语言的地址码:0000000101=汇编语言的:5
机器语言会被翻译成微指令,机器语言相当于说了句话,微指令就是要去做机器语言说的事情。
助记符: 机器语言的操作码:000001=汇编语言的:LOAD,此时LOAD就是助记符。就是将复杂难记的二进制,定义成一个简单易记的字符或字符串。
编译型语言和解释型语言的粗略解释:
编译型是使用编译器编译后生成计算机硬件可直接执行的指令,就是通常说的.exe文件(内部存的是机器语言)。如果有用过C语言,它的编译器,如vscode,当你执行代码时,vscode编译器会给你直接生成一个.exe文件。
可以看到编译器执行代码时,生成的是.exe文件,然后执行了这个.exe文件。只后每次执行都是执行这个.exe文件
解释型是在运行时才由解释器逐语句去执行,如果有用过python,他的解释器,如pycharm,当你执行代码是,pycharm并不会给你生成一个.exe文件,而是.py的文件。
可以看到解释器执行代码时,生成的是.py文件,然后执行.py文件,之后每次执行这个程序都是执行.py文件。正是因为每次都是执行.py文件,也因为需要被翻译成机器语言文件才能执行,而.py文件内部不是机器语言,需要被翻译成机器语言,因此.py文件每次执行需要被python语言一条一条地翻译成机器语言。
①补充:.pyc文件内部也不是机器语言,只是比.py的文件优化了一些,并且执行相同程序时(执行程序后会出现.py和.pyc文件)会先到硬盘查找有没有.pyc文件,有的话就直接载入,没有就启动.py出现并且创建.pyc文件, .pyo文件也是在.pyc文件上做了一些优化。
②补充:执行.py文件的前提是,你电脑上需要有python的语言,为了可以让程序在任何地方跑,可以将这些解释型语言,直接打包(翻译)成.exe文件,比如python,可以用pyinstaller这个软件,将.py文件打包成.exe文件。像这样:
抽象比喻编译型和解释型语言:你翻译英文句子时,编译型语言就像翻译完了写到纸张上就直接永久性地知道意思了。解释型语言就像同生传译,别人用声音告诉你,你不记下来,下次忘了就又要再翻译一次。
因此,编译型语言执行效率会比解释型语言高。