Skip to main content
CIT217Sciences2 Unitsintermediate

Foundation of Sequential Program

This course introduces the fundamental principles of programming languages and their relationship to computer architecture. It explores program structures, the evolution of programming languages, and basic computer architecture, including data storage and representation. The course also covers computer instruction formats, data operations, block-structured programming, and the specification and translation of programming languages. The aim is to equip students with the basic knowledge needed to understand program design principles.

Transform this course into personalized study materials with AI

120h
Study Time
13
Weeks
9h
Per Week
basic
Math Level
Course Keywords
Programming PrinciplesComputer ArchitectureData StorageMachine InstructionsLanguage Translation

Course Overview

Everything you need to know about this course

Course Difficulty

Intermediate Level
Builds on foundational knowledge
65%
intermediate
Math Level
Basic Math
📖
Learning Type
Theoretical Focus

Course Topics

Key areas covered in this course

1

Principles of Programming

2

Evolution of Programming Languages

3

Basic Machine Architecture

4

Data Storage in Computer

5

Operations on Data

6

Machine Instructions

7

Programming Language Paradigms

8

Block Structured Languages

9

Programming Language Specification

10

Programming Language Translation

Total Topics10 topics

Requirements

Knowledge and skills recommended for success

Basic computer literacy

Introduction to Computer Science

💡 Don't have all requirements? Don't worry! Many students successfully complete this course with basic preparation and dedication.

Assessment Methods

How your progress will be evaluated (3 methods)

assignments

Comprehensive evaluation of course material understanding

Written Assessment

tutor-marked assignments

Comprehensive evaluation of course material understanding

Written Assessment

final examination

Comprehensive evaluation of course material understanding

Computer Based Test

Career Opportunities

Explore the career paths this course opens up for you

Software Developer

Apply your skills in this growing field

System Analyst

Apply your skills in this growing field

Computer Programmer

Apply your skills in this growing field

Software Engineer

Apply your skills in this growing field

Database Administrator

Apply your skills in this growing field

Industry Applications

Real-world sectors where you can apply your knowledge

Software DevelopmentIT InfrastructureData ManagementCybersecurityWeb Development

Study Schedule Beta

A structured 13-week journey through the course content

Week
1

Module 1:

2h

Unit 1: Principles of Programming

2 study hours
  • Understand the definition of programming and its importance.
  • Learn the steps involved in program design and specification.
  • Explore the concept of sequential programming and its structures.
  • Identify and write basic programs using variables and constants.
Week
2

Module 1:

2h

Unit 1: Principles of Programming

2 study hours
  • Continue studying Unit 1: Principles of Programming
  • Practice designing simple algorithms using sequence structures.
  • Review examples of sequential programs and their components.
Week
3

Module 1:

2h

Unit 2: Evolution of Programming Languages

2 study hours
  • Understand the uses of different number bases in computing.
  • Practice converting between decimal, binary, octal, and hexadecimal number bases.
  • Explore the evolution of programming languages from machine language to high-level languages.
Week
4

Module 1:

2h

Unit 2: Evolution of Programming Languages

2 study hours
  • Continue studying Unit 2: Evolution of Programming Languages
  • Research the history and development of specific programming languages.
  • Compare the advantages and disadvantages of low-level and high-level languages.
Week
5

Module 2:

2h

Unit 1: Basic Machine Architecture

2 study hours
  • List the subsystems of a computer and their interconnections.
  • Understand the hierarchical nature of computer systems.
  • Describe the role of the central processing unit (CPU) and memory in a computer.
Week
6

Module 2:

2h

Unit 1: Basic Machine Architecture

2 study hours
  • Continue studying Unit 1: Basic Machine Architecture
  • Compare and contrast the Von Neumann and system bus models.
  • Explain the functions of the processor and its components.
Week
7

Module 2:

2h

Unit 2: Data Storage in Computer

2 study hours
  • Describe how different data types are stored as bit patterns.
  • Understand how integers are stored using unsigned, sign-and-magnitude, and two's complement formats.
  • Explore how real numbers are stored using floating-point format.
Week
8

Module 2:

2h

Unit 2: Data Storage in Computer

2 study hours
  • Continue studying Unit 2: Data Storage in Computer
  • Learn how text, audio, images, and videos are stored in a computer.
  • Practice converting between different data representations.
Week
9

Module 2:

2h

Unit 3: Operations on Data

2 study hours
  • Perform unary and binary logic operations on bit patterns.
  • Distinguish between logical shift operations and arithmetic shift operations.
  • Perform logical shift operations on bit patterns.
Week
10

Module 2:

2h

Unit 3: Operations on Data

2 study hours
  • Continue studying Unit 3: Operations on Data
  • Perform addition and subtraction on integers stored in two's complement format.
  • Understand applications of logical and shift operations, such as setting, unsetting, and flipping specific bits.
Week
11

Module 2:

2h

Unit 4: Machine Instructions

2 study hours
  • Explain the composition of machine language instruction format.
  • Understand the part of the instruction format that deals with specifying the address of operands.
  • Explain the different methods of specifying the address format.
Week
12

Module 2:

2h

Unit 4: Machine Instructions

2 study hours
  • Continue studying Unit 4: Machine Instructions
  • Understand how to implement high-level statements in different address formats.
  • Explain the cycle through which the processor executes each instruction.
Week
13

Module 3:

6h

Unit 1: Block Structured Languages

3 study hours
  • Understand what is meant by programming language paradigm.
  • Distinguish between four computer programming language paradigms.
  • Describe subprograms and explain some of the basic terminologies in subprograms.

Unit 2: Specification and Translation of Programming Languages

3 study hours
  • Explain what is meant by programming language specification.
  • Explain the forms of programming language specification.
  • Describe a compiler and explain different phases of compilation.

This study schedule is in beta and may not be accurate. Please use it as a guide and consult the course outline for the most accurate information.

Course PDF Material

Read the complete course material as provided by NOUN.

Access PDF Material

Study Tips & Exam Preparation

Expert tips to help you succeed in this course

1

Review all unit objectives and ensure you can meet them.

2

Practice converting between different number bases (binary, decimal, hexadecimal).

3

Study the different instruction formats and addressing modes.

4

Understand the phases of compilation and the role of each phase.

5

Create concept maps linking programming paradigms, language specification, and translation.

6

Solve practice problems related to data storage, logic operations, and arithmetic operations.

7

Focus on understanding the differences between compilers and interpreters.

8

Review all Tutor-Marked Assignments (TMAs) and their solutions.

9

Allocate specific time slots for each topic based on its complexity and weightage.

10

Use online resources and forums to clarify any doubts or difficult concepts.

Related Courses

Other courses in Sciences that complement your learning