Brief History of Computers
and Computer Languages
Outline
A
brief history of computers {section
1.1}
Programming languages {section 1.3}
Processing a high-level language program
{section 1.4}
Professional
ethics
for
computer
programmers {section 1.7}
CSCE106
2
Early Computers
First computer invented in the late 1930s to perform
mathematical computations.
ENIAC, the first large-scale, general purpose
electronic digital computer, which was completed in
1946, used to be programmed by connecting hundreds
of wires and arranging thousands of switches in a
certain way. (Weighed 30 tons & occupied 9x15m2).
Dr. John Von Neumann, at Princeton University, in the
same year proposed the concept of a stored program
computer, and he designed a computer based on this
idea.
Stored-program computer (Von Neumann architecture)
is the basis of today's digital computers.
CSCE106
3
Early Computers (cont’d)
Figure 1-2 The ENIAC computer
(courtesy of U.S. Army Historic Computer Images)
Microprocessor
Much smaller
Much more powerful
Figure 1-3
A lab technician
holds a modern
microprocessor (photo
courtesy of Intel
Corporation)
Source: Gaddis T. Starting Out With Games and Graphics in C++.
Addison Wesley, 2010.
CSCE106
4
Categories of Computers
Microcomputers.
Minicomputers.
Mainframes.
Supercomputers.
CSCE106
Time Sharing
(allowing simultaneous
access to a single
computer’s resources
by a number of users)
5
Programming Languages
“Native tongue” of the computer
Binary 0s and 1s that specify what to do
0010 0000 0000 0100
1000 0000 0000 0101
0011 0000 0000 0110
Assembly Language: Symbolic encoding of
Machine Language:
Compiler
Machine Language (low-level language)
Assembler
MVI B, 05H
LDA 1234H
ADD B
High-Level Languages
Resemble human language (C++, C, Pascal, Java)
a = a + b;
CSCE106
6
Processing a High-Level Language
Program
Editor used to enter the program
Source program (file.cpp)
UNIX vi text editor
Compiler translates the source program, producing
object program (file.obj)
Displays syntax errors (not descriptive)
Linker combines object file with other object files
Executable program (file.exe)
Loader copies executable instructions to memory, and
directs CPU to begin execution with the first
instruction.
CSCE106
7
Program Processing Diagram (1)
CSCE106
8
Program Processing Diagram (2)
CSCE106
9
Processing a High-Level Language
Program (cont’d)
An IDE (integrated development environment) is a
package that combines a simple editor with a compiler,
linker, and loader.
IDEs give the developer menus from which to select steps,
and if the developer tries a step that is out of sequence, the
IDE simply fills in the missing steps automatically.
IDEs might simply leave the program in memory;
therefore, users must remember to save the source file to
disk after every modification before attempting to run the
program, to avoid loosing it in case something goes wrong.
Examples:
C++ Builder, Microsoft Visual C++
CSCE106
10
Professional Ethics for Computer
Programmers
Privacy
and misuse of data
Computer hacking
Plagiarism and software piracy
Misuse of a computer resource
CSCE106
11
Privacy and Misuse of Data
As
part of their jobs, programmers may
have access to large data containing
sensitive/secret information.
Programmers
should
not
misuse
information, just as doctors and lawyers.
Computer theft/fraud is changing financial
information, and could lead to fines and
imprisonment.
CSCE106
12
Computer Hacking
Computer
hackers
break
into
secure/classified/confidential data banks by
using their own computers.
Computer hacking is illegal.
Hackers also sometimes attach harmful
code, virus, to another program so that it
copies itself to a computer’s disk.
Viruses spread from one infected computer
to another by copying files or emails.
CSCE106
13
Plagiarism and Software Piracy
Plagiarism, e.g. modifying another student’s code and
submitting it as your own, is fraudulent.
Software piracy is the practice of illegally copying
software.
Copying/Using someone else’s programs without
permission could lead to lawsuit.
Most commercial software packages are protected by
copyright laws against software piracy.
It is important to read the copyright restrictions on each
software package and adhere to them.
CSCE106
14
Misuse of a Computer Resource
As computer technology spreads throughout modern
society, so do the opportunities for its misuse.
Computers, computer programs, data and accounts
are like any other property. If they belong to
someone else and you are not explicitly given
permission to use them, then don’t use them.
Computer access privileges or user account codes
are private property which are usually granted for a
specific purpose.
CSCE106
15
© Copyright 2026 Paperzz