跳转至内容

信息编码系统

来自 Wikibooks,开放世界中的开放书籍

试卷 2 - ⇑ 计算机系统基础 ⇑

← 数制 硬件和软件 二进制数系统 →


硬件和软件

[编辑 | 编辑源代码]
规范覆盖范围
  • 3.6.1 - 硬件和软件
硬件 - 指计算机的物理部件,包括内部和外部部件的通用术语。


计算机硬件是指计算机的物理组件。区分内部组件(处理和存储设备)和外部组件(通常称为外设)非常重要。

  • 外部组件(外设):硬件的外部组件是可以触摸的部件,例如显示器、鼠标、键盘和打印机。外部组件用于将数据输入或输出系统。因此,它们被称为输入和输出 (I/O) 设备。
  • 内部组件(处理和存储):内部硬件组件位于计算机机箱内,包括处理器、硬盘、内存芯片、声卡、显卡以及连接所有这些设备彼此以及 I/O 设备所需的电路。





软件 - 指任何可以在计算机上运行的程序的通用术语。


软件是用于描述我们在计算机上运行的所有程序的通用术语。这些程序包含处理器将执行的指令,以完成各种任务。这涵盖了从文字处理器、电子表格和数据库等标准应用程序到网页创作软件和游戏等更具体的应用程序的巨大可能性。它还包括计算机管理其所有资源所需的程序,例如文件管理和防病毒软件。

应用程序软件是指用户为了完成特定任务而使用所有程序。实际上,这就是用户使用计算机的目的。

系统软件涵盖了一系列与计算机设置和运行的更技术方面相关的程序。主要有四种类型

  • 实用程序
  • 库程序
  • 翻译器
  • 操作系统软件

实用程序涵盖了编写用于在计算机上执行某些维护任务的软件。实用程序通常以免费下载的形式提供,旨在增强您计算机和程序的使用,尽管您的计算机在没有它们的情况下仍然可以工作。压缩软件是实用程序的一个常见示例。

库程序类似于实用程序,因为它们被编写用于执行常见任务。术语“库”表明系统用户可以使用许多软件工具。某些实用程序是非必需的,而库程序往往对它们构建的应用程序至关重要,例如包含代码、数据和资源的动态链接库 (DLL) 文件。

翻译器

[编辑 | 编辑源代码]

翻译器是程序员用来将程序从一种语言转换为另一种语言的软件。主要有三种类型:编译器汇编器解释器

编译器 - 一种通过翻译所有代码将高级语言转换为机器码的程序。


汇编器 - 一种将用汇编语言编写的程序转换为机器码的程序。


解释器 - 一种高级语言翻译程序,通过读取源代码中的每个语句并立即执行操作来工作。


为了编写软件,程序员使用编程语言,使他们能够以对程序员友好的方式编写代码。但是,处理器将无法理解程序员的代码,因此必须将其转换为机器码,即 0 和 1。编译器、汇编器和解释器用于执行此转换过程。




解释器和编译器的优缺点

[编辑 | 编辑源代码]

解释器的优点

  • 无需编译整个程序即可运行代码的部分。
  • 每次执行代码时都会进行解释,因此可以在具有不同指令集的处理器上运行程序。
  • 在开发代码时查找错误很有用

解释器的缺点

  • 执行程序所需的时间可能很长。部分原因是,如果您一遍又一遍地重复相同的代码段,则需要每次都进行翻译。
  • 要运行程序,计算机必须安装解释器。
  • 要分发代码,您需要分发源代码

编译器的优点

  • 编译后,您不再需要编译器或源代码
  • 分发程序时,源代码很难弄清楚

编译器的缺点

  • 编译后的代码仅适用于使用相同指令集的计算机
  • 代码的一小部分更改会导致需要重新编译


字节码

[编辑 | 编辑源代码]

字节码是一种中间代码(即介于源代码和目标代码之间)。源代码被翻译成字节码,可以在虚拟机(例如 Java 虚拟机)上运行。虚拟机将字节码转换为相应的指令代码。

操作系统软件

[编辑 | 编辑源代码]

操作系统是旨在充当用户和计算机之间接口的软件集合,管理计算机的整体操作。它将硬件、应用程序和用户联系起来,但隐藏了计算机的真正复杂性,使其对用户和其他软件不可见——一个所谓的虚拟机。操作系统不被视为虚拟机。这是误导性的。






