This action might not be possible to undo. Are you sure you want to continue?

Oleh : Mukhlidi Muskhir

Analogue vs Digital

Analogue

* Continuous range of value * Precision limited by Noise Digital * Discrete range of values * Precision limited by number of “Bit”

Analogue vs Digital

Analogue

Digital

Analogue vs Digital

The

real world is analogue ( by because all signal in world be shape analogue) But in controlling, Digital one had using for process. Both of signal had been converter each other

Analoge vs Digital

Analogue

A to D

Digital Processing

D to A

Analogue

Why Digital Only by using in Processing? ^ Adventure in integrated Circuit has made the complex processing of digital data. ^ Digital Control processing has made easier than analogue ^ Digital circuits are inherently more noise resistant

**Digital and Boolean
**

Digital

represented by boolean logic Boolean is the name of mathematician’s expert Now boolean is called by conventional logic because there is new logic that called by fuzzy logic But all electronic still using boolean logic to processing the controlling system

Why Boolean

It is convenient in electrical system to use a two-value system to represent value true/false, on/off, yes/no and 1/0 * Two voltage or current levels can be used * Easier to process and distribute reliably (diandalakan) * Don’t think of them as numbers (even though we often represent them as 0/1 for brevity(ketangkasan)) The need for binary numbers * Multi-value quantities need to be represented in the digital system. Therefore need numbers made up from the simple two value system

**Positional Number System
**

Decimal point 7x10-1 7x10-2 8x10-3

3578.778

Base 10, weigthing are powers of 10

8 x 100 7 x 101 5 x 102 3 x 103

**Unsigned binary numbers
**

Binary point 1 x 2-1 = 0.500 0 x 2-2 = 0.000 1 x 2-3 = 0.125

1100.101

Each bit of the Number may be Representaed by A Boolean value

0 x 20= 0.000 0 x 21= 0.000 1 x 22= 4.000 3 Binary, weightings are powers of 21 x 2 = 8.000

**Multi-precision Arithmatic
**

Additional of A and B

A1 B1

A2

B2 +

A2

Carry Flag Carry Out Carry In Carry Flag

B3

Carry Out

**Multi-precision Arithmatic
**

Carry Out Carry Flag Carry In

A1

B1

A2

B2 -

A2

B3

Hexadecimal Numbers

4 9

660 41 2

: 16 : 16

Hexadecimal :

294 Hex 13

215 7

: 16

Hexadecimal :

7D Hex

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

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

Hexadecimal Numbers

660

0010 1001 0100 0 1 2 3 4 5 6 7 8 9 A B C D E F 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

2

9

4

215

0000 1101 0111

0

D

7

Decimal to Binary

Number = Base = Decimal Number 0 0.5 0.75 0.375 36 18 9 4 2 1 0 36.375 2 Binary Digits 0 1 1 0 0 0 1 0 0 1 0 Converter Number 0100100.0110 0100100.011 0100100.01 0100100.0 0100100 010010 01001 0100 010 01 0

Generetee each digit by successive division Or multiplication. There is no guarantee the fraction will be finite Fractional part – Multiplication by base

Whole part – divition by base

Binary Additional

0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 carry 1

Easy Layaou ?

Binary Addition

190 + 141 =331 Carry out of Each column 1 1 1 1 1 1 0 1 1 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 0 0 1 0 1 1

Carry out of 8-bit number

Binary Subtraction

229 – 46 = 183 2 1 0 1 0 1 1 0 1 1 1 1

A borrow-out of 1 from This column becomes a borrow in of 2 in this column

2 0 0 1 1

2 2 0 1 1 0 1 1 1 1

2 0 1 1 0 Borrow in from Left column

1

1

Borrow out

Both rows subtracted

Exercise

Convert

to 8-bit binary and do the arithmetic operation * 120 + 54 * 110 + 100 * 224 – 134 * 200 + 20 * 112 – 89 * 111 – 25 Convert back to decimal and check the result

**Binary Number Circle
**

In real hardware there is a fixed number Of bits available. We often ignore leading zeros But they are still there! Examlpe : If we only use 4 bits then the binary Counting sequence “wraps around” At 15 ↔ 0 11 - 1 = 10

4 – bit Binary Number Circle

11 -1 10

1110 1 1010

**Binary Number Circle
**

Subtracting across the boundary Still “works” if you think of result As the distance on the number Circle. (Module arithmetic – ignore The borrow /carry)

