✨ 第 4 章:编程中的输入与输出 (I/O) ✨

欢迎来到输入与输出 (Input and Output, I/O) 章节!别担心这个术语听起来很专业——这实际上是计算机科学中最直观、也是最重要的部分之一。

你可以把计算机程序想象成一个正在与你对话的朋友。如果你想让朋友做某件事,你必须告诉他们(输入/Input)。当他们完成后,他们需要告诉你结果(输出/Output)。如果没有 I/O,你的程序就只是一个在黑暗中默默运行的强大机器而已!

在本章中,我们将深入了解到底什么是 I/O,哪些设备负责处理这些任务,以及如何在代码中使用专门的指令来管理信息流。让我们开始吧!


1. 基础知识:定义输入与输出

输入和输出这两个术语描述了数据相对于中央处理器 (CPU)——也就是计算机“大脑”——的移动方向。

1.1 输入:采集数据

输入是指发送计算机系统或程序中的任何数据或指令。
输入的目标是为程序执行任务提供必要的信息。

  • 方向: 外部 → 内部(用户/设备到 CPU)
  • 目的: 提供数据、回答问题或发送指令。
  • 类比: 输入就像你在餐厅点菜。你正在向系统下达指令。

核心输入术语: 数据录入 (Data entry)用户交互 (User interaction)读取 (Reading) 数据。

1.2 输出:呈现结果

输出是指从计算机系统或程序中发送出来的任何数据或信息。
输出的目标是将处理结果以人类可读或可用的格式呈现出来。

  • 方向: 内部 → 外部(CPU 到用户/设备)
  • 目的: 显示结果、展示消息或生成实物副本。
  • 类比: 输出就像厨师为你端上做好的菜肴。系统正在交付它工作的成果。

核心输出术语: 显示 (Displaying)打印 (Printing)写入 (Writing) 数据。

🧠 快速回顾:数据流

输入设备CPU(处理)输出设备


2. 输入与输出设备

I/O 设备是负责将人类行为(如打字)转化为计算机数据(输入),并将计算机数据转化为人类可感知的形式(输出)的硬件组件。

2.1 标准输入设备

这些设备允许用户向计算机提供数据或指令。

  • 键盘 (Keyboard): 输入文本和数字数据最常用的设备。(例如:输入密码)
  • 鼠标/触控板 (Mouse/Trackpad): 用于控制屏幕上的指针、选择选项并发出指令。(例如:点击“提交”按钮)
  • 扫描仪 (Scanner): 捕获图像或文档,并将其转换为计算机可理解的数字格式。(例如:扫描照片)
  • 麦克风 (Microphone): 捕获声波并将其转换为数字音频数据。(例如:录制语音笔记或使用语音搜索)
  • 摄像头 (Webcam/Camera): 捕获视觉影像并将其转换为数字视觉数据。

2.2 标准输出设备

这些设备从计算机接收已处理的数据并将其呈现给用户。

  • 显示器/屏幕 (Monitor/VDU - Visual Display Unit): 显示文本、图像和视频等视觉输出。这是我们查看程序运行状态的主要方式。
  • 打印机 (Printer): 生成数字数据的硬拷贝(纸质打印件)。
  • 扬声器/耳机 (Speakers/Headphones): 将数字音频信号转换为可听见的声波。(例如:听音乐或系统提示音)
  • 投影仪 (Projector): 将视觉输出投射到墙壁或屏幕等大面积平面上。
⚠️ 易错提醒

最常见的错误是混淆那些看起来既能输入又能输出的设备!
触摸屏 (Touchscreen) 从技术上讲既是输入设备(当你触摸它时),又是输出设备(当它显示信息时)。然而,在考试时,请始终关注被考察的主要功能,或者说明它是一个同时处理两者的外设 (Peripheral)


3. 编程中的输入与输出

在编程中,我们使用特定的命令(或函数)来与用户交互并处理数据流。这使我们的程序具有交互性

3.1 获取输入(INPUT 命令)

当程序需要用户提供信息时,它会执行 INPUT 命令。该命令会暂停程序运行,等待用户输入内容并按回车键。

程序输入的分步过程:
  1. 程序显示一条提示信息 (Prompt)(告诉用户该输入什么的消息)。
  2. 程序执行 INPUT 指令并进入等待(暂停)状态。
  3. 用户通过键盘输入数据。
  4. 输入的数据被存储在计算机内存的一个变量 (Variable) 中。
  5. 程序继续运行。

伪代码示例:

        

PRINT "请输入您的年龄: " INPUT UserAge
// 'UserAge' 现在是一个存储输入数据的变量。

你知道吗? 告诉用户该输入什么至关重要。在没有提示信息的情况下要求输入是糟糕的编程习惯!

3.2 展示输出(PRINT/OUTPUT 命令)

PRINTOUTPUT 命令用于在屏幕(主要的输出设备)上显示消息、结果或变量内容。

我们使用 PRINT 命令主要有两个原因:

原因 1:显示固定的文本消息
(例如:显示欢迎语或操作指南)

        

PRINT "欢迎使用计算器程序。"

原因 2:显示变量的值
(例如:显示计算结果)

        

RESULT = 10 * 5 PRINT "计算结果为: " PRINT RESULT
// 显示给用户的输出:计算结果为: 50

💡 记忆小窍门:“P”法则

PRINT 将信息发送到屏幕/打印机(Output)。
INPUT 将信息从引入计算机(Input)。

3.3 I/O 与数据类型

在进行输入时,数据类型非常重要。程序必须知道用户输入的是文本(字符串 String)还是数字(整数 Integer实数 Real)。

  • 如果程序期望得到一个数字,而用户输入了一个字母,程序可能会崩溃或产生错误。这凸显了进行良好的输入验证 (Input Validation)(检查输入是否合理)的必要性。
  • 记住:任何通过键盘输入的内容最初都被视为字符串(纯文本),如果我们需要对其进行计算,有时必须将其转换为数字类型。

核心摘要

I/O 是用户与处理器之间的桥梁。输入 (Input) 将数据引入(例如:键盘),输出 (Output) 将数据推出(例如:显示器)。理解 I/O 的流程对于编写能够与外部世界交流的程序至关重要!

下次使用应用程序时,停下来思考一下它们的输入和输出分别是什么!