j. michael moore computer organization csce 110. j. michael moore high level view of a computer...

Post on 20-Dec-2015

219 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

J. Michael Moore

Computer Organization

CSCE 110

J. Michael Moore

High Level View Of A Computer

ProcessorInput Output

Memory

Storage

J. Michael Moore

Getting Data In

Input

Others?

J. Michael Moore

ProcessorInput Output

Memory

Storage

J. Michael Moore

Getting Data Out

Output

Others?

J. Michael Moore

ProcessorInput Output

Memory

Storage

J. Michael Moore

Unit of Storage

• Bit–Binary digit

– Smallest unitof measurement

Memory

Storage

Two possiblevalues

on offOR

J. Michael Moore

How Data Is Stored

• Byte: a group of 8 bits; 28=256 possibilities– 00000000, 00000001, 00000010, 00000011,

… , 11111111

• Memory: long sequence of locations, each large enough to hold one byte, numbered 0, 1, 2, 3, …

• Address: The number of the location

J. Michael Moore

How Data Is Stored

• Contents of a location can change– e.g. 01011010 can become 11100001

• Use consecutive locations to store longer sequences– e.g. 4 bytes = 1 word

1 1 0 1 1 0 1 0 0 0 1 1 1 0 1 1 0 0 1 0 0 1 00

3...

bytes

0 1 2

bits

J. Michael Moore

Binary Numbers

• Base Ten Numbers (Integers)– characters

• 0 1 2 3 4 5 6 7 8 9

– 5401 is 5x103 + 4x102 + 0x101 + 1x100

• Binary numbers are the same– characters

• 0 1

– 1011 is 1x23 + 0x22 + 1x21 + 1x20

J. Michael Moore

Converting Binary to Base 10

• 23 = 8

• 22 = 4

• 21 = 2

• 20 = 1

1. 10012 = ____10 =

2. 1x23 + 0x22 + 0x21+ 1x20 =

3. 1x8 + 0x4 + 0x2 + 1x1 =

4. 8 + 0 + 0 + 1 =

5. 910

• 01102 = ____10 (Try yourself)

• 01102 = 610

J. Michael Moore

Converting Base 10 to Binary

• 28 = 256• 27 = 128• 26 = 64• 25 = 32• 24 = 16• 23 = 8• 22 = 4• 21 = 2• 20 = 1

• 38810 = ____2

28 27 26 2425 2223 2021

1 1 10 00 0 00

• 388 - 256 (28) = 132

• 132 - 128 (27) = 4

• 4 - 4 (22) = 0

J. Michael Moore

Converting Base 10 to Binary• 38810 = ____2 • 38810 / 2 = 19410 Remainder 0• 19410 / 2 = 9710 Remainder 0• 9710 / 2 = 4810 Remainder 1• 4810 / 2 = 2410 Remainder 0• 2410 / 2 = 1210 Remainder 0• 1210 / 2 = 610 Remainder 0• 610 / 2 = 310 Remainder 0• 310 / 2 = 110 Remainder 1• 110 / 2 = 010 Remainder 1

28 27 26 2425 2223 2021

1 1 10 00 0 00

J. Michael Moore

Other common number representations

• Octal Numbers– characters

• 0 1 2 3 4 5 6 7 8

– 7820 is 7x83 + 8x82 + 2x81 + 0x80

• Hexadecimal Numbers– characters

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

– 2FD6 is 2x163 + Fx162 + Dx161 + 6x160

http://fac-staff.seattleu.edu/quinnm/web/education/JavaApplets/applets/NumConv.html

J. Michael Moore

Negative Numbers

• Can we store a negative sign?

• What can we do?– Use a bit

• Most common is two’s complement

J. Michael Moore

Representing Negative Numbers

• Two’s Complement– flip all the bits

• change 0 to 1 and 1 to zero

– add 1– if the leftmost bit is 0, the number is 0 or

positive– if the leftmost bit is 1, the number is negative

J. Michael Moore

Two’s Complement

• What is -9?– 9 is 00001001 in binary– flip the bits - 11110110– add 1 - 11110111

• Addition and Subtraction are easy– always addition

J. Michael Moore

Two’s Complement

• Addition– 13 - 9 = 4– 13 + (-9) = 4– 00001101 + 11110111 = ?

0

0 100 0 0 11

1

1

0

1

01 1 1 11 1 1

1

0

11 1 1

0000 4=

1

This bit is lost

But that doesn’t matter since we get the

correct answer anyway

J. Michael Moore

Real (Floating point) numbers

• Break the bits used into parts

0110101000000011

Mantissa Exponent

Sign bits

J. Michael Moore

Limitations of Finite Data Encodings

• Overflow - number is too large– suppose 1 byte stores integers in base 2,

from 0 (00000000) to 255 (11111111) (note: this is not two’s complement although it would have the same problem)

– if the byte holds 255, then adding 1 to it results in 0, not 256

– http://www.artima.com/insidejvm/applets/InnerInt.html– http://classes.engr.oregonstate.edu/eecs/fall2007/cs160/applets/

TwosComplement.html

J. Michael Moore

Limitations of Finite Data Exchange

• Roundoff Error– Insufficient precision (size of word)

• ex. Try to store 1/8, which is 0.001 in binary, with only two bits

– Nonterminating expansions in current base• ex. Try to store 1/3 in base 10, which is 0.3333…

– Nonterminating expansions in every base• ex. Irrational numbers such as

J. Michael Moore

ProcessorInput Output

Memory

Storage

top related