跳到正文
IGCSE·Tuition
计算机科学 · 主题

布尔逻辑

布尔逻辑起初像谜题,直到你发现每道题用的都是那几个相同的步骤。

本页内容
  1. 开始之前应该先掌握什么?
  2. 入门示例
  3. 应该按什么顺序学习各课?
  4. 这个主题有哪些陷阱?
  5. 怎样使用练习?

本模块讲解程序中每个条件、处理器中每个逻辑门背后的逻辑。你将学会计算布尔表达式、制作真值表(truth table)、读懂简单的逻辑电路、判断两个表达式是否等价,并把日常语句转成精确的条件。

请查看剑桥官方的 Computer Science 0478 课程大纲,了解你考试年份的内容要点。如果不确定,可以阅读你的大纲适用哪些年份。我们的计算机科学学习指南显示了本模块在整体中的位置。

开始之前应该先掌握什么?

你需要知道一个值可以是真或假,写作 1 或 0,并且熟悉伪代码中的 IF ... THEN ... ELSE。如果 Age >= 13 这样的条件你已经看得懂,就可以开始了。

入门示例

学校实验室的门在教师卡出现时开启,或者在学生卡出现并且老师已打开实验室开关时开启。用符号表示:T 为教师卡,S 为学生卡,L 为实验室已开启:

Q = T OR (S AND L)

**第 1 步,计算 T = 0、S = 1、L = 1。**先算括号:1 AND 1 = 1。再 0 OR 1 = 1,门开启。

**第 2 步,计算 T = 0、S = 1、L = 0。**括号:1 AND 0 = 0。再 0 OR 0 = 0,门保持关闭。

**第 3 步,数情形。**三个输入有 23 = 8 行,所以这扇门的真值表有 8 行。只要 T = 1,Q 就是 1(4 行),再加上 T = 0、S = 1、L = 1 这一行,共有 5 行门会开启。

同样的表达式在代码中是这样的条件:

IF TeacherCard = TRUE OR (StudentCard = TRUE AND LabOn = TRUE) THEN
   OUTPUT "Door opens"
ENDIF

应该按什么顺序学习各课?

  1. 计算带括号的逻辑表达式:运算顺序,是其余一切的基础。
  2. 制作真值表:对每一种输入计算表达式,结构上不会漏掉任何情形。
  3. 解读简单的逻辑电路:把图中的逻辑门读成同样的表达式。
  4. 用情形比较两个等价的表达式:用表格证明两种写法一致。
  5. 区分逻辑 AND 与日常语言的歧义:先把句子翻译成括号,再计算。

然后做布尔逻辑练习。布尔与数字表示实验室、受限伪代码追踪训练器和安全的 Python 推理沙盒都适合用来检查小例子。

这个主题有哪些陷阱?

  • 没有括号时,忘记 AND 比 OR 先算。
  • 把 NOT 用在整个表达式上,而它其实只属于一个字母,或者相反。
  • 真值表漏掉一行,通常是最后一行。
  • 两个输入都是 1 时,把 XOR 当成 OR。
  • 只检查一种情形,就断定两个表达式相等。

怎样使用练习?

按顺序做题,像考试那样写出完整步骤。写完自己的答案之后再打开解答,并标出第一步出错的位置,而不只是最后的数值。“如果你做错了”部分会把每种错误指回对应的课。

想让人检查自己解题过程的同学,可以咨询我们的一对一线上计算机科学补习。

资料来源

  1. Cambridge IGCSE Computer Science 0478 syllabus page

更新于:

下一步

如果每项布尔技能单独看都懂,混合题却仍然卡住,一对一老师可以逐步追踪你的做法,找出推理转向的地方。

一小时付费试听课,按所安排老师确认的收费,RM80 起。 其他费用、时间安排及后续课程,在试听课后由家长与老师直接确认。

补习由家长或监护人安排。用 WhatsApp 把这页发给他们,他们就可以替你咨询。

是家长或监护人?在这里咨询

已通过我们的服务帮助 9,000+ 名学生