Y9 - Chapter 4 Software
Y9 - Chapter 4 Software
CHAPTER 4 – SOFTWARE
System Software
System software provides the services that the computer requires, including operating
system and utility software.
Operating System
A system software running in the background of the computer system
The operating system is run on the firmware.
Example: Linux, Windows, Android, iOS, DOS
Firmware
Firmware is defined as a computer program that is hard-coded into the hard drive and
contains its basic operational storage programming.
Another way to think of it is that firmware is a software middleman that allows your
hardware to talk to software
Application Software
Application software provides the services that the user requires.
Applications are run on the operating system.
Interrupts
An Interrupt can be defined as a signal that is sent by software or device to the processor.
When an interrupt is received by a processor; the processor pauses whatever it was doing
and handles the interrupt.
The interrupt can be received by the processor in many situations, few examples are given
below:
o When a disk drive is ready to receive more data.
o When an error has occurred e.g. printer paper jam.
o When the user wants to break the current process
When the processor has received the interrupt it either stops the current process or handles
the program or device that generated the interrupt or it continues to do its current process.
The main function of interrupts is to allow the system to perform multiple tasks at a time or to
open multiple windows simultaneously.
Software interrupts include division by zero and two processes trying to access the same
memory location.
Hardware interrupts include pressing a key on the keyboard and moving the mouse.
4.2 Types of programming language, translators and integrated development environments (IDEs)
High-level language
A high-level language is a language that enables a programmer to tell the computer the
specific order of task by focusing on the problem itself.
High-level languages consist of familiar English words as result programmers can read, write
and understand programs easily.
Prepared by: msy pg. 1
Example:
o Python, PHP, ECMAScript, Ruby, Delphi, Java, C#
Python programming
Output
Low-level language
Low-level languages relate to the specific architecture and hardware of a particular type
of computer.
Low-level languages can refer to machine code, the binary instructions that a computer
understands, or an assembly language that needs to be translated into machine code.
Assembly language
A low-level language that requires translation into machine code before it can be used
by a computer.
Uses mnemonic codes (Pattern of letters to represent something, like short-form)
Example:
Machine Code
Machine code is difficult to understand by programmers
Therefore, programmers to not write code in machine code generally
Prepared by: msy pg. 2
As it is difficult to manage storage and data manipulation
Following is an example of a machine code instruction for adding two numbers in hex and
binary:
Translators
Programs are written in languages that are easily understandable by the programmers
(humans).
However, for the computer system to understand and perform the set of instructions given
in the programs, the programs need to be translated into machine code or binary
instructions.
It is difficult for humans to work with binary but the computer system only understands it.
Therefore, a translator is used to translate the programs into binary before the computer
can use it.
1. Compiler
Compiler translates the whole code at once before executing it, producing an
executable file.
Provides an error report for the whole code if errors are detected.
Compilers are translators that are used to translate HLL (High-Level Languages) into the
machine code.
Once instructions written in HLL are compiled into the machine code; it can be directly
used by the computer system again and again without the need for recompilation.
2. Interpreter
Translates and executes the code line-by-line.
An interpreter stops execution when an error is found.
That is, it reads a statement from the program and translates it and performs the
instructions.
Once done, it moves to the next statement, translates, performs, and so on.
3. Assembler
An AS.SEMBLER is a computer program that translates a program written in an assembly
language into machine code so that it can be directly used by a computer to perform
a required task.
Python IDE