Transcript L02

Machine Architecture and Number Systems
Topics
•
•
•
•
•
•
•
Major Computer Components
Bits, Bytes, and Words
The Decimal Number System
The Binary Number System
Converting from Binary to Decimal
Converting from Decimal to Binary
The Hexidecimal Number System
CMSC 104
1
Major Computer Components
• Central Processing Unit (CPU)
• Bus
• Main Memory (RAM)
• Secondary Storage Media
• I / O Devices
CMSC 104
2
The CPU
• Central Processing Unit
• The “brain” of the computer
• Controls all other computer functions
• In PCs (personal computers) also called
the microprocessor or simply processor.
CMSC 104
3
The Bus
• Computer components (Such as: the CPU,
Main Memory, & Hard Disks) are connected
by a bus.
• A bus is a group of parallel wires that carry
control signals and data between
components.
CMSC 104
4
Main Memory
•
•
•
•
•
•
Main memory holds information such as computer
programs, numeric data, or a document created
0,1
by a word processor.
Main memory is made up of capacitors.
If the capacitor is charged, then its state is said to
be 1 or ON.
We could also say the bit is set.
If the capacitor does not have a charge, then its
state is 0 or OFF.
We could also say that the bit is reset or cleared.
CMSC 104
5
Main Memory (con’t)
•
•
•
•
Memory is divided into cells, where each
cell contains 8 bits (1’s or 0’s). Eight bits
is called a byte.
Each of these cells is numbered.
The number associated with a cell is
known as its address.
Main memory is volatile storage. That is,
if power is lost, the information in main
memory is lost.
CMSC 104
6
Main Memory (con’t)
• In addition to the circuitry that holds the bits,
there are other circuits that allow other
components (Like the CPU) to:
o
o
CMSC 104
get the information held at a particular
address in memory, known as a READ,
or store information at a particular address
in memory, known as a WRITE.
7
Main Memory (con’t)
•
•
•
•
All addresses in memory can be
accessed in the same amount of time.
We do not have to start at address 0
and read everything until we get to the
address we really want.
We can go directly to the address we
want and access the data.
That is why we call main memory RAM
(Random Access Memory).
CMSC 104
8
Secondary Storage Media
•
•
•
•
•
Disks -- floppy, hard, removable (random access)
Tapes (sequential access)
CDs (random access)
DVDs (random access)
Secondary storage media store files that contain
o computer programs
o data files
o other types of information
• This type of storage is called persistent
(permanent) storage because it is non-volatile.
CMSC 104
9
I/O (Input/Output) Devices
• Information input/output is handled by I/O
(peripheral) devices.
• A peripheral device is a component that is not
an integral part of the computer.
• Examples:
o
o
o
o
o
o
o
CMSC 104
monitor
keyboard
mouse
disk drive (floppy, hard, removable)
CD or DVD drive
printer
scanner
10
Computer/Peripheral Communication
• Ports
o
o
CMSC 104
locations through which data can enter or
leave the computer (plugs on back)
identified by port numbers like memory
cells are identified by addresses
11
Parallel and Serial Communication
Refer to the manner in which bit
patterns are transferred with respect to
time.
 Parallel - All the bits of a pattern are
transferred at the same time, with each
bit being transferred on a separate line.
Requires multi-wire cables.
 Serial - Transmits one bit at a time.
Slower, but uses a simpler data path.

