Lecture 2_TUP
Lecture 2_TUP
In computer engineering, computer architecture is a set of rules and methods that describe the
functionality, organization, and implementation of computer systems. Some definitions of architecture
define it as describing the capabilities and programming model of a computer but not a particular
implementation. In other definitions computer architecture involves instruction set
architecture design, microarchitecture design, logic design, and implementation
The first documented computer architecture was in the correspondence between Charles
Babbage and Ada Lovelace, describing the analytical engine. When building the computer Z1 in
1936, Konrad Zuse described in two patent applications for his future projects that machine instructions
could be stored in the same storage used for data, i.e. the stored-program concept. Two other early and
important examples were:
John von Neumann's 1945 paper, First Draft of a Report on the EDVAC, which described an
organization of logical elements; and
Alan Turing's more detailed Proposed Electronic Calculator for the Automatic Computing
Engine, also 1945 and which cited von Neumann's paper.
Computers can be generally classified by size and power as follows, though there is considerable overlap:
The von Neumann architecture is a computer architecture based on that described in 1945 by the
mathematician and physicist John von Neumann. This describes a design architecture for an electronic
digital computer with subdivisions of a processing unit consisting of an arithmetic logic unit and
processor registers, a control unit containing an instruction register and program counter, a memory to
store both data and instructions, external mass storage, and input and output mechanisms. Computer
system hardware includes the central processing unit (CPU), input devices, output devices,
communications devices, primary and secondary storage devices. Each central processing unit (CPU)
includes: the arithmetic/logic unit, the control unit, the register areas, basic I/O devices. Since the mid-
1970s CPUs have typically been constructed on a single integrated circuit called a microprocessor. The
arithmetic/logic unit (ALU) performs mathematical calculations and makes logical comparisons. The
control unit sequentially accesses program instructions, decodes them, and coordinates the flow of data in
and out of the ALU, the registers, primary storage, secondary storage and various output devices.
Registers are high-speed storage areas used to temporarily hold small units of program instructions and
data immediately before, during and after execution by the CPU.
Data storage devices may be used either as a memory or as a secondary storage device. In most
cases, storage capacity is measured in bytes, with one byte (B) usually equal to one character.
Primary storage is the memory part of the computer itself. It includes RAM and ROM. Random access
memory (RAM) chips are mounted directly on the computer’s main circuit board. RAM is temporary and
volatile. It is used to store instructions and data temporarily.
Read-only memory (ROM) – is usually nonvolatile. ROM provides permanent storage for data and
instructions that do not change, like programs and data from the computer manufacturer.
In a PC, the ROM contains a specialized program called the BIOS that controls loading the
computer’s operating system from the hard disk drive into RAM whenever the computer is turned on. The
CPU contains a special set of memory cells called registers that perform much more rapidly than the main
memory area. Registers are used for the most frequently needed data items. Programs and data that are
not currently being used in main storage can be saved on secondary storage. The secondary storage is
non-volatile and has greater capacity. Secondary storage devices include: internal and external hard
drives, CDs, DVDs, flash memory, USB flash drives, etc. The hard drives are one of the most important
of the secondary data storage devices.
Numeral System
Octal Numeral System - Base-8. Octal numbers uses digits from 0..7.
Examples:
278 = 2×81+7×80 = 16+7 = 23
308 = 3×81+0×80 = 24
43078 = 4×83+3×82+0×81+7×80= 2247