操作系统执行的常见任务包括

  • 在计算机和用户之间提供接口;
  • 管理设备/文件/内存;
  • 提供虚拟机;
  • 提供其他程序可以运行的软件平台//运行应用程序软件;
  • 向用户隐藏硬件的复杂性。


资源管理

[编辑 | 编辑源代码]

在只有一台处理器的计算机中,任何时候只能运行一个程序。为了允许多个程序同时运行,操作系统必须分配对处理器和其他资源(如外设和内存)的访问权限。

操作系统的主要任务之一是确保所有这些分配都能尽可能有效地利用可用资源。通常,计算机中使用最频繁的资源是处理器。分配对处理器和其他资源的访问过程称为**调度**。

**调度** - 一种技术,确保不同的用户或不同的程序能够在同一计算机系统上同时工作。


操作系统调度对处理器的访问的最简单方法是为每个任务分配一个时间片。这意味着每个任务都获得相同数量的处理器时间。这个将处理器访问权从一个任务传递到下一个任务的过程也称为“循环”调度。



与处理器处理请求的速度相比,访问某些设备是一个相对较慢的过程。操作系统可以有效地创建一个等待设备的命令队列,然后按顺序或基于优先级处理每个请求,而不是等待每个进程结束才能继续。



内存管理

[编辑 | 编辑源代码]
**内存管理** - 操作系统如何使用 RAM 来优化计算机的性能。


操作系统将所有未分配位置的详细信息存储在内存中称为堆的部分。当应用程序需要一些内存时,它将从堆中分配,并且一旦应用程序完成使用某个内存位置或应用程序关闭,现在不需要的内存位置将返回到堆中。操作系统通过创建内存映射来控制主内存的使用,该映射显示哪些内存块已分配给每个任务。通过这种方式,操作系统可以在任何时间控制 RAM 中的一个以上任务。

虚拟内存

[编辑 | 编辑源代码]

如果应用程序需要的内存超过计算机的内存,则操作系统有时会使用辅助存储器的一部分来模拟 RAM。这称为虚拟内存。



文件管理

[编辑 | 编辑源代码]

操作系统负责管理存储的文件以及存储它们的文件夹。这为用户提供了一种易于理解的方式来管理他们的文件,隐藏了文件如何存储在硬盘上的复杂性。

输入/输出管理

[编辑 | 编辑源代码]

操作系统负责处理输入设备(键盘、鼠标)以及输出设备(分配打印作业、屏幕输出)。

  • 计算机系统由硬件和软件组成。
  • 硬件通常根据内部和外部组件进行分类。
  • 系统软件包括操作系统、库和实用程序。
  • 编译器、解释器和汇编器是将高级编程语言转换为可执行指令的程序。
  • 操作系统在管理资源方面发挥着至关重要的作用。
练习

计算机系统由硬件和软件组成。硬件和软件指的是什么?

答案

**硬件** - 计算机的电子/物理组件/部件(电子电路)。

**软件** - 在硬件/计算机上运行的程序(指令序列)。

外设可以分为输入、输出或输入/输出 (I/O) 设备。解释什么是外设。

答案

以下之一

  • 不是 CPU 部分的(硬件)设备;
  • 外部(硬件)设备;
  • 未内置/不是(主)计算机(系统)的一部分 // 计算机外部。

系统软件执行操作硬件所需的任务。操作系统和库程序是系统软件。
说明操作系统的**一个**作用和库程序的**一个**用途。

答案

操作系统

  • 在计算机和用户之间提供接口;
  • 管理设备/文件/内存;
  • 提供虚拟机;
  • 提供其他程序可以运行的软件平台//运行应用程序软件;
  • 向用户隐藏硬件的复杂性。


库程序

  • 允许在程序之间共享运行时代码;
  • 节省内存,因为例程仅在需要时加载;
  • 在编写程序时提供对过程/函数的访问;
  • 减少所需的编程量 // 编写程序所需的时间。

什么类型的程序转换器用于将汇编语言转换为机器代码?

答案

汇编器

已复制到机器人的 RobotC 程序可以通过内置解释器执行。高级语言解释器是如何工作的?

答案

  • 逐行分析源代码的每个语句;
  • 逐行运行/转换/执行;
  • 调用例程来执行每个指令/语句。
华夏公益教科书