![Page 1: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/1.jpg)
EET 250
Number systems
![Page 2: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/2.jpg)
Introduction to Number Systems
• While we live in a world where the decimal number is predominant in our lives, computers and digital systems work in another number system – Binary.
• This section will discuss various number systems you will commonly encounter when working with microcontrollers.
![Page 3: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/3.jpg)
Decimal
• It helps to first take a fresh look at a number system we are familiar with. Decimal.
• Decimal is a Base-10 number system (Deci meaning 10). We use Base-10 because that is the number of units on the first counting device used…. Fingers!
• In a Base-10 number system there are 10 unique symbols – 0 through 9.
![Page 4: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/4.jpg)
• Any position in a value can only contain one of these symbols, such as 1354. There are 4 places, each with one digit.
• Each place to the left of the decimal point signifies a higher power of 10.
100101102103
= 1= 10= 100= 1000
![Page 5: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/5.jpg)
4x 1
4
5x10
50
3x100
300
1x1000
1000
• A number, such as 1354, is each place value multiplied weight of that position.
Thus 1354 is 1000 + 300 + 50 + 4.
![Page 6: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/6.jpg)
Binary
• In digital systems, there only only states such as ON/OFF, TRUE/FALSE, HIGH/LOW, or any manner of other terms used… including only the digits of 0 and 1.
• Having only 2 states or unique values creates a binary number system. In binary, we count and work with values in the same manner as decimal.
![Page 7: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/7.jpg)
• Just as in decimal, each place is a higher power, but not of 10, but 2 since binary is a 2-based system.
20212223
= 1= 2= 4= 8
![Page 8: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/8.jpg)
• By taking the value,1001, and multiplying each digit by the weight of the position, we can convert a binary value to decimal.
1x 1
1
0x2
0
0x4
0
1x8
8
Thus 1001 in binary is8 + 0 + 0 + 1 = 9 Decimal
Binary to Decimal
![Page 9: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/9.jpg)
• Common ways to denote binary are:10012
1001b0b1001
• Decimal is typically not specially notated, but may be written as: 100110.
![Page 10: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/10.jpg)
Bit Groupings• Often Bits (Binary Digits) are grouped to form specially
sized combinations.
Nibble – 4 Bits
Byte – 8 Bits
Word – 16 Bits
• Word is actually used to refer to a pre-defined number of bits of any size (16-bit word, 24-Bit word, 32-Bit word, etc).
![Page 11: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/11.jpg)
• In a nibble with 4-bits, the range of values is0000 (Decimal 0) to1111 (Decimal 15: 8+4+2+1).Note there are 16 values: 0 to 15.
• In a byte with 8-bits, the range of values is00000000 (Decimal 0) to 11111111 (Decimal 255: 128+64+32+16+8+4+2+1)Note there are 256 values: 0 to 255.
• An equation to find the maximum count for any number of bits is: 2n-1 where n = number of bits. 28-1=255.
![Page 12: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/12.jpg)
Hexadecimal
• Digital systems work in binary because of their nature of having only 2 states, but as humans we have a difficulty dealing with numbers such as 01111101. It is long and difficult to read.
• Hexadecimal is good middle between decimal and binary. It allows for easier use, 7C, and relates directly to binary.
• Hexadecimal is a base-16 number system. It is denoted by 7Ch, 0x7C or 7C16.
![Page 13: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/13.jpg)
• Each place is a higher power of 16.
160161162163
= 1= 16= 256= 4096
But since it is base-16, 16 unique digits are But since it is base-16, 16 unique digits are needed . The first 10 are carried over from needed . The first 10 are carried over from decimal, 0-9. The last 6 borrow from the decimal, 0-9. The last 6 borrow from the alphabet, A-F, where:alphabet, A-F, where:A = 10 B = 11 C = 12A = 10 B = 11 C = 12D = 13 E = 14 F = 15D = 13 E = 14 F = 15
![Page 14: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/14.jpg)
Hexadecimal to Decimal• By taking the value, 7C, and multiplying each
digit by the weight of the position, we can convert a hexadecimal value to decimal.
C (12)x 1
12
7x16
112
Thus 7C in Hexadecimal is112 + 12 = 124 Decimal.
![Page 15: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/15.jpg)
Hexadecimal to Binary• Because 16 (hex) is a whole
power of 2 (binary), there is a direct correlation between a hexadecimal value and a binary value.
• Each hex value corresponds to a unique binary nibble, since a nibble has 16 unique states.
Binary Hex
0000 0
0001 1
0010 20011 30100 40101 50110 60111 71000 81001 91010 A1011 B1100 C1101 D1110 E1111 F
![Page 16: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/16.jpg)
• Because each nibble is a hexadecimal value, it is simple to convert binary to hexadecimal and vice-versa.
00101110E2
In programming or computer use many times In programming or computer use many times values are represented in hexadecimal for a good values are represented in hexadecimal for a good human to computer interface number system.human to computer interface number system.DIRS = 00F0DIRS = 00F0The COM1 address is 03F8The COM1 address is 03F8The MAC address is: 0C12CEF69B01The MAC address is: 0C12CEF69B01
![Page 17: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/17.jpg)
Binary Coded Decimal (BCD)• BCD is used by many devices to have a direct
correlation between a binary nibble and a decimal value.
• BCD is simply a subset of hexadecimal where A (1010) through F (1111) are invalid. It is denoted by 95BCD.
1001010195 hexadecimal or BCD
![Page 18: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/18.jpg)
Conversion TableBinary Hex BCD Decimal
0000 0 0 0
0001 1 1 1
0010 2 2 20011 3 3 30100 4 4 40101 5 5 50110 6 6 60111 7 7 71000 8 8 81001 9 9 91010 A Invalid 101011 B Invalid 110100 C Invalid 121101 D Invalid 131110 E Invalid 141111 F Invalid 15
![Page 19: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/19.jpg)
Conversion Calculators
• Many scientific calculators can convert between various number systems. The Microsoft Windows® calculator is one example. It must first be placed in scientific mode.
![Page 20: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/20.jpg)
• Next, select the number system, enter a value, and select a new number system.
Oct is Octal, a Base-8 number system, 0 to 7, where each octal value represents 3 bits.
![Page 21: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/21.jpg)
ASCII Codes• A byte doesn't always represent a value. In many cases the value
represents a code for a use, such as representing alpha-numeric characters. ASCII is one example.
• ASCII is a 7-bit code where each value represents a unique character or control function for the transmission of data, such as a text message to terminal. With 7-bits, there are 128 unique codes or characters that may be represented. This is a standard and strictly adhered too.
• Extended ASCII is an 8-bit code providing 256 unique characters or codes. Different systems use the upper 128 values as they desire.
![Page 22: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/22.jpg)
From Page 337 of the BASIC Stamp Manual Version 2
![Page 23: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/23.jpg)
Summary
• As programmers, it is important to be able to relate controllers in other number systems, such as binary, hexadecimal and BCD.
• It is also important to understand the ASCII table and use in representing control and alphanumeric character representations.
![Page 24: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/24.jpg)
Binary Number Powers of Two• 1 bit -> 2 states 0,1 (on/off)• 2 bits -> 4 states 00, 01, 10 ,11• 3 bits -> 8 states 000,001,010,011,100,101,110,111• 4 bits -> 16 states (nibble)• 5 bits -> 32 states• 8 bits -> 256 states (byte)• 10 bits -> 1024 states ( 1K)• 16 bits -> 65,536 states (64K) (Word)• 20 bits -> 1,048,576 states (1M)• 32 bits -> 4,294,967,296 states (4G) (2 words)• In general 2 N states are possible with N bits
![Page 25: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/25.jpg)
Example: Binary Addition
= 83
57+ 26
![Page 26: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/26.jpg)
Example: Binary Multiplication
![Page 27: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/27.jpg)
Unsigned• Limited to situations when processing and
inputs are always positive• Important in representation data or signals
absolute value • Largest number all ones, smallest all zeroes
( byte examples)– FF 1111111 Max positive– 00 00000000 Zero (smallest)
![Page 28: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/28.jpg)
Signed• Used when processing negative numbers or doing
associated subtraction and multiplication• Important in representation data or signals that “go
below zero point” • Two’s compliment format Most significant bit donates
sign ( 0 is positive, 1 is minus)• ( byte examples)
– 7F 01111111 Max positive– 00 00000000 Zero– FF 11111111 Negative one– 80 10000000 Max negative
![Page 29: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/29.jpg)
3.3.v0
0000 0000 0000 0000 (0)
Input
0111 1111 1111 0000 (+0.999)
1000 0000 0000 0000 (-1)
Signed and Unsigned Format
3.3v0 0000 0000 0000 0000 (0)
0000 1111 1111 1111 (4095)
0000 1000 0000 0000 (2048)
Input
Unsigned Integer
Signed
![Page 30: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/30.jpg)
Summary Binary Data Representation Schemes
• Numbers/data– Signed magnitude ( MSB represents Sign bit)
– Unsigned magnitude ( MSB is part of number)
– Machine defined ( machine codes or bits mean control/or status for program operation)
– ASCII ( pre-defined agreed to symbol to binary table)
– Binary Coded Decimal• Two nibbles side by side
• Each nibble represents a binary four bit number from 0-9
Confusing to write out strings of 1’s and 0’s -> best to use HEX shorthand
![Page 31: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/31.jpg)
Machine Codes• Machine specific instruction codes
• Varies in size and definition from machine to machine.– Highly dependent on internal machine registers
and computational capabilities
![Page 32: EET 250 Number systems. Introduction to Number Systems While we live in a world where the decimal number is predominant in our lives, computers and digital](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f205503460f94c389ac/html5/thumbnails/32.jpg)
Assignments
• Complete Handout 1 on Number systems
• Read Chapter 2 of Bates book do questions 1,2,3