Number bases
This presentation is the property of its rightful owner.
Sponsored Links
1 / 36

Number Bases PowerPoint PPT Presentation


  • 46 Views
  • Uploaded on
  • Presentation posted in: General

Number Bases. Informatics INFO I101 February 9, 2004 John C. Paolillo, Instructor. Items for Today. Last week Digital logic, Boolean algebra, and circuits Logic gates and truth tables This Week Numbers and bases Working with binary. Number Base Systems. …. …. b 4. #. b 3. #. b 2.

Download Presentation

Number Bases

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Number bases

Number Bases

Informatics INFO I101

February 9, 2004

John C. Paolillo, Instructor


Items for today

Items for Today

  • Last week

    • Digital logic, Boolean algebra, and circuits

    • Logic gates and truth tables

  • This Week

    • Numbers and bases

    • Working with binary


Number base systems

Number Base Systems


The format of a base system

b4

#

b3

#

b2

#

b1

#

b0

#

b-1

#

b-2

#

b-3

#

b-4

#

b-5

#

The Format of a Base System

The number represented is the sum of all the products of the digit values and their respective place values


Common bases

Common Bases

  • Decimal (Base 10)

  • Binary (Base 2)

  • Octal (Base 8)

  • Hexadecimal (Base 16)


Conversion to base 10

Conversion to Base 10

  • Identify each of the places in the new number base. These will correspond to the powers of the base, for example, with base 2, they are 1, 2, 4, 8, 16, 32, etc.

  • Multiply the value for each place by the value of the digit appearing there;

  • Add the results up, and you have the result in decimal

    Note that if you divide and add correctly, you can reverse this procedure to convert decimal into another base. It’s harder, because you’re not used to using the appropriate addition and multiplication tables.


Try out these examples

Try out these examples

  • What is 10011 Base 2 in decimal?

    116+ 08 + 04 + 12 + 11 = 19

  • What is 121 Base 8 in decimal?

    164 + 28 + 11 = 81

  • What is 247 Base 10 in Binary?

    Here it helps to have a different procedure…


Converting to binary

256

128

64

32

16

8

4

2

1

0

1

1

1

1

0

1

1

1

28

27

26

25

24

23

22

21

20

128

256

16

64

32

2

4

8

1

247

247

119

55

23

1

7

3

7

0

1

0

1

1

1

1

1

1

Converting to Binary

What we’re converting


Octal base 8

Octal — base 8

  • Sixteen digits:

    0, 1, 2, 3, 4, 5, 6, 7

    7 = 111two = 7eight

  • Octal values are usually not specially indicated

    Unix example:chmod 666 myfile.html


Octal digits

Octal Digits

Decimal

0

1

2

3

4

5

6

7

Binary

000

001

010

011

100

101

110

111

Octal

0

1

2

3

4

5

6

7


Octal tips

Octal Tips

  • each octal digit corresponds to three binary digits (bits)

  • convert binary to octal by parsing each group of three bits into one octal digit

  • convert octal to binary by translating each digit into three bits

  • Examples:

    764eight =111101100two

    011011101two= 335eight


Hexadecimal base 16

Hexadecimal — base 16

  • Sixteen digits:

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

    15 = 1111two = Fsixteen

  • Hexadecimal (“hex”) values are usually indicated by a preceding base marker

    HTML: #FFFFFF

    JavaScript, C: 0xF1AD


Hexadecimal digits

Hexadecimal Digits

Decimal

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Binary

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111

Hex

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F


Hexadecimal tips

Hexadecimal Tips

  • each hex digit corresponds to four binary digits (bits)

  • convert binary to hex by parsing each group of four bits into one hex digit

  • convert hex to binary by translating each digit into four bits

  • Two hex digits make up one byte, a very common unit of memory


Ip numbers

IP Numbers

IP = “Internet Protocol”

IP Number

129.79.142.114

Host Name

dhcp-Memorial–142-114.memorial.indiana.edu

A Domain Name Server (DNS) has a database that matches IP and host name


The ip number

Net

Subnet

Node

The IP Number

  • Four Fields

  • 0-255 in each field

  • This is really base 256, but we use decimal numbers in each digit

129.79.142.114


Binary addition

Binary Addition


Adding in binary

Adding in Binary

  • Zero plus any other values leaves that value

    Identity value for addition

    No carry is generated

  • One plus one leaves zero and causes a carry (one) to the next digit

    Each successive digit must accept the carry from the previous


Try these calculations

01001101 Base 2

+ 00011011 Base 2

01111111 Base 2

+ 00000001 Base 2

102 Base 8

