Year 12 Continuous Assessment Test 1 (CAT 1) Interactive Hub

Complete Cambridge 0417 & WASSCE Preparation Architecture (Weeks 1 to 5). Positional Number Bases, Data Encodings, Programming Translators, and Relational Database Engineering.

Total Exam: 60 Marks (60 Mins) Section A: 30 MCQs Section B: 4 Structured Theory Teacher: Caleb Izuchukwu Nwogu

Table of Contents & Revision Roadmap

6 Structured Revision Modules

Don't let the depth of this study hub overwhelm you! Everything is organized into six bite-sized modules so you can revise at your own pace. Click any section below to jump straight to your target:

Assessment Blueprint & Topic Weightings

Continuous Assessment Test 1

CAT 1 covers all classroom instruction and practical laboratory drills completed across Weeks 1 through 5. Every question in the formal exam paper is directly aligned with these five syllabus modules:

Module 1: Number Bases (20% Weight)

Binary, Octal, Decimal, Hexadecimal conversions, binary arithmetic (addition with carries, subtraction), Unix permissions (chmod 755), and Hex RGB web colors.

Module 2: Data Representation (20% Weight)

ASCII (7-bit), Extended ASCII (8-bit), Unicode (UTF-8/UTF-16), bit-depth, vector vs bitmap graphics, and corporate Word document production.

Module 3: Translators & Mail Merge (20% Weight)

Compilers, Interpreters, Assemblers, machine portability, execution efficiency, automated Mail Merge architecture, and conditional query filters.

Module 4: Relational Databases I (20% Weight)

Flat-file redundancy vs relational tables, Primary Keys, Foreign Keys, Referential Integrity, data validation vs verification techniques.

Module 5: Relational Databases II (20% Weight)

Complex Queries (AND/OR logic), Query by Example (QBE), calculated fields, grouped summary reports, and Group Footer aggregation formulas.

Video Explainers & Walkthroughs

Weeks 1 to 5

Select any weekly topic below to watch concise video walkthroughs directly in your browser:

Interactive 8-Bit Radix Playground

Week 1 Pure Positional Engine

Toggle any of the 8 bits below to watch positional values transform live across Denary, Hexadecimal, Octal, ASCII character, and Unix file permissions:

Positional Radix Conversion Board
27 (128)
26 (64)
25 (32)
24 (16)
23 (8)
22 (4)
21 (2)
20 (1)
Binary Byte
0000 0000
Decimal (Base 10)
0
Hexadecimal (Base 16)
00
Octal (Base 8)
000
ASCII Character
[NUL]
Positional Sum Breakdown: 0 = 0

High-Yield CAT 1 Revision Summaries

Core Formulas & Rules

Week 1: Positional Conversion Rules

* Binary to Hex: Split binary string into 4-bit nibbles starting from the right. (e.g. 1011 00102 -> B216).

* Octal to Denary: Multiply digits by powers of 8 (80=1, 81=8, 82=64). 358 = 3(8)+5(1) = 2910.

* Binary Addition: 0+0=0, 0+1=1, 1+1=0 (carry 1), 1+1+1=1 (carry 1).

Week 2: Encodings & Document Layout

* ASCII vs Unicode: ASCII has 128 codes (English only). Unicode UTF-8 supports 149,000+ characters for all world languages.

* Gutter Margins: Added to binding edges to prevent text from being lost when booklets are stapled/bound.

* Section Breaks: Enable mixed orientations (Portrait + Landscape) in the same file.

Week 3: Translators & Mail Merge

* Compiler: Whole file translated in one batch into a standalone .exe. Fast execution.

* Interpreter: Translates & executes line-by-line. Stops on first error. Great for debugging.

* Mail Merge: Main Document + Data Source (spreadsheet/CSV) -> Personalized letters.

Weeks 4 & 5: Relational Databases & SQL

* Keys: Primary Key (unique in own table). Foreign Key (points to Primary Key in parent table).

* Validation: Range Check (0 to 100), Presence Check, Type Check, Format Check.

* Query Logic: Same row = AND; Separate rows = OR. Group Footer = subtotal aggregates.

Worksheet Solutions Lab (75 Questions)

Complete Weeks 1-5 Bank