CMSC 104
12
Bits, Bytes, and Words
•
•
•
•
•
•
A bit is a single binary digit (a 1 or 0).
A byte is 8 bits
A word is 32 bits or 4 bytes (machine dependant)
Long word = 8 bytes = 64 bits
Quad word = 16 bytes = 128 bits
Programming languages use these standard
number of bits when organizing data storage and
access.
• What do you call 4 bits ??
(hint: it is a small byte)
CMSC 104
13
From “C How to Program” 4rd edition
Deitel & Deitel , ISBN# = 0-13-142644-3
• Items covered in the this part of
class:
• Page 1206 - Number Systems:
•
binary, decimal, hex
• Page 1209 - Number System Representations
• Page 1210 - Converting Binary to
Decimal
- Converting Decimal to Binary/Hex
CMSC 104
14
The Binary Number System
• The on and off states of the capacitors
in RAM can be thought of as the values
1 and 0.
• Therefore, thinking about how
information is stored in RAM requires
knowledge of the binary (base 2)
number system.
• Let’s review the decimal (base 10)
number system first.
CMSC 104
15
The Decimal Number System
• The decimal number system is a
positional number system.
• Example:
5621
1 X 100
1000 100 10 1
2 X 101
6 X 102
5 X 103
CMSC 104
16
The Decimal Number System (con’t)
• The decimal number system is also
known as base 10. The values of the
positions are calculated by taking 10 to
some power.
• Why is the base 10 for decimal numbers?
o
CMSC 104
Because we use 10 digits, the digits 0
through 9.
17
The Binary Number System
• The binary number system is called binary
because it uses base 2. The values of the
positions are calculated by taking 2 to
some power.
• Why is the base 2 for binary numbers ?
o
CMSC 104
Because we use 2 digits, the digits 0 and 1.
18
The Binary Number System (con’t)
• The binary number system is also a
positional numbering system.
• Instead of using ten digits, 0 - 9, the
binary system uses only two digits, 0
and 1.
• Example of a binary number and the
values of the positions:
1 0 0 0 0 0 1
26 25 24 23 22 21 20
CMSC 104
19
Converting from Binary to Decimal
1 0 0 0 0 0 1
26 25 24 23 22 21 20
20 = 1
21 = 2
22 = 4
23 = 8
CMSC 104
24 = 16
25 = 32
26 = 64
1 X 20 = 1
0 X 21 = 0
0 X 22 = 0
0 X 23 = 0
0 X 24 = 0
0 X 25 = 0
1 X 26 = 64
65
20
Converting from Binary to Decimal (con’t)
Practice conversions:
Binary
Decimal
101011
1000001
111
CMSC 104
21
Converting Decimal to Binary
First make a list of the values of 2 to the
powers of 0 to 8, then use the
subtraction method.
20 = 1, 21 = 2, 22 = 4, 23 = 8, 24 = 16,
25 = 32, 26 = 64, 27 = 128, 28 = 256
 Example:
42
42 10 2
- 32 - 8 - 2
1 0 1 0 1 0
5 24 23 22 21 20
2
22
CMSC 104

Counting in Binary

CMSC 104
Binary
0
1
10
11
100
101
110
111

Decimal equivalent
0
1
2
3
4
5
6
7
23
Addition of Binary Numbers

Examples:
1001
+0110
1111
CMSC 104
0001
+1001
1010
1100
+0101
1 0001
24
Addition of Large Binary Numbers

Example showing larger numbers:
1010 0011 1011 0001
+ 0111 0100 0001 1001
1 0001 0111 1100 1010
CMSC 104
25
Working with Large Numbers
0101000010100111 = ?
• Humans can’t work well with binary
numbers; there are too many digits to deal
with.
• Memory addresses and other data can be
quite large. Therefore, we sometimes use
the hexadecimal number system.
CMSC 104
26
Hexadecimal
Binary 0 1 0 1 0 0 0 0 1 0 0 1 0 1 1 1
CMSC 104
Hex
5
Written:
509716
0
9
7
27
What is Hexadecimal really ?
Binary 0 1 0 1 0 0 0 0 1 0 0 1 0 1 1 1
Hex
5
0
9
7
A number expressed in base 16. It’s
easy to convert binary to hex and hex to
binary because 16 is 24.
CMSC 104
28
Hexadecimal
Binary is base 2, because we use two
digits, 0 and 1
 Decimal is base 10, because we use
ten digits, 0 through 9.
 Hexadecimal is base 16. How many
digits do we need to express numbers
in hex ? 16 (0 through ?)
0123456789ABCDEF

CMSC 104
29
The Hexadecimal Number System (con’t)
Binary
Decimal
Hexadecimal
0
1
10
11
100
101
110
111
1000
1001
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
CMSC 104
Binary
1010
1011
1100
1101
1110
1111
Decimal
Hexadecimal
10
11
12
13
14
15
A
B
C
D
E
F
30
The Hexadecimal Number System (con’t)
• Example of a hexadecimal number and the
values of the positions:
3 C 8 B 0 5 1
166 165 164 163 162 161 160
CMSC 104
31
Example of Equivalent Numbers
Binary: 1 0 1 0 0 0 0 1 0 1 0 0 1 1 12
Decimal: 2064710
Hexadecimal: 50A716
Notice how the number of digits gets
smaller as the base increases.
CMSC 104
32