Foundational Concepts
Foundational Concepts
➢ Introduction to Computational Systems
Source: https://peda.net/kenya/ass/subjects2/computer-studies/form-1/the-
computer-system/nameless-89db/bdotc#top
Foundational Concepts
➢ Input Devices
Source: https://mycomputernotes.com/what-is-input-device/
Foundational Concepts
➢ Output Devices
Source: https://www.proprofs.com/quiz-school/story.php?title=output-device-quiz
Foundational Concepts
➢ Arithmetic and Logic Unit (ALU) and Control Unit (CU)
Foundational Concepts
➢ Arithmetic and Logic Unit (ALU) and Control Unit (CU)
➢ The ALU performs all arithmetic and logic operations required by a
program's instructions.
Foundational Concepts
➢ Arithmetic and Logic Unit (ALU) and Control Unit (CU)
➢ The ALU performs all arithmetic and logic operations required by a
program's instructions.
➢ The central processing unit (CU) manages sequential instruction
execution, interprets instructions, and directs data flow through
the computer's memory, ALU, and input/output devices.
Foundational Concepts
➢ Types of Memory
Foundational Concepts
➢ Types of Memory
➢ Primary Memory
Foundational Concepts
➢ Types of Memory
➢ Primary Memory
➢ Secondary Memory
Foundational Concepts
➢ Primary Memory
➢ A computer system cannot function without primary memory.
Before processing, the program and data are loaded into primary
memory.
Foundational Concepts
➢ Primary Memory
➢ A computer system cannot function without primary memory.
Before processing, the program and data are loaded into primary
memory.
➢ To perform read or write operations, the CPU communicates
directly with the primary memory.
Foundational Concepts
➢ Primary Memory
➢ A computer system cannot function without primary memory.
Before processing, the program and data are loaded into primary
memory.
➢ To perform read or write operations, the CPU communicates
directly with the primary memory.
➢ It is classified into two types: random access memory (RAM) and
read-only memory (ROM) .
Foundational Concepts
➢ Primary Memory
➢ A computer system cannot function without primary memory.
Before processing, the program and data are loaded into primary
memory.
➢ To perform read or write operations, the CPU communicates
directly with the primary memory.
➢ It is classified into two types: random access memory (RAM) and
read-only memory (ROM) .
➢ RAM is volatile, which means that it retains the data it contains as
long as the computer is powered on.
Foundational Concepts
➢ Primary Memory
➢ A computer system cannot function without primary memory.
Before processing, the program and data are loaded into primary
memory.
➢ To perform read or write operations, the CPU communicates
directly with the primary memory.
➢ It is classified into two types: random access memory (RAM) and
read-only memory (ROM) .
➢ RAM is volatile, which means that it retains the data it contains as
long as the computer is powered on.
➢ However, as soon as the power supply is turned off, the contents of
RAM are erased.
Foundational Concepts
➢ Primary Memory
➢ It is used to temporarily store data while the computer is
operating.
Foundational Concepts
➢ Primary Memory
➢ It is used to temporarily store data while the computer is
operating.
➢ The required program and data are loaded into RAM for processing
whenever the computer is started or a software application is
launched.
Foundational Concepts
➢ Primary Memory
➢ It is used to temporarily store data while the computer is
operating.
➢ The required program and data are loaded into RAM for processing
whenever the computer is started or a software application is
launched.
➢ RAM is also known as main memory, and it is faster than secondary
memory or storage devices.
Foundational Concepts
➢ Primary Memory
➢ It is used to temporarily store data while the computer is
operating.
➢ The required program and data are loaded into RAM for processing
whenever the computer is started or a software application is
launched.
➢ RAM is also known as main memory, and it is faster than secondary
memory or storage devices.
➢ ROM, on the other hand, is non-volatile, which means that its
contents are preserved even when the power is turned off.
Foundational Concepts
➢ Primary Memory
➢ It is used to temporarily store data while the computer is
operating.
➢ The required program and data are loaded into RAM for processing
whenever the computer is started or a software application is
launched.
➢ RAM is also known as main memory, and it is faster than secondary
memory or storage devices.
➢ ROM, on the other hand, is non-volatile, which means that its
contents are preserved even when the power is turned off.
➢ It is used as a small but faster permanent storage for rarely
changed contents.
Foundational Concepts
➢ Primary Memory
➢ It is used to temporarily store data while the computer is
operating.
➢ The required program and data are loaded into RAM for processing
whenever the computer is started or a software application is
launched.
➢ RAM is also known as main memory, and it is faster than secondary
memory or storage devices.
➢ ROM, on the other hand, is non-volatile, which means that its
contents are preserved even when the power is turned off.
➢ It is used as a small but faster permanent storage for rarely
changed contents.
➢ The startup program (boot loader), for example, that loads the
operating system into primary memory is stored in ROM.
Foundational Concepts
➢ Secondary Memory
➢ Primary memory has a limited storage capacity and can be volatile
(RAM) or read-only (ROM) (ROM).
Foundational Concepts
➢ Secondary Memory
➢ Primary memory has a limited storage capacity and can be volatile
(RAM) or read-only (ROM) (ROM).
➢ As a result, a computer system requires auxiliary or secondary
memory to store data or instructions for future use.
Foundational Concepts
➢ Secondary Memory
➢ Primary memory has a limited storage capacity and can be volatile
(RAM) or read-only (ROM) (ROM).
➢ As a result, a computer system requires auxiliary or secondary
memory to store data or instructions for future use.
➢ Secondary memory is non-volatile and has a larger capacity than
primary memory.
Foundational Concepts
➢ Secondary Memory
➢ Primary memory has a limited storage capacity and can be volatile
(RAM) or read-only (ROM) (ROM).
➢ As a result, a computer system requires auxiliary or secondary
memory to store data or instructions for future use.
➢ Secondary memory is non-volatile and has a larger capacity than
primary memory.
➢ It is slower and less expensive than main memory. However, the
CPU cannot directly access it.
Foundational Concepts
➢ Secondary Memory
➢ Primary memory has a limited storage capacity and can be volatile
(RAM) or read-only (ROM) (ROM).
➢ As a result, a computer system requires auxiliary or secondary
memory to store data or instructions for future use.
➢ Secondary memory is non-volatile and has a larger capacity than
primary memory.
➢ It is slower and less expensive than main memory. However, the
CPU cannot directly access it.
➢ Secondary storage contents must first be brought into main
memory for the CPU to access. Secondary memory devices include
Hard Disk Drives (HDD), CD/DVDs, Memory Cards, and so on.
Foundational Concepts
➢ Secondary Memory
➢ However, secondary storage devices such as SSD now support very
fast data transfer speeds when compared to earlier HDDs.
Foundational Concepts
➢ Secondary Memory
➢ However, secondary storage devices such as SSD now support very
fast data transfer speeds when compared to earlier HDDs.
➢ Furthermore, the availability of small and portable flash or pen
drives has made data transfer between computers easier and
simpler.
Foundational Concepts
➢ Problem Formulation
➢ The process of defining the scope of a problem, formulating one or
more specific questions about it, and establishing the assessment
methods required to address the questions is known as problem
formulation.
https://www.ncbi.nlm.nih.gov/books/NBK552813/
Foundational Concepts
➢ Problem Solving
Foundational Concepts
➢ Problem Solving
➢ Analyzing the problem
➢ It is critical to fully comprehend a problem before attempting
to solve it.
Foundational Concepts
➢ Problem Solving
➢ Analyzing the problem
➢ It is critical to fully comprehend a problem before attempting
to solve it.
➢ If we are unclear about the problem to be solved, we may end up
developing a program that does not achieve our goal.
Foundational Concepts
➢ Problem Solving
➢ Analyzing the problem
➢ It is critical to fully comprehend a problem before attempting
to solve it.
➢ If we are unclear about the problem to be solved, we may end up
developing a program that does not achieve our goal.
➢ As a result, we must carefully read and analyze the problem
statement in order to identify the main components of the
problem and determine the core functionalities that our solution
should have.
Foundational Concepts
➢ Problem Solving
➢ Analyzing the problem
➢ It is critical to fully comprehend a problem before attempting
to solve it.
➢ If we are unclear about the problem to be solved, we may end up
developing a program that does not achieve our goal.
➢ As a result, we must carefully read and analyze the problem
statement in order to identify the main components of the
problem and determine the core functionalities that our solution
should have.
➢ We would be able to figure out what inputs our program should
accept and what outputs it should produce by analyzing a
problem.
Foundational Concepts
➢ Problem Solving
➢ Developing an algorithm
➢ Before writing program code to solve a problem, it is necessary
to devise a solution.
Foundational Concepts
➢ Problem Solving
➢ Developing an algorithm
➢ Before writing program code to solve a problem, it is necessary
to devise a solution.
➢ The solution is expressed in natural language and is referred to
as an algorithm.
Foundational Concepts
➢ Problem Solving
➢ Developing an algorithm
➢ Before writing program code to solve a problem, it is necessary
to devise a solution.
➢ The solution is expressed in natural language and is referred to
as an algorithm.
➢ We can think of an algorithm as a very well-written recipe for a
dish, with clearly defined steps that, if followed, will result in
the dish being prepared.
Foundational Concepts
➢ Problem Solving
➢ Developing an algorithm
➢ Before writing program code to solve a problem, it is necessary
to devise a solution.
➢ The solution is expressed in natural language and is referred to
as an algorithm.
➢ We can think of an algorithm as a very well-written recipe for a
dish, with clearly defined steps that, if followed, will result in
the dish being prepared.
➢ We begin with a rough solution plan and keep refining the
algorithm until it can capture all aspects of the desired solution.
Foundational Concepts
➢ Problem Solving
➢ Developing an algorithm
➢ Before writing program code to solve a problem, it is necessary
to devise a solution.
➢ The solution is expressed in natural language and is referred to
as an algorithm.
➢ We can think of an algorithm as a very well-written recipe for a
dish, with clearly defined steps that, if followed, will result in
the dish being prepared.
➢ We begin with a rough solution plan and keep refining the
algorithm until it can capture all aspects of the desired solution.
➢ There may be more than one algorithm for a given problem, and
we must choose the best one.
Foundational Concepts
➢ Problem Solving
➢ Coding
➢ After we have finalized the algorithm, we must convert it into a
format that the computer can understand in order to generate
the desired solution.
Foundational Concepts
➢ Problem Solving
➢ Coding
➢ After we have finalized the algorithm, we must convert it into a
format that the computer can understand in order to generate
the desired solution.
➢ A program can be written in a variety of high-level programming
languages.
Foundational Concepts
➢ Problem Solving
➢ Coding
➢ After we have finalized the algorithm, we must convert it into a
format that the computer can understand in order to generate
the desired solution.
➢ A program can be written in a variety of high-level programming
languages.
➢ It is equally important to record the details of the coding
procedures followed and document the solution.
Foundational Concepts
➢ Problem Solving
➢ Coding
➢ After we have finalized the algorithm, we must convert it into a
format that the computer can understand in order to generate
the desired solution.
➢ A program can be written in a variety of high-level programming
languages.
➢ It is equally important to record the details of the coding
procedures followed and document the solution.
➢ This is useful when returning to the programs later.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ The created program should be tested on various parameters.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ The created program should be tested on various parameters.
➢ The program must meet the needs of the user. It must respond
within the time frame specified. It should produce correct
results for all possible input. There will be no output if there
are syntactical errors.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ The created program should be tested on various parameters.
➢ The program must meet the needs of the user. It must respond
within the time frame specified. It should produce correct
results for all possible input. There will be no output if there
are syntactical errors.
➢ If the output is incorrect, the program should be checked for
logical errors, if any exist.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ The created program should be tested on various parameters.
➢ The program must meet the needs of the user. It must respond
within the time frame specified. It should produce correct
results for all possible input. There will be no output if there
are syntactical errors.
➢ If the output is incorrect, the program should be checked for
logical errors, if any exist.
➢ When developing complex applications, the software industry
uses standardized testing methods such as unit or component
testing, integration testing, system testing, and acceptance
testing.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ The created program should be tested on various parameters.
➢ The program must meet the needs of the user. It must respond
within the time frame specified. It should produce correct
results for all possible input. There will be no output if there
are syntactical errors.
➢ If the output is incorrect, the program should be checked for
logical errors, if any exist.
➢ When developing complex applications, the software industry
uses standardized testing methods such as unit or component
testing, integration testing, system testing, and acceptance
testing.
➢ This is done to ensure that the software meets all of the
business and technical requirements and functions properly.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ The created program should be tested on various parameters.
➢ The program must meet the needs of the user. It must respond
within the time frame specified. It should produce correct
results for all possible input. There will be no output if there
are syntactical errors.
➢ If the output is incorrect, the program should be checked for
logical errors, if any exist.
➢ When developing complex applications, the software industry
uses standardized testing methods such as unit or component
testing, integration testing, system testing, and acceptance
testing.
➢ This is done to ensure that the software meets all of the
business and technical requirements and functions properly.
➢ The errors or defects discovered during the testing phases are
debugged or corrected, and the program is tested again.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ This process is repeated until all errors have been removed
from the program.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ This process is repeated until all errors have been removed
from the program.
➢ After the software application has been developed, tested, and
delivered to the user, problems with functionality may arise and
must be resolved from time to time.
Foundational Concepts
➢ Problem Solving
➢ Testing and Debugging
➢ This process is repeated until all errors have been removed
from the program.
➢ After the software application has been developed, tested, and
delivered to the user, problems with functionality may arise and
must be resolved from time to time.
➢ Thus, solution maintenance entails resolving problems
encountered by users, responding to user inquiries, and even
serving requests for feature addition or modification.
Foundational Concepts
➢ Intelligence vs Artificial Intelligence
➢ Artificial Intelligence tries to create computers that can replicate
human behavior and do human-like tasks, whereas Human
Intelligence aims to adapt to new surroundings by combining various
cognitive processes.
➢ Machines are digital, whereas the human brain is analogue.
➢ The brain's computational capacity, memory, and ability to reason
are used by humans, but AI-powered computers rely on data and
particular instructions provided into the system.
Foundational Concepts
➢ Intelligence vs Artificial Intelligence
➢ Artificial Intelligence tries to create computers that can replicate
human behavior and do human-like tasks, whereas Human
Intelligence aims to adapt to new surroundings by combining various
cognitive processes.
Source: https://www.upgrad.com/blog/ai-vs-human-intelligence
Foundational Concepts
➢ Intelligence vs Artificial Intelligence
➢ Artificial Intelligence tries to create computers that can replicate
human behavior and do human-like tasks, whereas Human
Intelligence aims to adapt to new surroundings by combining various
cognitive processes.
➢ Machines are digital, whereas the human brain is analogue.
Source: https://www.upgrad.com/blog/ai-vs-human-intelligence
Foundational Concepts
➢ Intelligence vs Artificial Intelligence
➢ Artificial Intelligence tries to create computers that can replicate
human behavior and do human-like tasks, whereas Human
Intelligence aims to adapt to new surroundings by combining various
cognitive processes.
➢ Machines are digital, whereas the human brain is analogue.
➢ The brain's computational capacity, memory, and ability to reason
are used by humans, but AI-powered computers rely on data and
particular instructions provided into the system.
Source: https://www.upgrad.com/blog/ai-vs-human-intelligence
Foundational Concepts
➢ History of Artificial Intelligence
Source: AI Curriculum Handbook
Foundational Concepts
➢ History of Artificial Intelligence
Source: AI Curriculum Handbook
Foundational Concepts
➢ Data vs Information vs Knowledge
➢ Data
Foundational Concepts
➢ Data vs Information vs Knowledge
➢ Data
➢ Raw facts
➢ Structured or unstructured
➢ Example: It is raining
Foundational Concepts
➢ Data vs Information vs Knowledge
➢ Information
Foundational Concepts
➢ Data vs Information vs Knowledge
➢ Information
➢ When we establish relationship between data, they
become information
➢ Example: When humidity went high, it started
raining.
Foundational Concepts
➢ Data vs Information vs Knowledge
➢ Knowledge
Foundational Concepts
➢ Data vs Information vs Knowledge
➢ Knowledge
➢ Knowledge is patterns in data
➢ Example: When humidity is high and it is gloomy, it
rains
Disclaimer
➢ Content of this presentation is not original and it
has been prepared from various sources for
teaching purpose.