32
CMSC 104 1 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 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

Embed Size (px)

Citation preview

Page 1: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 1

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

Page 2: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 2

Major Computer Components

• Central Processing Unit (CPU)• Bus• Main Memory (RAM)• Secondary Storage Media• I / O Devices

Page 3: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 3

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.

Page 4: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 4

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.

Page 5: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 5

Main Memory

• Main memory holds information such as computer programs, numeric data, or a document created 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.

0,1

Page 6: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 6

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.

Page 7: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 7

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 get the information held at a particular address in memory, known as a READ,

o or store information at a particular address in memory, known as a WRITE.

Page 8: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 8

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).

Page 9: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 9

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 programso data fileso other types of information

• This type of storage is called persistent (permanent) storage because it is non-volatile.

Page 10: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 10

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 monitoro keyboardo mouseo disk drive (floppy, hard, removable)o CD or DVD driveo printero scanner

Page 11: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 11

Computer/Peripheral Communication

• Portso locations through which data can enter or

leave the computer (plugs on back)o identified by port numbers like memory

cells are identified by addresses

Page 12: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 12

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.

Page 13: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 13

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)

Page 14: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 14

From “C How to Program” 4rd editionDeitel & 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

Page 15: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 15

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.

Page 16: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 16

The Decimal Number System

• The decimal number system is a positional number system.

• Example: 5 6 2 1 1 X 100

1000 100 10 1 2 X 101

6 X 102

5 X 103

Page 17: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 17

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 Because we use 10 digits, the digits 0 through 9.

Page 18: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 18

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 Because we use 2 digits, the digits 0 and 1.

Page 19: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 19

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

Page 20: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 20

Converting from Binary to Decimal

1 0 0 0 0 0 1 1 X 20 = 1 26 25 24 23 22 21 20 0 X 21 =

0 0 X 22 =

0 20 = 1 24 = 16 0 X 23 =

0 21 = 2 25 = 32 0 X 24 =

0 22 = 4 26 = 64 0 X 25 =

0 23 = 8 1 X 26 =

64 65

Page 21: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 21

Converting from Binary to Decimal (con’t)

Practice conversions:

Binary Decimal

101011

1000001

111

Page 22: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 22

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 25 24 23 22 21 20

Page 23: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 23

Counting in Binary

Binary 0 1 10 11 100 101 110 111

Decimal equivalent 0 1 2 3 4 5 6 7

Page 24: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 24

Addition of Binary Numbers

Examples:

1 0 0 1 0 0 0 1 1 1 0 0 + 0 1 1 0 + 1 0 0 1 + 0 1 0 1 1 1 1 1 1 0 1 0 1 0 0 0 1

Page 25: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 25

Addition of Large Binary Numbers

Example showing larger numbers:

1 0 1 0 0 0 1 1 1 0 1 1 0 0 0 1 + 0 1 1 1 0 1 0 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 1 1 1 1 0 0 1 0 1 0

Page 26: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 26

Working with Large Numbers

0 1 0 1 0 0 0 0 1 0 1 0 0 1 1 1 = ?

• 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.

Page 27: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 27

Hexadecimal

Binary 0 1 0 1 0 0 0 0 1 0 0 1 0 1 1 1

Hex 5 0 9 7

Written: 509716

Page 28: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 28

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.

Page 29: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 29

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 ?)

0 1 2 3 4 5 6 7 8 9 A B C D E F

Page 30: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 30

The Hexadecimal Number System (con’t)

Binary Decimal Hexadecimal Binary Decimal Hexadecimal

0 0 0 1010 10 A

1 1 1 1011 11 B 10 2 2 1100 12 C 11 3 3 1101 13 D 100 4 4 1110 14 E 101 5 5 1111 15 F 110 6 6 111 7 7 1000 8 8 1001 9 9

Page 31: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 31

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

Page 32: CMSC 104 1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number

CMSC 104 32

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.