01程序到底是什么?
计算机不会自己猜我们想让它做什么。 它需要按照一条一条明确的指令去工作。
一组为了完成某个任务而编写的计算机指令, 就可以叫作程序(Program)。
目标
例如计算两个数的和
程序指令
一步一步告诉计算机怎么做
得到结果
计算机按照程序执行
02软件又是什么?
软件通常比“一个程序”更完整。
一个真正的软件产品,除了可执行程序, 还可能包含图片、声音、字体、配置文件、帮助文档、数据库、插件等很多内容。
一个软件
例如浏览器、画图工具、游戏
03程序和软件到底是什么关系?
最简单地说: 程序常常是软件的重要组成部分,但软件通常比程序范围更大。
程序
一组可以执行的指令
软件
程序 + 资源 + 配置 + 数据等
04源代码和可运行程序是一回事吗?
也不是。
我们写的 C++、Java、Python 等代码, 通常叫源代码(Source Code)。 它是给人阅读、修改和维护的程序表达形式。
cout << "Hello";
人比较容易阅读
编译 / 解释 / 运行时处理
不同语言方式不同
运行程序
最终由计算机执行相应指令
05一个软件为什么常常有很多文件?
因为一个现代软件往往要完成很多事情, 不可能把所有内容都塞进一个文件里。
可执行程序 / 代码
负责真正的逻辑处理
资源文件
图片、图标、声音、动画
配置文件
记录软件的各种设置
数据文件
保存用户数据或软件数据
大型软件甚至可能由很多独立程序、后台服务、动态链接库、插件和数据文件共同组成。
06软件都有哪些类型?
软件种类很多, 最常见的入门分类是应用软件和系统软件。
应用软件
帮助用户完成具体任务
浏览器、画图软件、游戏、文字处理软件系统软件
帮助管理硬件和提供基础运行环境
操作系统、设备驱动、部分系统工具07双击软件时,真正运行的是什么?
双击一个软件图标时, 图标本身不会“开始工作”。
操作系统会找到对应的程序文件, 把需要的代码和数据装入内存, 再让 CPU 按程序指令执行。
双击图标
用户发出启动请求
找到程序文件
操作系统定位需要运行的程序
装入内存
加载代码和运行所需数据
CPU 执行
程序真正开始运行
你已经知道了什么
- 程序的核心是一组让计算机执行任务的指令。
- 软件通常是一个更完整的产品,除了程序,还可能包含资源、配置、数据、文档等。
- 程序常常是软件的重要组成部分,但“软件 = 一个程序”并不总是准确。
- 源代码是程序的一种表达形式,真正运行时还要经过编译、解释或运行时系统处理。
- 大型软件往往包含多个程序、动态库、资源文件、配置文件和数据文件。
- 应用软件主要帮助用户完成任务,系统软件主要提供基础运行环境和硬件管理能力。
- 双击软件时,系统会找到对应程序,把需要的代码和数据装入内存,再由 CPU 执行。
- 软件保存在存储设备里,但程序真正运行时通常依赖内存和 CPU。
下一个问题: 既然一个软件可能包含这么多文件, 那“安装软件”到底是在安装什么? 下一篇:安装软件到底在安装什么?