Every single question from Weeks 1 to 5 with full 4-part worked keys (Expected Answer, Acceptable Variations, Wrong Answer to Avoid, Mr. Caleb's Pointer):

Interactive CBT Mock Exam (30 Questions)

Section A Simulation

Practice all 30 formal examination MCQs. Get instantaneous scoring, mark breakdown, and Mr. Caleb's diagnostic explanations:

Answered: 0 / 30 | Score: 0%

Parallel Mock Theory Studio (ADR-029 Architecture)

Paper 2 Simulation (30 Marks Total)

Candidate Instructions: Answer Question 1 (COMPULSORY — 10 Marks) and any TWO (2) other questions from Questions 2, 3, and 4 (each 10 Marks). Maximum Theory Score = 30 Marks. Type your answers below; they are automatically preserved in your browser! Click 'Reveal Model Answers' to self-check:

Question 1: Positional Number Bases, Arithmetic & Real-World Systems [10 Marks Total] (COMPULSORY)

(a) Positional Conversions: Show intermediate steps for each:
    (i) Convert decimal 9310 into an 8-bit binary byte.
    (ii) Convert octal 648 into decimal.
    (iii) Convert binary byte 1110 01012 into hexadecimal.
    (iv) Convert hexadecimal 6B16 into decimal.
(b) Binary Addition & Verification: Add 1010 11012 and 0110 01102 showing all carry bits. Verify your result in decimal.
(c) Real-World Applications:
    (i) Why is Octal used for Unix/Linux file permissions (such as chmod 754)?
    (ii) Why is Hexadecimal preferred over binary for RAM memory addresses and 24-bit TrueColor web colors (#RRGGBB)?

Model Answers & Worked Steps:

Part (a): Number Base Conversions:
• (i) Decimal 93 to 8-bit Binary: 93 = 64 + 16 + 8 + 4 + 1 → 010111012 (Always include the leading zero to make 8 bits).
• (ii) Octal 64 to Decimal: (6 × 81) + (4 × 80) = 48 + 4 = 5210.
• (iii) Binary 1110 0101 to Hexadecimal: Split into 4-bit nibbles: 11102 = 14 = E16; 01012 = 516 → E516.
• (iv) Hexadecimal 6B to Decimal: B represents 11. (6 × 161) + (11 × 160) = 96 + 11 = 10710.

Part (b): Binary Positional Addition:
  Carries:   1 1   1 1 1 1
             1 0 1 0 1 1 0 12  (173 in decimal)
           + 0 1 1 0 0 1 1 02  (102 in decimal)
           -------------------
           1 0 0 0 1 0 0 1 12  (275 in decimal)
• Decimal Check: 173 + 102 = 275. Verified!
• Mr. Caleb's Pointer: Always write out your carry row clearly so examiners can award method marks.

Part (c): Real-World Applications:
• (i) Unix Permissions: Unix divides permissions into 3 groups (Owner, Group, Others) with 3 flags (Read=4, Write=2, Execute=1). Since 23 = 8, exactly one octal digit (0 to 7) represents all permissions for a group (e.g. 754).
• (ii) Hexadecimal in RAM & Web Colors: A 32-bit binary RAM address has 32 digits, which is very long and easy to misread. Hexadecimal groups every 4 bits into 1 character, condensing it into an 8-character address like 0x00FF3A10. In web colors, 24-bit TrueColor uses 8 bits for each color channel (Red, Green, Blue), which maps cleanly into 2 hex digits per color (e.g. #FF5733).
Question 2: High-Level Programming Languages & Translators [10 Marks Total] (OPTION)

(a) Compare a Compiler and an Interpreter across: translation timing, execution speed, output file artifact produced, and error reporting mechanism.
(b) Low-Level Languages:
    (i) Describe the translation role of an Assembler.
    (ii) Explain the 1:1 relationship with processor architecture, and explain two common mnemonics (such as MOV, ADD, or JMP).
(c) Paradigms & Systems Development:
    (i) Categorize C++, Python, Rust, and JavaScript as Compiled or Interpreted.
    (ii) Why do engineers building operating system kernels choose compiled languages?

Model Answers & Worked Steps:

Part (a): Compiler vs. Interpreter Comparison:
Feature Compiler Interpreter
Translation Timing Translates the entire program at once before execution. Translates and executes line-by-line while running.
Execution Speed Very fast (translation is already completed). Slower (translates during execution).
Output File Generates an independent executable binary file (.exe). Does not create an executable; needs the interpreter software.
Error Reporting Scans the whole program and gives a complete error list. Stops immediately on the first line that has an error.
Part (b): Low-Level Languages & Assemblers:
• (i) Role: An Assembler translates low-level assembly language mnemonics (e.g. MOV, ADD) directly into binary machine code that the CPU can execute.
• (ii) 1:1 Relationship: Each assembly mnemonic maps directly to one specific machine instruction in the CPU hardware.
• Mnemonics: MOV copies data between registers; ADD adds two numbers; JMP branches execution to another line.

Part (c): Language Classification & Systems Programming:
• (i) Classification: C++ (Compiled), Python (Interpreted), Rust (Compiled), JavaScript (Interpreted).
• (ii) Operating Systems: OS kernels need direct control of memory and hardware registers with maximum speed and zero interpreter delay.
Question 3: Document Production & Corporate Publishing [10 Marks Total] (OPTION)

(a) Explain the step-by-step procedure to set Section Breaks for a 10-page prospectus: Pages 1–2 portrait with no page numbers; Page 3 landscape two-columns with Roman numeral 'iii'; Pages 4–10 portrait with Arabic numbering starting at '1'.
(b) Pagination Controls:
    (i) Define 'Orphan' and 'Widow' in professional document publishing.
    (ii) State the setting used to prevent a heading from being separated from its following paragraph.
(c) Styles & House Style:
    (i) Distinguish between a Paragraph Style and a Character Style.
    (ii) State one business advantage of enforcing an institutional House Style.

Model Answers & Worked Steps:

Part (a): Step-by-Step Section Break Setup:
1. After Page 2: Go to the end of Page 2 and insert a Section Break (Next Page).
2. Page 3 Layout: On Page 3, change Orientation to Landscape and Columns to Two Columns.
3. Page 3 Numbering: Double-click the footer on Page 3, deselect Link to Previous, and insert page number formatted as Roman numeral iii.
4. Pages 4–10 Setup: At the end of Page 3, insert another Section Break (Next Page). On Page 4, change Orientation to Portrait, deselect Link to Previous, set page numbers to Arabic (1, 2, 3), and select Start at 1.

Part (b): Pagination Controls:
• Orphan: The first line of a paragraph appearing alone at the bottom of a page.
• Widow: The last line of a paragraph pushed alone onto the top of a new page.
• Memory Tip: An Orphan is at the outset (bottom); a Widow goes to the window (top).
• Setting to prevent dangling headings: 'Keep with Next'.

Part (c): Styles & Corporate Publishing:
• Paragraph Style vs. Character Style: Paragraph styles apply to the entire text block (line spacing, alignment, indents); Character styles format only specifically highlighted words (like bolding a keyword) without affecting the rest of the paragraph.
• Corporate House Style Advantage: Enforces consistent branding, visual layout, and professional credibility across all organizational publications.
Question 4: Relational Database Design & Query Formulation [10 Marks Total] (OPTION)

(a) An online retailer records customer orders in a single flat-file spreadsheet. Describe two data anomalies caused by this structure, and explain how an RDBMS linked by a Foreign Key resolves them.
(b) Consider tbl_Inventory: ItemID, ItemName, DateRestocked, UnitPrice, InStockQuantity, IsDiscontinued:
    (i) Identify the most appropriate Primary Key and justify your choice.
    (ii) State the most suitable Microsoft Access data type for each of the six fields.
    (iii) Formulate a validation rule and alert text to ensure UnitPrice cannot be zero or negative.
(c) Access Query Criteria: Write the exact Query Design Grid expressions to extract items restocked between 1st June 2026 and 31st August 2026, with UnitPrice > 50.00, IsDiscontinued is False, sorted ascending by ItemName.

Model Answers & Worked Steps:

Part (a): Flat-File Problems & The Relational Fix:
• Update Anomaly: Customer details are repeated on every order row. Changing a customer's address in one row leaves others outdated and conflicting.
• Deletion Anomaly: If an order is deleted, the customer's contact details are accidentally erased from the system as well.
• Relational Resolution: An RDBMS divides data into two normalized tables (tbl_Customers and tbl_Orders) connected by a Foreign Key (like CustomerID). Customer details are entered only once, keeping data consistent.

Part (b): Table Schema & Data Validation:
• (i) Primary Key: ItemID. Reason: Every inventory item needs a unique, non-null identification code to distinguish it from all other products.
• (ii) Field Data Types:
Field Name Recommended Data Type Reason
ItemIDShort Text (or AutoNumber)Stores unique alphanumeric product codes.
ItemNameShort TextStores item names and descriptions.
DateRestockedDate/TimeStores calendar dates for sorting and filtering.
UnitPriceCurrencyStores monetary values formatted with currency signs.
InStockQuantityNumber (Integer)Stores whole count numbers of physical stock.
IsDiscontinuedYes/No (Boolean)Stores active/inactive boolean state.
• (iii) Validation Rule & Alert Text:
  - Validation Rule: > 0
  - Validation Text: Unit price must be greater than zero.

Part (c): Exact Microsoft Access Query Criteria:
Field Criteria / Row Placement Explanation
DateRestockedBetween #01/06/2026# And #31/08/2026#
(or >=#01/06/2026# AND <=#31/08/2026#)
Dates in Access must be enclosed in hash marks #.
UnitPrice> 50.00Filters items with prices strictly higher than 50.00.
IsDiscontinuedFalse (or No or 0)Selects active products that are still in stock.
ItemNameAscending (in the Sort row)Sorts results in A-Z alphabetical order.
• Mr. Caleb's Pointer: Never forget the # marks around dates in Access. Leaving them out makes Access divide the numbers instead of recognizing them as calendar dates!