EMT1111-Lecture 2 - City Tech OpenLab

Download Report

Transcript EMT1111-Lecture 2 - City Tech OpenLab

EMT1111
Logic and Problem Solving
Fall 2012
Dr. José M. Reyes Álamo
Outline
• What is computation?
• What is a computer?
• Hardware
• Software
• Bits and Bytes
• Data (storing and transmitting)
• Programming Languages
• Computer Networks
1
What is Computation?
• Computation is the manipulation of data by
either humans or machines
2
What is a computer?
• A computer is a device capable of performing
arithmetic and logical operations at speeds
much faster than human.
•A computer is able to:
– Accept input
– Do computation (manipulate data executing
logical and arithmetic operations)
– Output data
3
Human Brain
•In the 1960’s, when computers were becoming
more prevalent, they were commonly called
“electronic brains.”
•However, the brain as a computer has very little
in common with the modern computer (except
that they both do “computation”).
People!
Computers used to refer to people
In WWII, computers were people who did difficult
calculations by hand, for things like ballistic tables.
5
Modern Computers
Computer categories
• A microcomputer is a computer that can perform all of its input,
process, output, and storage activities by itself.
• A minicomputer is often used in situations where a
microcomputer is not powerful enough but a mainframe is too
expensive.
• A mainframe is a large, expensive, but powerful computer that
can handle hundreds or thousands of connected users at the
same time.
• A supercomputer is the fastest, most powerful, and most
expensive computer used for applications that require complex
and sophisticated mathematical calculations.
7
Other terms related to the classification of
computer systems
•Personal computer
•Stand-alone computer
•Server
•Client computer
•Network computer
•Workstation
•Terminal
•Embedded System
It’s All About the Switch
•The basic component of most digital circuitry is
a simple switch.
•A switch’s function, “switches” values:
–On or Off
–True or False
–1 or 0
Electronic Switch
• Early computers used vacuum tubes as switches
• Later, transistors were used as substitutes
Switches for Boolean Circuits
• Switches can be used to construct more complicated
functions, such as Boolean circuits (and on left, or on
right)
Manipulations of the underlying data (binary code) is
done by using electronic gates.
12
A Very Interesting Switch
Transistors have three interesting features that make
them the fundamental element of the computer
revolution:
• size
• quantity
• speed
Size
Originally very large
Shockley transistor
Kilby integrated circuit
Intel’s first CPU
By 1971, Intel had created a “computer on a chip,” the
4004 microprocessor, the size of a fingernail with 2300
transistors.
Silicon transistor timeline
You will learn more on about this on the following courses:
oEMT1150 – Electrical Circuit
oEMT1255 – Electronics
16
But Now, Really Small!
Chips now have gates measured in billionths of a
meter (nanometers, nm)
17
Smaller
means
more
Moore’s Law
• Gordon Moore is one of the founders of the chip
maker Intel
• In 1965, he has observed (over that last 15 years or
so) the growth rate of the number of transistors in a
circuit
• Made a famous prediction
What it Means
• Roughly, since 1965, the number of transistors on a
chip doubles every 18 months for approximately the
same cost
• Often quoted as the speed of a CPU doubling every
18 months for the same cost
• Speed and density were related
Parts of a computer
Computer organization and
architecture
Main Components
• Hardware
– Physical Devices: processor, memory, keyboard, monitor,
mouse, etc.
• Software
– Executable Programs: word processor, spread sheet,
internet browser, etc.
• People
Hardware
secondary storage
processor
primary
storage
input device
output device
network
Processor
• The processor is the “brain” of a computer.
• The processor controls the other devices as well as
performing calculations
Primary Storage
• Stores instructions and data for current program(s)
• Other names: primary memory, main memory, RAM
(Random Access Memory)
• Memory is “dynamic” as it requires power to retain
information
• Often hundreds of Megabytes (million bytes)
Peripheral Devices
• Secondary storage devices
– Disk (hard & floppy), tape, USB drives, flash drives, etc.
• Input devices
– Keyboard, mouse, camera, microphone, etc.
• Output devices
– Monitor, printer, speaker, etc.
• Network
– Wireless, Bluetooth, Ethernet, etc.
Secondary Storage
• Nonvolatile -- information is recorded magnetically so
power is not needed
• Disks hold Gigabytes (billions of bytes)
• Cheaper, but slower than primary storage
– RAM access can take a hundred CPU clock ticks
– Disk access can take a million CPU clock ticks
• Not accessed directly by the CPU
Software
• The programs available for execution
• Classification
– System software
– Application software
System Software
• Operating system: manages system resources (e.g.
DOS, UNIX)
• User interface: interface with operating system (e.g.
Windows, Linux, Mac OS)
Application Software
• Programs that perform specific tasks for the user (and
use the operating system to interact with the
hardware)
• Examples: word processor, spreadsheet, internet
browser.
What is a Program?
• A sequence of instructions written in machine
language that tells the CPU to take certain actions in a
specific order
• In this course you will learn to create programs
Program Storage
• Machine language instructions are encoded as bit
patterns
• Memory can only hold binary info
• A bit is represented by two-states (e.g. L-R
magnetism, high-low voltage)
• It takes many bits to represent reasonable amounts
of information
Programming
Languages
The hardware layer will be covered at EMT 2370 (Computer
hardware systems) and EMT 2390L (Operating systems
laboratory)
35
Programming languages
• Eventually, every program must be translated
into a machine language that the computer can
understand.
• This translation is performed by compilers,
interpreters, and assemblers.
• When you buy software, you normally buy an
executable version of a program. This means
that the program is already in machine
language.
36
Bits and bytes
Binary Numbers
• The “switch” nature of transistors make storing
numbers in binary a natural fit.
• Binary uses base 2, as opposed to the decimal
numbering system that uses base 10
Example
• Decimal uses digits 0-9 and positions in a number as
powers of 10
– 73510 = 7*102 + 3*101 + 5*100
• Binary users digits 0,1 and positions in a number as
powers of 2
– 1012 = 1*22 + 0*21 + 1*20
• We can covert from binary to decimal and vice versa
Representing data
 A bit = one binary representation
 A Byte = 8 bits
 Word = 32 bits
