Comprehensive Study Guide & Exam
Notes
Module 1: Core Definitions and Fundamental
Concepts
● Program: A sequence of instructions written in a programming language to instruct a
computer to perform a specified task.
● Software: A computer program or set of programs along with all associated
documentation, such as user guides and technical manuals.
● Programming: The multi-step process of creating a sequence of computer instructions,
where writing code at a keyboard is only one specific step of this overall process.
● Programmer: A trained specialist who creates, maintains, and modifies computer
software, working in commercial companies, IT departments, or independently.
● Programming Language: A set of symbols, words, and grammatical rules (syntax and
semantics) used to construct a computer program.
● Four Core Computer Operations:
1. Read/accept input data.
2. Calculate or compare data.
3. Store data in memory.
4. Write or display output.
● Syntax vs. Semantics: Syntax refers to the precise rules governing words and symbols
in a language, while semantics refers to the underlying structural meaning. Unlike
humans who can infer meaning when natural language rules are broken, computers
require exact adherence to syntax rules to execute code.
Module 2: Classification of Programming Languages
● Low-Level Languages:
○ First Generation (Machine Language): Programs represented purely in binary
strings of 1s and 0s. Directly understood by hardware without translation, but
time-consuming, non-portable, and hard to debug.
○ Second Generation (Assembly Language): Uses human-readable symbolic
abbreviations called mnemonics (such as ADD, MP, PACK) instead of raw binary
numbers. Requires an Assembler to translate mnemonics into machine code.
● High-Level Languages:
○ Third Generation (Procedural Languages): Uses English-like statements to solve
general problems (e.g., C, Pascal, FORTRAN, COBOL) by focusing on step-by-step
procedures.
○ Fourth Generation (Problem-Oriented Languages): Non-procedural languages
designed to solve specific tasks by specifying what needs to be done rather than