This is a quick overview on the hardware computer architecture. Slides can be used as an introductory session to programming classes or computer architecture courses.
1.0 Introduction to Hardware Computer Architecture
1. Introduction to Hardware
Computer Architecture
Abd El-Rahman Hosny Mohammed
Microsoft Student Partner.
4th Grade – Faculty of Computers and Information.
Computer Science Department.
Assiut University.
contact: abdelrahmanhosny.com
2. Agenda
- Life Before the Digital World.
- Logical Circuits.
- Integrated Circuits (ICs).
- Computer Hardware Components.
- Instruction Set Architecture level.
- Operating System Level.
- Higher-Order Language Level.
-2-abdelrahmanhosny.com
3. Life Before the Digital World
- The word “computer” was called to anybody or anything that carry out
calculations and computations.
- At late 19ths, the a “computer” was familiarized to any machine that
carries out calculations.
- Mechanical machines were developed to carry out calculations and
some fixed functions (not programmable).
- Programmability was introduced by the invention of “punched cards”.
- Mechanical computers could recognize the punched cards patterns.
-3-abdelrahmanhosny.com
4. - Punched cards as well as tapes were used to record data.
- This improvement was the foundation od modern information
processing industry.
- Scientific computing needs were met by analog and mechanical
computers. But they were inaccurate and not-programmable.
- Alan Turing conceptualizes the concept of computing in the “Turing
Machine”.
- A device that manipulates symbols on a strip of tape according to a
table of rules.
-4-abdelrahmanhosny.com
5. Turing Test
- It’s the ability of a computer to exhibit intelligent behavior.
- If we could make a computer-human conversation that is
indistinguishable from a human-human conversation, a machine is said
to have passed the test.
- Till now, no machine has passed the Turing test !!
- Now, the world is moving toward building a smart machine that acts
intelligently to human.
-5-abdelrahmanhosny.com
6. Logical Circuits
- With the invention of capacitors, the world began to become digital.
- The first computers were made up of tubes. They were really big in a
size of a room !!
-6-abdelrahmanhosny.com
7. - Discovering semiconductors was a great achievement that kicked-off
the computer world to what we can see today.
- Capacitors and transistors became very small.
- These components used for storing data as digital
signals.
- Digital signals are binary signals that represent
a 1 as a high-volt (5 v.) and a 0 as a low-volt (0 v.).
- A computer can store any data in the form of
a stream of 0s and 1s.
- So, binary encoding is used to convert any
decimal number into a binary one.
For Example: 75 is represented as 01001011.
-7-abdelrahmanhosny.com
8. Integrated Circuits
- We collect these small components in small chips which are called
Integrated Circuits.
- Small-Scale Integration (SSI): up to 100 electronic component per chip.
- Medium-Scale Integration (MSI): from 100 to 3,000 electronic
component per chip.
- Large-Scale Integration (LSI): from 3,000 to 100,000 electronic
component per chip.
- Ultra Large-Scale Integration (ULSI): more than 1 million electronic
component per circuit.
- These integrated circuits (ICs) are the components
of modern and future computers.
-8-abdelrahmanhosny.com
9. Computer Hardware
- Computer hardware are the physical parts that constitutes the machine.
- Through years, hardware architecture has evolved.
- The most common hardware architecture is the Von Neumann model.
- Let’s investigate each part.
-9-abdelrahmanhosny.com
CPUInput Output
Memory
10. -10-abdelrahmanhosny.com
CPUInput Output
Memory
- Keyboard (standard input).
- Mouse.
- Scanner.
- Web Cams.
- Touch Screen.
- Laser Pen.
:
:
And so on.
- Screen (standard output).
- Printers.
- Speakers.
:
:
And so on.
Drivers
These are the hardware
interfaces between
external devices and
the CPU.
12. -12-abdelrahmanhosny.com
CPUInput
Memory
Output
ALU
registersArithmetic & Logic Unit
- ALU is the heart of the computer. It’s responsible
for doing computations
(Add, Subtract, Multiply, …etc.).
- ALU can do these computations ONLY on the
values in the registers.
- Registers are much like memory locations
(Address-Value pairs), but have less access time.
13. -13-abdelrahmanhosny.com
Instruction Set Architecture Level
- Companies that manufacture CPUs must accompany it with the
instruction set that the ALU can perform.
- Instructions are assembly language keywords that perform a specific
action. For example, add two numbers.
- Let’s see an example:
14. -14-abdelrahmanhosny.com
Operating System Level
- The operating system is the KING of the computer kingdom.
- It’s a software level that manage the different hardware resources
using the instructions provided by the manufacturer of every device.
- It has too many functionalities, some of them are:
- Usually operating systems are developed using C/C++ and assembly
programming languages.
Program Execution
IO operations
File-System Manipulation.
Communications.
Error Detection.
Security.
15. -15-abdelrahmanhosny.com
Higher-Order Language Level.
- There are many high-level language that make the programming
task easier for developers.
- Examples: C++, Java, C#, …etc.
Why there are too many programming
languages ?
Why there are new emerging languages ?
But …