40
Words
• A word of storage is the basic unit used by a
computer.
• A typical computer today is a 32 bit computer,
meaning its word size is 32 bits
– Today we also have 64-bit machines
• The word size imposes a limit on the memory and the
data that can be stored
Word sizes have changed
42
Representing data
Representing data
 The main components of a digital computer are
switches, usually transistors.
 The most efficient way to represent these data
values is binary coding
 Binary code: two level testing, 0 or 1.
44
Physical states representing bits
45
Representing Data in Binary
• Letters are encoded as binary numbers
• Both ASCII and Unicode are encodings for particular
letters and symbols
• ASCII (American Standard Code for Information
Interchange) is used for encoding the English
alphabet (http://asciiset.com/ )
• Unicode is used to encode more characters such as
those used in Arabic and Asian languages (Unicode)
Images
• Digital images consist of individual colors in a matrix.
• Each individual color is called a pixel.
• The color of a pixel is encoded using numbers as well.
Bits <-> information
 Representing images:
– An image is made up of thousands of very small dots
– These dots are called pixels.
– The color of each pixel can be represented as combination
of three colors, Red, Blue, and Green
– Each primary color component (R,G,B) can be represented
as an 8-bit byte. 8-bit string can represent 28 = 256
different things.
48
Bits <-> information
 Representing images:
– In this case, the 8-bit string for Red represents different
amounts of Red, from 0 (none) to 255 (lots). And the same
for Green and Blue.
– If there are 256 different quantities of R, G, and B, then we
can mix these together in 256 × 256 × 256 = 16,777,216
ways, which corresponds roughly to the number of colors
the human eye can distinguish
49
Bits <-> information
50
How Many Numbers?
Binary
• Byte = 8 bits
e.g. 10110010
• Storage devices come in large quantities
1KB (Kilobyte)= 210 bytes = 1024 bytes
1MB (Megabyte)= 220 bytes = 1,048,576 bytes
1GB (Gigabyte)= 230 bytes=1,073,741,824 bytes
Networking
Networking
What is a computer network?
A computer network is established when a
group of computers is connected to each
other for communication. The purpose of
this connection or network is to share the
resources within the connected units.
You will learn more about networks in EMT2455 & CET4773
The Internet
is a network of networks!
54
Computer networks are useful
55
In Class Lab
• Set up and OpenLab account
– Create your portfolio
– Submit your portfolio link
(https://sites.google.com/site/emt1111f12/labs)
• Install Python and do a Simple Program
– Installation Instructions and Lab details in Lab1_Python0
(https://docs.google.com/open?id=0B8hQmlgITcEscTlFN
WFxekkzc0E)
56
Homework
 https://sites.google.com/site/emt1111f12/labs
 Find the reading assignments for this week
 Install Python
57