2. GENERATION OF COMPUTERS
The word generation means the state of improvement in the product development
process. Similarly, computer generation refers to the different advancements of
new computer technology.
First Generation (1940-1956) Vacuum Tubes
The first generation computers used very large number of vacuum tubes for
circuitry and magnetic drums for memory.
UNIVAC and ENIAC computers are prime examples of first-generation
computing devices.
3. Advantages: Fastest calculating device of their time
Disadvantages:
1. Dissipate a lot of heat
2. Consume a lot of electricity
3. Very bulky in size
4. These computers were frequently down due to hardware failures.
5. These computers needed constant maintenance because of low mean
time between failures
6. Limited commercial use because these computers were difficult to
program
7. Very expensive
4. Second Generation (1956-1963) Transistors
•The second generation computers were manufactured using transistors.
•While first generation computers were programmed using machine
language, second generation computers moved towards symbolic, or
assembly languages, which allowed programmers to specify instructions
in words.
•At this time, high-level programming languages like COBOL, FORTRAN,
ALGOL and SNOBOL were also being developed.
•Second generation computers were first to store instructions in memory,
which moved from a magnetic drum to magnetic core technology.
•Second generation computers were first developed for the atomic energy
industry.
5. Advantages:
1. Consumed less electricity and thus dissipated less heat as
compared to first generation computers
2. Faster, cheaper smaller and more reliable than first generation
computers
3. Could be programmed using assembly language and high level
languages
4. These computers had faster primary memory and a larger secondary
memory
Disadvantages:
1. Second generation computers were manufactured using transistors
that had to be assembled manually. This made commercial production
of computers difficult and expensive.
6. Third Generation (1964-1971) Integrated Circuits
• The development of the integrated circuit was the hallmark of the
third generation of computers.
• These computers had few megabytes of main memory and magnetic
disks which could store few tens of megabytes of data per disk drive.
• High level programming languages like COBOL and FORTRAN were
standardized by ANSI
• Some more high level programming languages like PL/I PASCAL and
BASIC were introduced at this time.
• Third generation computers were the first to implement time sharing
operating systems.
• Input to these computers could now be provided using keyboards
and mouse.
7. Advantages:
1. Faster than second generation computers and could perform 1 million
transactions per second.
2. Smaller, cheaper and more reliable than their predecessors
3. These computers had faster and larger primary memory and secondary
storage
4. They were widely used for scientific as well as business applications
5. During this generation of computers, standardization of existing high level
languages and invention of new high level languages was done
6. These computers had time sharing operating system which allowed
interactive use of computer by one or more users simultaneously thereby
improving the productivity of the users.
8. Fourth Generation (1971-1989) Microprocessors
• The microprocessor started the fourth generation of computers with thousands of
integrated circuits built onto a single silicon chip.
• Semi-conductor memories were used which were very fast, even the hard disks became
cheaper, smaller in size and larger in capacity.
• For input, floppy disks (in addition to magnetic tapes) were used to port data and
programs from one computer to another.
• During this period many new operating systems were developed like MS-DOS MS-
Windows UNIX and Apple’s proprietary operating system.
• Development of GUIs, the mouse and handheld devices.
• In this period, several word processing packages, spreadsheet packages and graphics
packages were introduced.
9. Advantages:
1. Smaller, cheaper, faster and more reliable
2. Consumed less electricity and therefore dissipated less heat
3. They had faster and larger primary memory and secondary storage
4. They could be used as general purpose computers.
5. GUIs enabled people to learn to work with computers very easily. So the
use of computers in both office and home became widespread.
6. Networks allowed sharing of resources thereby efficient utilization of
computer hardware and software
10. Fifth Generation (Present and Beyond) Artificial Intelligence
• The fifth generation computers are completely based on a new concept of
artificial intelligence.
• Although such computers are still in development, there are certain
applications like voice recognition which is widely being used today.
• In the fifth generation of computers the aim is to develop devices that
respond to natural language input and are capable of learning and self-
organization.
• The two most common are LISP and Prolog.
11.
12.
13.
14. CLASSIFICATION OF COMPUTERS
Computers can be broadly classified into four categories based on their speed, amount of data that they can hold and price.
CLASSIFICATION OF COMPUTERS
Computers can be broadly classified into four categories based on their speed, amount of data that they can hold and price.
CLASSIFICATION OF COMPUTERS
Classification of Computers
Super Computer Mini ComputersMainframe Computers Micro Computers
Intelligent
Terminal
Dumb
Terminal
Laptop Workstation NetworkDesktop
Handhel
d
15. BASIC ORGANIZATION OF A COMPUTER
A computer is an electronic device which basically performs five major
operations which includes:
1) accepts data or instructions (input)
2) stores data
3) process data
4) displays results (output) and
5) controls and co-ordinates all operations inside a computer
INPUT STORAGE OUTPUT
CPU
CONTROL UNIT
ARITHMETIC
LOGIC UNIT
Data and
instructions
Results
Flow of data and instructions
Control exercised by control unit
24. Pseudocode
It is a form of structured English that describes algorithms. It facilitates
the designers to focus on the logic of the algorithm without getting bogged
down by the details of language syntax.
Pseudocode is a compact and informal high-level description of
an algorithm that uses the structural conventions of a programming
language. It is meant for human reading rather than machine reading, so it
omits the details that are not essential for humans. Such details
include keywords, variable declarations, system-specific code and
subroutines.
25. It is commonly used in textbooks and scientific
publications for documenting algorithms, and for
sketching out the program structure before the actual
coding is done. This would help even the non-
programmers to understand the logic of the designed
solution.
There are no standards defined for writing a pseudocode
because a pseudocode is not an executable program.
Flowcharts can be considered as a graphical alternative to
pseudocode, but are more spacious on paper.
26. Rules for Pseudocode
Write only one statement per line
Capitalize initial keyword
Indent to show hierarchy
End multiline structures
Keep statements language independent
27. One Statement Per Line
Each statement in pseudocode should express just
one action for the computer. If the task list is
properly drawn, then in most cases each task will
correspond to one line of pseudocode.
Task List
Read name, hours worked, rate of pay
Perform calculations
gross = hours worked * rate of pay
Write name, hours worked, gross
Pseudocode
READ name, hoursWorked, payRate
gross = hoursWorked * payRate
WRITE name, hoursWorked, gross
28. Capitalize Initial Keyword
In the example below note the words: READ and
WRITE. These are just a few of the keywords to use,
others include:
READ, WRITE, IF, ELSE, ENDIF, WHILE, ENDWHILE
Pseudocode
READ name, hoursWorked, payRate
gross = hoursWorked * payRate
WRITE name, hoursWorked, gross
29. Indent to Show Hierarchy
Sequence:
Keep statements in sequence all starting in the same column
• Selection:
Indent statements that fall inside selection structure, but not the keywords that
form the selection
• Loop:
Indent statements that fall inside the loop but not keywords that form the loop
Each design structureusesa particular indentation pattern
READ name, grossPay, taxes
IF taxes > 0
net = grossPay – taxes
ELSE
net = grossPay
ENDIF
WRITE name, net
30. End Multiline Structures
See the IF/ELSE/ENDIF as constructed above, the ENDIF is in line
with the IF.
The same applies for WHILE/ENDWHILE etc…
READ name, grossPay, taxes
IF taxes > 0
net = grossPay – taxes
ELSE
net = grossPay
ENDIF
WRITE name, net
31. Language Independence
Resist the urge to write in whatever language you are most
comfortable with, in the long run you will save time.
Remember you are describing a logic plan to develop a
program, you are not programming!
32. Example: Write a pseudocode to calculate the weekly wages of an employee.
The pay depends on wages per hour and the number of hours worked.
Moreover, if the employee has worked for more than 30 hours then he gets
twice the wages per hour, for every extra hour that he has worked.
READ hours worked
READ wages per hour
SET overtime charges to 0
SET overtime hrs to 0
IF hours worked > 30 then
Calculate overtime hrs = hours worked – 30
Calculate overtime charges =overtime hrs * (2 * wages per hour)
Set hours worked = hours worked - overtime hrs
ENDIF
33. Calculate salary = (hours worked * wages per hour) +
overtime charges
Display salary
END
Variables: hours worked, wages per hour, overtime
charges, overtime hours, salary