8 - 14 10

1000 - 1110 (-1)1010

4 – bit Binary Number Circle

**Representing –ve Number
**

Several

choices for natation * sign + magnitude notation * 1’s complement * 2’s complement notation * various ‘excess codes ‘

**Sign Number – sign + magnitude Notation
**

Sign Bit

0 +ve 1 - ve How about Null or Zero

Magnitude

Simple binary number

Problem

+ 0 0000 - 0 1000

?

**Signed Numbers – Sign + magnitude Notation
**

Arithmetic Difficult to do – have to work out that operation to perform 5 + -6 actually calculate –(6-5) i.e. exchange the operands and do subtraction! -5+ -6 actually calculate –(5+6) i.e. negate the addition of the negated numbers ! Required action depends the signs of the numbers and on which has the large magnitude. Natural for us –a bit hard for the computer since the only way it can work out the bigger number is to do a subtraction!

**Sign + Magnitude Examples
**

Value

+7 +6 …… +1 +0 -0 -1 -2 …… -7

**4-bit sign + magnitude
**

0111 0110 …… 0001 0000 1000 1001 1010 …… 1111

**8-bit sign + magnitude
**

00000111 00000110 …… 00000001 00000000 10000000 10000001 10000010 …… 10000111

**Sign Numbers – 2’s Complement
**

As

for straight binary numbers but with the weighting of the most significant bit being negative Example * 4 bit – weights are -8, 4,2,1 * 8 bit – weights are -128, 64,32,16,8,4,2,1 Need to know how many bits are being used to work out the value of the number – don’t omit leading zeroes

**Sign Numbers – 2’s Complement
**

Binary point 1 x 2-1 = 0.500 0 x 2-2 = 0.000 1 x 2-3 = 0.125

1100.101

Sign Bit

0 x 20= 0.000 0 x 21= 0.000 1 x 22= -4.375 4.000 3 Binary, weightings are powers of 21 x 2 = -8.000

**2’s Complement Examples
**

Value

+7 +6 …… +1 +0 -1 -2 …… -7 -8

**4-bit sign 2’s complement
**

0111 0110 …… 0001 0000 1111 1110 …… 1001 1000

**8-bit sign complement
**

00000111 00000110 …… 00000001 00000000 11111111 11111110 …… 11111001 11111000

**2’s Complement Examples
**

Example : -4 (decimal) Become 4 = 0100 ( binary) = 1x22 = 4 2’s Complement -4= 1100 (binary) = -(23) + 22 = -8 + 4 = -4

Exercise

Converse decimal number above into negative (2’s complement) : 1. -7 ( 4 digit ) 6. 6 (4 digit) 2. -7 (8 digit) 7. 10 (8 digit) 3. -12 (8 digit) 8. 30 (8 digit) 4. -20 (8 digit) 9. 98 (digit) 5. -100 (8 digit) 10. 126 (digit)

**Addition 2’s Complement
**

For 4 digit : 4 3 + 7 0100 0011 0111

+

22+21+20 = 4+2+1 =7

**Addition 2’s Complement
**

For 4 digit -1 -2 -3 1111 1110 11101

+

+

Crryo t a u

-(8)+4 +0 + 1 = -3

Exercise

For 4 Digit : 1. 7 + (-5) 2. -6 + -1 3. 3 + 4 4. 2 + 3 5. -4 + 7 Converse all item to digital and addition. And then Converse to decimal again

**Subtraction 2’s Complement
**

+7 + 3 (0011)+4 0111 1101 + 10100

D c rd is a

**Subtraction 2’s Complement
**

(-8) (-3) = 1101 -5 1000 0011 + 1011

Exercise

for 4 digit . Converse decimal above to digit and subtraction. After that converse to decimal again : 1. (+3) – (-3) 2. (-4) – (+2) 3. (-8)- (+4) 4. (-3) – (-4) 5. (7) – (5)

**2’s Complement ALU
**

Addition and subtraction use the same rules as unsigned binary. Same hardware may be used for both Carry (C) is used for unsigned, overflow (v) for signed

Signed Numbers Signed Numbers

OP

C=Carry V=overflow

Signed Numbers

The same hardware

OP

C=Carry

Signed Numbers

V=overflow

Arithmetic Flags in Condition code register (CCR)

Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

We've moved you to where you read on your other device.

Get the full title to continue

Get the full title to continue reading from where you left off, or restart the preview.

scribd