3. Introduction
I
A computer is a machine that can store and process
information.
Most computers rely on a binary system, which uses
two variables, 0 and 1, to complete tasks such as
storing data, calculating algorithms, and displaying
information.
Computers come in many different shapes and sizes,
from handheld smartphones to supercomputers
weighing more than 300 tons.
As of November 2021 the most powerful computer in
the world is the Japanese supercomputer Fugaku,
developed by RIKEN and Fujitsu. It has been used to
model COVID-19 simulations.
3
4. The most powerful computers can perform
extremely complex tasks, such as simulating
nuclear weapon experiments and predicting the
development of climate change. The development
of quantum computers, machines that can handle
a large number of calculations through quantum
parallelism (derived from superposition), would be
able to do even more-complex tasks.
Note -
4
5. The first computers were used primarily for
numerical calculations. However, as any
information can be numerically encoded, people
soon realized that computers are capable of
general-purpose information processing. Their
capacity to handle large amounts of data has
extended the range and accuracy of weather
forecasting. Their speed has allowed them to
make decisions about routing telephone
connections through a network and to control
mechanical systems such as automobiles,
nuclear reactors, and robotic surgical tools.
5
6. HARDWARE & SOFTWARE
Hardware -
Computer hardware is a collective term used to describe any of the physical components of an
analog or digital computer. The term hardware distinguishes the tangible aspects of a computing
device from software, which consists of written, machine-readable instructions or programs that tell
physical components what to do and when to execute the instructions.
Hardware and software are complementary. A computing device can function efficiently and
produce useful output only when both hardware and software work together appropriately.
Computer hardware can be categorized as being either internal or external components. Generally,
internal hardware components are those necessary for the proper functioning of the computer, while
external hardware components are attached to the computer to add or enhance functionality.
6
II
8. HARDWARE & SOFTWARE
Software -
Software is a set of computer programs and associated documentation and data. This is in contrast
to hardware, from which the system is built and which actually performs the work.
At the lowest programming level, executable code consists of machine language instructions
supported by an individual processor—typically a central processing unit (CPU) or a graphics
processing unit (GPU).
A machine language consists of groups of binary values signifying processor instructions that
change the state of the computer from its preceding state. For example, an instruction may change
the value stored in a particular storage location in the computer—an effect that is not directly
observable to the user.
8
II
11. 11
Machine Language
III
Sometimes referred to as machine code or object code,
machine language is a collection of binary digits or bits that
the computer reads and interprets. Machine language is the
only language a computer is capable of understanding.
The exact machine language for a program or action can differ
by operating system. The specific operating system dictates
how a compiler writes a program or action into machine
language.
The codes are strings of 0s and 1s, or binary digits (“bits”),
which are frequently converted both from and to hexadecimal
(base 16) for human viewing and modification.
12. 12
Assembly language
1V
Each personal computer has a microprocessor that manages
the computer's arithmetical, logical, and control activities.
Each family of processors has its own set of instructions for
handling various operations such as getting input from
keyboard, displaying information on the screen and performing
various other jobs. These set of instructions are called 'machine
language instructions'.
A processor understands only machine language instructions,
which are strings of 1's and 0's. However, machine language is
too obscure and complex for using in software development.
So, the low-level assembly language is designed for a specific
family of processors that represents various instructions in
symbolic code and a more understandable form.
14. 14
High level programming language
V
High-level languages allow
programmers to write instructions in a
language that is easier to understand
than low-level languages.
Programmers write in high-level
languages because they are easier to
understand and are less complex than
machine code. They allow the
programmer to focus on what needs to
be done, rather than on how the
computer actually works.