+ 121 Base 8

01001101 Base 2

 00000100 Base 2

0000101 Base 2

 0000101 Base 2

01111111 Base 2

 00011011 Base 2

Try these calculations


Addition truth tables

CI

0

0

0

0

1

1

1

1

A

0

1

0

1

0

1

0

1

B

0

0

1

1

0

0

1

1

S

CO

Addition: Truth Tables

S

0

1

1

0

1

0

0

1

CO

0

0

0

1

0

1

1

1


Addition half adder

S

+

XOR

00

0

0

1

1

01

0

0

00

0

00

0

0

01

1

1

01

1

01

0

1

1

0

10

B

A

Addition: Half Adder

C

The half adder sends a carry, but can’t accept one

So we need another for the carry bit


Addition in binary

Addition in Binary

  • Two half-adders gives us a full adder

    • two inputs plus carry

  • Adders are cascaded to permit adding binary numbers

    • Eight adders allows adding (0...256) + (0...256) in binary numbers

    • Overflow can happen (200 + 100)

  • Binary adders are used to do other computations as well...


Subtraction

Subtraction

Complement Representations


Subtraction1

00

01

00

00

01

01

–01

00

Subtraction

  • Subtraction is asymmetrical

  • That makes it harder

  • We have to borrow sometimes

 827 Minuend

–223 Subtrahend

=604 Difference/remainder


When subtraction is easy

456

–123

333

999

–123

876

When Subtraction is Easy

  • Subtraction is easy if you don’t have to borrow

    • i.e. if all the digits of the minuend are greater than (or equal to) all those of the subtrahend

  • This will always be true if the minuend is all 9’s: 999, or 999999, or 9999999999 etc.


Using easy subtraction

Using Easy Subtraction

  • Subtract the subtrahend from 999 (or whatever we need) (easy)

  • Add the result to the minuend (ordinary addition)

  • Add 1 (easy)

  • Subtract 1000 (drop highest digit)

    Difference = Minuend + 999 – Subtrahend + 1 – 1000

This works for binary as well as decimal


Easy subtraction in binary

Easy Subtraction in Binary

  • Subtract the subtrahend from 111 (or whatever we need) (easy)

  • Add the result to the minuend (ordinary addition)

  • Add 1 (easy)

  • Subtract 1000 (drop highest digit)

    Difference = Minuend + 111 – Subtrahend + 1 – 1000


Binary subtraction example

Binary Subtraction Example

10010101

–01101110

?????????

11111111

–01101110

10010001

This is the same as inverting each bit

00100111

+ 10010101

100100110

Regular addition

+1

100100111

Add one

–100000000

00100111

Now drop the highest bit (easy: it’s out of range)


Subtraction procedure

Each of these steps is a simple operation we can perform using our logic circuits

Subtraction Procedure

Bitwise XOR

Invert each bit

Cascaded Adders

Regular addition

Add carry bit

Add one

Drop the highest bit ( it overflows)

Now drop the highest bit (easy: it’s out of range)


Negative numbers

These steps make the negative of a number in twos-complement notation

Negative Numbers

Invert each bit

Add one

  • Twos complements can be added to other numbers normally

  • Positive numbers cannot use the highest bit (the sign bit)

  • This is the normal representation of negative numbers in binary


Negative numbers in binary

Negative Numbers in Binary

000000000

000000011

000000102

000000113

000001004

000001015

000001106

000001117

000010008

000010019

etc.

11111111–1

11111110–2

11111101–3

11111100–4

11111011–5

11111010–6

11111001–7

11111000–8

11110111–9

11110110–10

etc.


Representations

Representations

  • The number representation you use (encoding) affects the way you need to do arithmetic (procedure)

  • This is true of all codes: encoding (representation) affects procedure (algorithm)

  • Good binary codes make use of properties of binary numbers and digital logic


A problem

A problem

A computer program adds 20,000 and 20,000 and instead of 40,000, it reports –25,566

  • No errors in encoding, decoding or addition

  • How? Because the result is a negative number in twos-complement notation (highest bit = sign bit)


How it works

How it works

  • 20,000 base ten is 0100111000100000 binary

    010011100010000001001110001000001001110001000000

  • Highest bit is set, so number is negative in twos complement notation: subtract one and invert to display

    1001110001000000 – 1 = 1001110000111111

    0110001111000000 = 25,566


Bottom line

Bottom Line

Representations themselves, as we use them, have limits.

Interpretation depends on context

two procedures (encoding/decoding and addition) may be in and of themselves correct, but conflict in their application to specific examples


Number bases

MER has landed


  • Login