两类软件
系统软件和应用软件
- 系统软件:管理计算机系统的硬件资源,向上层应用程序提供服务
- 应用软件:按应用场景需要编制成的各种程序,直接为用户提供服务
三个级别的语言
- 高级语言、汇编语言、机器语言
- 编译程序(编译器)——将高级语言一次全部翻译为汇编语言,或直接翻译为机器语言
- 汇编程序 (汇编器)将汇编语言翻译成机器语言
- 解释程序(解释器)高级语言翻译为机器语言 (翻译一句执行一句)
例如:
C语言:编译型语言,源代码 → 汇编 → 机器码,可执行文件一次生成,效率较高。
Python:解释型语言,源代码先编译成字节码,再由虚拟机逐条解释执行,不直接生成机器码,因此效率较低。
软件和硬件的逻辑功能等价性
软件和硬件的逻辑功能等价性:同一个功能,既可以用硬件实现(性能高成本高),也可以用软件实现 (性能低成本也低)
例如乘法计算既可以通过乘法电路来实现,也可以通过软件多次累加模拟乘法.
指令集体系结构(ISA)
指令集体系结构(ISA):软件和硬件之间的界面。设计计算机系统的ISA,就是要定义一台计算机可以支持哪些指令,以及每条指令的作用是什么、每条指令的用法是什么