Source: https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-3-truth-tables

[Revision notes](https://senecalearning.com/en-gb/revision-notes.md) › [IGCSE](https://senecalearning.com/en-gb/revision-notes/igcse.md) › [Computer Science](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science.md) › [Cambridge International](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international.md) › Truth Tables

# Truth Tables

Computer Science: Cambridge International GCSE, topic 2.4.3

## Truth Tables

A truth table shows all possible input combinations and their corresponding outputs, helping to test and complete logic expressions or circuits systematically.

### What is a truth table?

![What is a truth table?](https://image-v2.cdn.app.senecalearning.com/2025-09/13aa768a-347e-47eb-ac8a-542afb0a4553/notoranf.crop_649x487_0%2C2.preview.png)

- A truth table is used to demonstrate the logic of a logic circuit or a Boolean expression.
- It shows the outcome (the 'output') for every possible combination of inputs.
- Inputs can only be 0 (false) or 1 (true).
- Truth tables are a systematic way to test how logic gates behave and if a logic circuit works as expected.

### Building a simple truth table

![Building a simple truth table](https://image-v2.cdn.app.senecalearning.com/2025-09/aa234e3d-b068-428b-9e50-d01cccbc4a5e/tt.png)

- A truth table has columns for each input and a column for the final output.
 - It is common to give the input and output a label (e.g. Input = A, Output = X)
- The number of possible input combinations is calculated as 2n, where n is the number of inputs.
 - For one input, there are 21 = 2 combinations (0 and 1).
 - For two inputs, there are 22 = 4 combinations (00, 01, 10, 11).
 - For three inputs, there are 23 = 8 combinations.

### Completing a truth table

![Completing a truth table](https://image-v2.cdn.app.senecalearning.com/2025-09/edc2ea0e-a2e9-485c-9238-2175b1632a3e/tt2.png)

- You may be asked to complete a truth table from:
 - A problem statement (e.g. “The alarm sounds if both sensors detect movement”)
 - A logic expression (e.g. 𝐴⋅𝐵+𝐶)
 - A logic circuit (given as a diagram with NOT, OR, NAND or other gates)
- For each row, calculate the output by applying the logic operators or gates to the input values.

### Three-input truth table example

![Three-input truth table example](https://image-v2.cdn.app.senecalearning.com/2025-09/d1167221-d42b-4420-a952-72a9a145527b/Screenshot%202025-09-12%20at%208.28.57%E2%80%AFPM.png)

- To complete a truth table, you need to know the specific logic circuit or expression.
- With 3 inputs, there are 8 possible combinations of 0s and 1s.
- Each row shows one possible input combination and the corresponding output.

## Test yourself on Truth Tables

- What is the purpose of a truth table?

[Practise this topic for free](https://app.senecalearning.com/classroom/course/a91ea2d8-1487-49f1-a3c1-17e86c67462e/section/a592b0c5-acd6-4d61-9ac4-281c49220551/session)

- Previous topic: [2.4.2 Logic Circuits](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-2-logic-circuits.md)
- Next topic: [2.4.4 Evaluating Expressions](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-4-evaluating-expressions.md)

## Computer Science: Cambridge International GCSE contents

### 1 Computer Systems
- 1.1 Data Representation
  - [1.1.1 Binary Numbers](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-1-binary-numbers.md)
  - [1.1.2 Negative Binary Numbers](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-2-negative-binary-numbers.md)
  - [1.1.3 Hexadecimal](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-3-hexadecimal.md)
  - [1.1.4 Using Hexadecimal](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-4-using-hexadecimal.md)
  - [1.1.5 Converting Binary & Hexadecimal](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-5-converting-binary-and-hexadecimal.md)
  - [1.1.6 Converting Denary & Hexadecimal](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-6-converting-denary-and-hexadecimal.md)
  - [1.1.7 Capacity](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-7-capacity.md)
  - [1.1.8 Calculating Capacity Requirements](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-8-calculating-capacity-requirements.md)
  - [1.1.9 Binary in Computer Systems](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-9-binary-in-computer-systems.md)
  - [1.1.10 Data Compression](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-10-data-compression.md)
  - [1.1.11 Run Length Encoding](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-11-run-length-encoding.md)
  - [1.1.12 File Formats](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-1-12-file-formats.md)
- 1.2 Data Transmission
  - [1.2.1 Packet Switching](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-2-1-packet-switching.md)
  - [1.2.2 Data Transmission](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-2-2-data-transmission.md)
  - [1.2.3 Universal Serial Bus (USB)](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-2-3-universal-serial-bus-usb.md)
  - [1.2.4 Parity Check](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-2-4-parity-check.md)
  - [1.2.5 Checksum & Echo Checks](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-2-5-checksum-and-echo-checks.md)
  - [1.2.6 Encryption](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-2-6-encryption.md)
- 1.3 Hardware
  - [1.3.1 Elements of Computer Systems](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-1-elements-of-computer-systems.md)
  - [1.3.2 Types of Computer System](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-2-types-of-computer-system.md)
  - [1.3.3 Von Neumann Architecture](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-3-von-neumann-architecture.md)
  - [1.3.4 The Fetch, Decode, Execute Cycle](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-4-the-fetch-decode-execute-cycle.md)
  - [1.3.5 Factors Affecting CPU Performance](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-5-factors-affecting-cpu-performance.md)
  - [1.3.6 Computational Logic](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-6-computational-logic.md)
  - [1.3.7 Input Devices](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-7-input-devices.md)
  - [1.3.8 2D & 3D Scanners](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-8-2d-and-3d-scanners.md)
  - [1.3.9 Code Readers](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-9-code-readers.md)
  - [1.3.10 Solid State Storage](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-10-solid-state-storage.md)
  - [1.3.11 Magnetic Storage](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-11-magnetic-storage.md)
  - [1.3.12 Examples of Magnetic Storage](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-12-examples-of-magnetic-storage.md)
  - [1.3.13 Optical Storage](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-13-optical-storage.md)
  - [1.3.14 Examples of Optical Storage](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-14-examples-of-optical-storage.md)
  - [1.3.15 Types of Optical disk](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-15-types-of-optical-disk.md)
  - [1.3.16 Storage Requirements](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-16-storage-requirements.md)
  - [1.3.17 Translation - Compilers](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-17-translation-compilers.md)
  - [1.3.18 Translation - Interpreters](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-18-translation-interpreters.md)
  - [1.3.19 Translation - Assemblers](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-19-translation-assemblers.md)
  - [1.3.20 Acoustic Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-20-acoustic-sensors.md)
  - [1.3.21 Flow Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-21-flow-sensors.md)
  - [1.3.22 Gas Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-22-gas-sensors.md)
  - [1.3.23 Humidity Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-23-humidity-sensors.md)
  - [1.3.24 Infrared Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-24-infrared-sensors.md)
  - [1.3.25 Level Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-25-level-sensors.md)
  - [1.3.26 Light Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-26-light-sensors.md)
  - [1.3.27 Magnetic Field Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-27-magnetic-field-sensors.md)
  - [1.3.28 Moisture Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-28-moisture-sensors.md)
  - [1.3.29 pH Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-29-ph-sensors.md)
  - [1.3.30 Pressure Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-30-pressure-sensors.md)
  - [1.3.31 Proximity Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-31-proximity-sensors.md)
  - [1.3.32 Temperature Sensors](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-32-temperature-sensors.md)
  - [1.3.33 Network Hardware](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-3-33-network-hardware.md)
- 1.4 Software
  - [1.4.1 Operating Systems](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-4-1-operating-systems.md)
  - [1.4.2 Interrupts](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-4-2-interrupts.md)
  - [1.4.3 High-Level Languages](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-4-3-high-level-languages.md)
  - [1.4.4 Low-Level Languages](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-4-4-low-level-languages.md)
- 1.5 The Internet & its Uses
  - [1.5.1 The Internet](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-5-1-the-internet.md)
  - [1.5.2 Uniform Resource Locators (URLs)](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-5-2-uniform-resource-locators-urls.md)
  - [1.5.3 DNS](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-5-3-dns.md)
  - [1.5.4 HTML](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-5-4-html.md)
  - [1.5.5 Cookies](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-5-5-cookies.md)
  - [1.5.6 Web Hosting](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-5-6-web-hosting.md)
  - [1.5.7 Digital Currency](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-5-7-digital-currency.md)
- 1.6 Cyber Security
  - [1.6.1 Forms of Attack](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-1-forms-of-attack.md)
  - [1.6.2 Penetration Testing](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-2-penetration-testing.md)
  - [1.6.3 Types of Malware](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-3-types-of-malware.md)
  - [1.6.4 How Malware Spreads](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-4-how-malware-spreads.md)
  - [1.6.5 Protecting Against Malware](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-5-protecting-against-malware.md)
  - [1.6.6 Information Security](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-6-information-security.md)
  - [1.6.7 Structured Query Language (SQL) Injection](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-7-structured-query-language-sql-injection.md)
  - [1.6.8 Firewalls](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-8-firewalls.md)
  - [1.6.9 Authentication: User Access Levels](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-9-authentication-user-access-levels.md)
  - [1.6.10 Authentication: Passwords](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-10-authentication-passwords.md)
  - [1.6.11 Social Engineering](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-11-social-engineering.md)
  - [1.6.12 Phishing](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-12-phishing.md)
  - [1.6.13 Denial of Service Attacks](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-6-13-denial-of-service-attacks.md)
- 1.7 Automated & Emerging Technologies
  - [1.7.1 Automated Systems](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-7-1-automated-systems.md)
  - [1.7.2 Robotics](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-7-2-robotics.md)
  - [1.7.3 Artificial Intelligence](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/1-7-3-artificial-intelligence.md)

### 2 Algorithms, Programming & Logic
- 2.1 Algorithm Design & Problem Solving
  - [2.1.1 Computational Thinking - Abstraction](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-1-computational-thinking-abstraction.md)
  - [2.1.2 Computational Thinking - Decomposition](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-2-computational-thinking-decomposition.md)
  - [2.1.3 Computational Thinking - Algorithmic Thinking](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-3-computational-thinking-algorithmic-thinking.md)
  - [2.1.4 Pseudocode](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-4-pseudocode.md)
  - [2.1.5 Flow Diagrams](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-5-flow-diagrams.md)
  - [2.1.6 Interpreting, Correcting & Completing Algorithm](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-6-interpreting-correcting-and-completing-algorithm.md)
  - [2.1.7 Correcting Algorithms](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-7-correcting-algorithms.md)
  - [2.1.8 Completing Algorithms](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-8-completing-algorithms.md)
  - [2.1.9 Testing](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-9-testing.md)
  - [2.1.10 Types of Testing](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-10-types-of-testing.md)
  - [2.1.11 Test Plans](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-11-test-plans.md)
  - [2.1.12 Validation & Sanitation](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-12-validation-and-sanitation.md)
  - [2.1.13 Authentication & Contingencies](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-1-13-authentication-and-contingencies.md)
- 2.2 Programming
  - [2.2.1 Programming Fundamentals - Variables & Constants](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-1-programming-fundamentals-variables-and-constants.md)
  - [2.2.2 Programming Fundamentals - Comments](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-2-programming-fundamentals-comments.md)
  - [2.2.3 Programming Fundamentals - Input & Output](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-3-programming-fundamentals-input-and-output.md)
  - [2.2.4 Data Types](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-4-data-types.md)
  - [2.2.5 Casting](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-5-casting.md)
  - [2.2.6 Controlling Program Flow - Sequence](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-6-controlling-program-flow-sequence.md)
  - [2.2.7 Controlling Program Flow - Selection](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-7-controlling-program-flow-selection.md)
  - [2.2.8 Controlling Program Flow - Iteration](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-8-controlling-program-flow-iteration.md)
  - [2.2.9 Modularity - Subroutines](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-9-modularity-subroutines.md)
  - [2.2.10 Modularity - Scope](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-10-modularity-scope.md)
  - [2.2.11 Arrays](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-2-11-arrays.md)
- 2.3 Databases
  - [2.3.1 Structuring Data - Records](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-3-1-structuring-data-records.md)
  - [2.3.2 Structuring Data - Databases](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-3-2-structuring-data-databases.md)
  - [2.3.3 SQL](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-3-3-sql.md)
- 2.4 Boolean Logic
  - [2.4.1 Binary Systems](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-1-binary-systems.md)
  - [2.4.2 Logic Circuits](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-2-logic-circuits.md)
  - [2.4.3 Truth Tables](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-3-truth-tables.md)
  - [2.4.4 Evaluating Expressions](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-4-evaluating-expressions.md)
  - [2.4.5 Boolean Operators](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-5-boolean-operators.md)
  - [2.4.6 End of Topic Test - Logic](https://senecalearning.com/en-gb/revision-notes/igcse/computer-science/cambridge-international/2-4-6-end-of-topic-test-logic.md)
