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
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
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
- 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
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
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
- 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 digitalsignals.- Digital signals are binary signals that representa 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 anydecimal number into a binary one.For Example: 75 is represented as 01001011.
-7-abdelrahmanhosny.com
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 componentsof modern and future computers.
-8-abdelrahmanhosny.com
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
CPUInputOutpu
t
Memory
-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.
-11-abdelrahmanhosny.com
CPUInput
Memory
Output
Memory is the RAM used for program code as well as data.
- Address Bus -- Data Bus -- Control Bus -
-12-abdelrahmanhosny.com
CPUInput
Memory
Output
ALUregistersArithmetic & 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-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-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-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 …
-16-abdelrahmanhosny.com
?Time for Questions
-17-abdelrahmanhosny.com
To Be Continued ..
- Introduction to Computer Science.
- Introduction to Computer Programming.
- Programming Languages.