Attributes of a computer system that have a direct impact on the logical execution of a program
Computer organization
How the operational units of a computer system are interconnected
Computer architecture
Considered first before computer organisation
Computer architecture
Represents interface between hardware and software
Computer organisation
Decided after computer architecture
Computer organisation
Represents components of a connection in a computer system
Computer architecture
Comprises logical functions such as instruction sets, registers, data types, and addressing modes
Computer organisation
Consists of physical units like circuit designs, peripherals, and adders
Central Processing Unit (CPU)
Controls the operation of a computer and perform data processing function i.e. calculation
Input device
Input program text, data and command to the computer
Output device
Send result of data processing to the user
Memory
Hold program and data for access of the CPU while processing is taking place
Data processing
Computer must be able to process data which may take a wide variety of forms and the range of processing
Data movement
Computer must be able to move data for processing and data communication
Data storage
Once processed, computer stores data either temporarily or permanently
Control
Manages the computer resources and controls the performance of the functional units
Von Neumann architecture
Basic computer architecture conforms to the general principles established by John von Neumann
Von Neumann architecture
Memory holds both programs and data
Instructions are fetched from memory and executed sequentially
The processor decodes and executes an instruction, before cycling around to fetch the next instruction
The cycle continues until no more instructions are available
Control unit
Controls the operations of components like ALU, memory and input/output devices
Arithmetic Logic Unit (ALU)
Allows arithmetic (add, subtract, etc.) and logic (AND, OR, NOT, etc.) operations to be carried out
Registers
High speed storage areas in the CPU that store small amounts of data that are needed during processing
Memory hierarchy
Loading data from permanent memory (hard drive), into the faster and directly accessible temporary memory (RAM), allows the CPU to operate much quicker
Von Neumann bottleneck
CPU and memory speed disparity, where CPUs processing speed is much faster in comparison to the main memory, so the CPU needs to wait longer to obtain instruction from the memory
Similarities between computer systems
The basic hardware components and design are very similar for large and small computers
Differences between computer systems
Differ primarily in the number of cores, the amount of memory, speed, capacity, and the selection of input and output(I/O) devices provided
Computer
A programmable electronic device that can accept input; store data; and retrieve, process and output information
Father of Computer
Charles Babbage (1791-1871)
Mathematician and Scientist
Created Difference Engine (mechanical computer that could do basic computations)
Created Analytical Engine (solving any mathematical problem and storing data in an indefinite memory)
First Programmer
Ada Lovelace (1815-1852)
Mathematician and Writer
Work with Charles Cabbage on mechanical general-purpose computer
Computer Generations
1st Generation (Vacuum Tubes)
2nd Generation (Transistors)
3rd Generation (Integrated Circuits)
4th Generation (Microprocessor)
5th Generation (AI)
1st Generation (Vacuum Tubes)
An electronic device that controls the flow of electrons in a vacuum
1st Generation (Vacuum Tubes)
Punch cards, paper tape, and magnetic tape were the other basic components used for I/O devices and memory needs
Machine language was developed for the use of computers
Vacuum tubes were much larger in size at the time, they eventually led to larger computer sizes which took up a lot of space in one room
1st Generation (Vacuum Tubes)
ENIAC
UNIVAC-1
EDVAC
ENIVAC
ENIAC
Electronic Numerical Integrator and Computer
First operational electronic general-purpose computer
Designed by John W. Mauchly and J. Presper Eckert at the University of Pennsylvania
Uses nearly 18,000 vacuum tubes which over 167 square meters (1800 square feet) of floor space to keep cool
Couldn't store any programming commands in its memory
Executable instructions composing a program were embodied in the separate units of ENIAC, which were plugged together to form a route through the machine for the flow of computations
Could only do one kind of program at a time, and to change the program meant completely rewiring it
EDVAC
Electronic Discrete Variable Automatic Computer
First stored program computer
Designed by John W. Mauchly and J. Presper Eckert at the University of Pennsylvania
Represented binary systems rather than decimal systems
Needed far fewer vacuum tubes than ENIAC's because EDVAC's primary memory used more-compact and less-expensive mercury delay lines instead of vacuum tubes
EDSAC
Electronic Delay Storage Automatic Calculator
Developed by Maurice Wilkes at Cambridge University
Designed to be used for scientific calculations
First computer to use a form of memory known as random-access memory (RAM)
Maurice invented subroutines, an essential component of modern programming that allows developers to reuse bits of existing code to simplify the act of writing software
2nd Generation (Transistors)
Computers made in the second generation were completely based upon transistors, not on vacuum tubes
2nd Generation (Transistors)
Magnetic cores were used as the primary memory and magnetic tape and magnetic disks as secondary storage devices
COBOL and FORTRAN are employed as assembly languages and programming languages
Transistors, like other electronic components, needed to be soldered together. As a result, the more complex the circuits became, the more complicated and numerous the connections between the individual transistors and the likelihood of faulty wiring increased
IBM 1620
A general-purpose, stored-program data processing system for small businesses, research and engineering departments of large companies, and schools requiring solutions to complex problems in the areas of engineering, research, and management science
This system was based on the transistors and its complete circuitry was transistorized
3rd Generation (Integrated Circuits)
The integrated circuit (IC) is a semiconductor material, that contains thousands of transistors miniaturized in it
3rd Generation (Integrated Circuits)
Punch cards were replaced by mouse and keyboard
High-level programming languages such as FORTRON-II to IV, COBOL, and PASCAL PL/1 were utilized