EE 109 Unit 2. Binary Representation Systems

Similar documents
3.1. Unit 3. Binary Representation

EE 109 Unit 2. Analog vs. Digital. Analog vs. Digital. Binary Representation Systems ANALOG VS. DIGITAL

EE 109 Unit 3. Analog vs. Digital. Analog vs. Digital. Binary Representation Systems ANALOG VS. DIGITAL

Unit 3. Analog vs. Digital. Analog vs. Digital ANALOG VS. DIGITAL. Binary Representation

1.1. Unit 1. Integer Representation

10.1. Unit 10. Signed Representation Systems Binary Arithmetic

Fundamentals of Programming (C)

Chapter 2 Bits, Data Types, and Operations

Number System (Different Ways To Say How Many) Fall 2016

Chapter 2 Bits, Data Types, and Operations

Data Representation and Binary Arithmetic. Lecture 2

Fundamentals of Programming

Chapter 2 Number System

Numbers and Computers. Debdeep Mukhopadhyay Assistant Professor Dept of Computer Sc and Engg IIT Madras

Chapter 2 Bits, Data Types, and Operations

Number Systems for Computers. Outline of Introduction. Binary, Octal and Hexadecimal numbers. Issues for Binary Representation of Numbers

1.1. INTRODUCTION 1.2. NUMBER SYSTEMS

Number Representations

DATA REPRESENTATION. Data Types. Complements. Fixed Point Representations. Floating Point Representations. Other Binary Codes. Error Detection Codes

CMSC 313 Lecture 03 Multiple-byte data big-endian vs little-endian sign extension Multiplication and division Floating point formats Character Codes

CS/ECE 252: INTRODUCTION TO COMPUTER ENGINEERING UNIVERSITY OF WISCONSIN MADISON

Chapter 2 Bits, Data Types, and Operations

CPS 104 Computer Organization and Programming Lecture-2 : Data representations,

Number Systems Base r

Positional Number System

SIGNED AND UNSIGNED SYSTEMS

Exercises Software Development I. 03 Data Representation. Data types, range of values, internal format, literals. October 22nd, 2014

Chapter 2 Bits, Data Types, and Operations

CS/ECE 252: INTRODUCTION TO COMPUTER ENGINEERING UNIVERSITY OF WISCONSIN MADISON

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, FALL 2012

Chap 1. Digital Computers and Information

Chapter 3. Information Representation

Binary Numbers. The Basics. Base 10 Number. What is a Number? = Binary Number Example. Binary Number Example

Data Representa5on. CSC 2400: Computer Systems. What kinds of data do we need to represent?

Data Representa5on. CSC 2400: Computer Systems. What kinds of data do we need to represent?

Number System. Introduction. Decimal Numbers

plc numbers Encoded values; BCD and ASCII Error detection; parity, gray code and checksums

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, SPRING 2013

Under the Hood: Data Representation. Computer Science 104 Lecture 2

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, FALL 2012

Bits and Bytes. Data Representation. A binary digit or bit has a value of either 0 or 1; these are the values we can store in hardware devices.

2a. Codes and number systems (continued) How to get the binary representation of an integer: special case of application of the inverse Horner scheme

DIGITAL SYSTEM DESIGN

5/17/2009. Digitizing Discrete Information. Ordering Symbols. Analog vs. Digital

Oberon Data Types. Matteo Corti. December 5, 2001

Data Representation COE 301. Computer Organization Prof. Muhamed Mudawar

The Binary Number System

Number Systems II MA1S1. Tristan McLoughlin. November 30, 2013

Do not start the test until instructed to do so!

Digital Systems COE 202. Digital Logic Design. Dr. Muhamed Mudawar King Fahd University of Petroleum and Minerals

Logic and Computer Design Fundamentals. Chapter 1 Digital Computers and Information

Simple Data Types in C. Alan L. Cox

MACHINE LEVEL REPRESENTATION OF DATA

Lecture (01) Digital Systems and Binary Numbers By: Dr. Ahmed ElShafee

UNIT 2 NUMBER SYSTEM AND PROGRAMMING LANGUAGES

CSC 8400: Computer Systems. Represen3ng and Manipula3ng Informa3on. Background: Number Systems

Do not start the test until instructed to do so!

Lecture (01) Introduction Number Systems and Conversion (1)

IT 1204 Section 2.0. Data Representation and Arithmetic. 2009, University of Colombo School of Computing 1

Experiment 3. TITLE Optional: Write here the Title of your program.model SMALL This directive defines the memory model used in the program.

CSE-1520R Test #1. The exam is closed book, closed notes, and no aids such as calculators, cellphones, etc.

World Inside a Computer is Binary

CPSC 301: Computing in the Life Sciences Lecture Notes 16: Data Representation

Fundamental Data Types

Imperial College London Department of Computing

Do not start the test until instructed to do so!

FA269 - DIGITAL MEDIA AND CULTURE

This is great when speed is important and relatively few words are necessary, but Max would be a terrible language for writing a text editor.

Digital Systems and Binary Numbers

ASSIGNMENT 5 TIPS AND TRICKS

Introduction to Numbering Systems

DRAM uses a single capacitor to store and a transistor to select. SRAM typically uses 6 transistors.

Chapter 1. Hardware. Introduction to Computers and Programming. Chapter 1.2

Source coding and compression

Rui Wang, Assistant professor Dept. of Information and Communication Tongji University.

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Bits and Bytes and Numbers

CSE-1520R Test #1. The exam is closed book, closed notes, and no aids such as calculators, cellphones, etc.

COMP2611: Computer Organization. Data Representation

EXPERIMENT 8: Introduction to Universal Serial Asynchronous Receive Transmit (USART)

Final Labs and Tutors

S-Series Sensor ASCII Protocol v8.1.0

Chemistry Hour Exam 2

Unit 1. Digital Representation

Unit 3, Lesson 2 Data Types, Arithmetic,Variables, Input, Constants, & Library Functions. Mr. Dave Clausen La Cañada High School

EXPERIMENT 7: Introduction to Universal Serial Asynchronous Receive Transmit (USART)

COMP Overview of Tutorial #2

Introduction. Chapter 1. Hardware. Introduction. Creators of Software. Hardware. Introduction to Computers and Programming (Fall 2015, CSUS)

CS341 *** TURN OFF ALL CELLPHONES *** Practice NAME

SE311: Design of Digital Systems

PureScan - ML1. Configuration Guide. Wireless Linear Imager Wireless Laser scanner - 1 -

Digital Systems and Binary Numbers

= Chapter 1. The Binary Number System. 1.1 Why Binary?

Chapter 4: Data Representations

Data Representation. DRAM uses a single capacitor to store and a transistor to select. SRAM typically uses 6 transistors.

Chapter 8. Characters and Strings

Digital Representation

ECE 20B, Winter Purpose of Course. Introduction to Electrical Engineering, II. Administration

COMP2121: Microprocessors and Interfacing. Number Systems

Representing Information. Bit Juggling. - Representing information using bits - Number representations. - Some other bits - Chapters 1 and 2.3,2.

Inf2C - Computer Systems Lecture 2 Data Representation

Transcription:

EE 09 Unit 2 Binary Representation Systems

ANALOG VS. DIGITAL 2

3 Analog vs. Digital The analog world is based on continuous events. Observations can take on (real) any value. The digital world is based on discrete events. Observations can only take on a finite number of discrete values

4 Analog vs. Digital Q. Which is better? A. Depends on what you are trying to do. Some tasks are better handled with analog data, others with digital data. Analog means continuous/real valued signals with an infinite number of possible values Digital signals are discrete [i.e. of n values]

5 Analog vs. Digital How much money is in my checking account? Analog: Oh, some, but not too much. Digital: $243.67

6 Analog vs. Digital How much do you love me? Analog: I love you with all my heart!!!! Digital: 3.2 x 0 3 MegaHearts

volts volts 7 Analog signal Signal Types Continuous time signal where each voltage level has a unique meaning Most information types are inherently analog Digital signal Continuous signal where voltage levels are mapped into 2 ranges meaning 0 or Possible to convert a single analog signal to a set of digital signals Threshold 0 0 0 Analog time Digital time

Logic 0 Illegal Logic 8 Signals and Meaning Analog Digital 5.0 V 5.0 V 2.0 V Threshold Range 0.8 V 0.0 V Each voltage value has unique meaning 0.0 V Each voltage maps to '0' or '' (There is a small illegal range where meaning is undefined since threshold can vary based on temperature, small variations in manufacturing, etc.)

9 Analog vs. Digital USC students used to program analog computers!

0 Analog vs. Digital Analog Advantages Can be simpler for some tasks. Ex. AM radio Disadvantages Difficult to build complex systems. Not repeatable Digital Easier to build complex system. Repeatable! More complex for simple tasks.

Digital is About Numbers In a digital world, numbers are used to represent all the possible discrete events Numerical values Computer instructions (ADD, SUB, BLE, ) Characters ('a', 'b', 'c', ) Conditions (on, off, ready, paper jam, ) Numbers allow for easy manipulation Add, multiply, compare, store, Results are repeatable Each time we add the same two number we get the same result

2 The Real (Analog) World The real world is inherently analog. To interface with it, our digital systems need to: Convert analog signals to digital values (numbers) at the input. Convert digital values to analog signals at the output. Analog signals can come in many forms Voltage, current, light, color, magnetic fields, pressure, temperature, acceleration, orientation

DIGITAL REPRESENTATION 3

4 Interpreting Binary Strings Given a string of s and 0 s, you need to know the representation system being used, before you can understand the value of those s and 0 s. Information (value) = s + Context (System) Unsigned Binary system 000000 =? BCD System ASCII system 65 0 A ASCII 4 BCD

5 Binary Representation Systems Integer Systems Unsigned Unsigned (Normal) binary Signed Signed Magnitude 2 s complement Excess-N* s complement* Floating Point For very large and small (fractional) numbers Codes Text ASCII / Unicode Decimal Codes BCD (Binary Coded Decimal) / (842 Code) * = Not fully covered in this class

6 Number Systems Number systems consist of. A base (radix) r 2. r coefficients [0 to r-] Human System: Decimal (Base 0): 0,,2,3,4,5,6,7,8,9 Computer System: Binary (Base 2): 0, Human systems for working with computer systems (shorthand for human to read/write binary) Octal (Base 8): 0,,2,3,4,5,6,7 Hexadecimal (Base 6): 0-9,A,B,C,D,E,F (A thru F = 0 thru 5)

7 Anatomy of a Decimal Number A number consists of a string of explicit coefficients (digits). Each coefficient has an implicit place value which is a power of the base. The value of a decimal number (a string of decimal coefficients) is the sum of each coefficient times it place value radix (base) (934) 0 = 9*0 2 + 3*0 + 4*0 0 = 934 Explicit coefficients Implicit place values (3.52) 0 = 3*0 0 + 5*0 - + 2*0-2 = 3.52

8 Positional Number Systems (Unsigned) A number in base r has place values/weights that are the powers of the base Denote the coefficients as: a i Left-most digit = Most Significant Digit (MSD) Right-most digit = Least Significant Digit (LSD) a 3 a 2 r 3 r 2 a a 0... a - a -2 r r 0. r - r -2... N r = Σ i (a i *r i ) = D 0

9 Examples (746) 8 = 7*8 2 + 4*8 + 6*8 0 = 448 + 32 + 6 = 486 0 (A5) 6 = *6 2 + 0*6 + 5*6 0 = 256 + 60 + 5 = 42 0

20 Anatomy of a Binary Number Same as decimal but now the coefficients are and 0 and the place values are the powers of 2 radix (base) Most Significant Digit (MSB) Least Significant (LSB) (0) 2 = *2 3 + 0*2 2 + *2 + *2 0 coefficients place values = powers of 2

2 Binary Examples (00.) 2 = 8 + + 0.5 = 9.5 0 8 4 2.5 (0000) 2 = 28 + 32 + 6 + = 77 0 28 32 6

22 Powers of 2 2 0 = 2 = 2 2 2 = 4 2 3 = 8 2 4 = 6 2 5 = 32 2 6 = 64 2 7 = 28 2 8 = 256 2 9 = 52 2 0 = 024 024 52 256 28 64 32 6 8 4 2

23 Practice On Your Own Decimal equivalent is the sum of each coefficient multiplied by its implicit place value (power of the base) = Σ i (a i * r i ) [a i = coefficient, r = base] (00) 2 = *2 4 + *2 3 + *2 = 6 + 8 + 2 = (26) 0 (6523) 8 = 6*8 3 + 5*8 2 + 2*8 + 3*8 0 = 3072 + 320 + 6 + 3 = (34) 0 (AD2) 6 = 0*6 2 + 3*6 + 2*6 0 = 2560 + 208 + 2 = (2770) 0

24 Unique Combinations Given n digits of base r, how many unique numbers can be formed? r n What is the range? [0 to r n -] 2-digit, decimal numbers (r=0, n=2) 0-9 0-9 00 combinations: 00-99 3-digit, decimal numbers (r=0, n=3) 000 combinations: 000-999 4-bit, binary numbers (r=2, n=4) 0-0- 0-0- 6 combinations: 0000-6-bit, binary numbers (r=2, n=6) 64 combinations: 000000- Main Point: Given n digits of base r, r n unique numbers can be made with the range [0 - (r n -)]

25 Approximating Large Powers of 2 Often need to find decimal approximation of a large powers of 2 like 2 6, 2 32, etc. Use following approximations: 2 0 0 3 ( thousand) = Kilo- 2 20 0 6 ( million) = Mega- 2 30 0 9 ( billion) = Giga- 2 40 0 2 ( trillion) = Tera- For other powers of 2, decompose into product of 2 0 or 2 20 or 2 30 and a power of 2 that is less than 2 0 6-bit half word: 64K numbers 32-bit word: 4G numbers 64-bit dword: 6 million trillion numbers 2 6 = 2 6 * 2 0 64 * 0 3 = 64,000 2 24 = 2 4 * 2 20 6 * 0 6 = 6,000,000 2 28 = 2 8 * 2 20 256 * 0 6 = 256,000,000 2 32 = 2 2 * 2 30 4 * 0 9 = 4,000,000,000

26 Decimal to Unsigned Binary To convert a decimal number, x, to binary: Only coefficients of or 0. So simply find place values that add up to the desired values, starting with larger place values and proceeding to smaller values and place a in those place values and 0 in all others 25 0 = 0 32 0 0 6 8 4 2 For 25 0 the place value 32 is too large to include so we include 6. Including 6 means we have to make 9 left over. Include 8 and.

27 Decimal to Unsigned Binary 73 0 = 87 0 = 0 0 0 0 0 28 64 32 6 8 4 2 0 0 0 45 0 = 0 0 0 0 0 0.625 0 = 0 0 0.5.25.25.0625.0325

28 Decimal to Another Base To convert a decimal number, x, to base r: Use the place values of base r (powers of r). Starting with largest place values, fill in coefficients that sum up to desired decimal value without going over. 75 0 = 0 4 B hex 256 6

29 Timeout-Liars & Truth Tellers You're walking on an island with a volcano and natives who are either truth tellers or liars. You meet a native, and you want to know which kind of person he is. So you ask him Are you a truth-teller? When he is answering, the volcano makes a loud noise and you cannot hear the answer. So you ask him again Excuse me, I couldn't hear what you said, did you say you were a truth-teller? - and he answers No, I didn't say that, I said I was a liar. Is the native a liar or a truth-teller? (Hint: Think about what the native's could have answered to the first question, first assuming he's a truth-teller and then assuming he's a liar.) http://math.berkeley.edu/~antonio/mec/liars.html

30 Signed Magnitude 2 s Complement System SIGNED SYSTEMS

3 Binary Representation Systems Integer Systems Unsigned Unsigned (Normal) binary Signed Signed Magnitude 2 s complement s complement* Excess-N* Floating Point For very large and small (fractional) numbers Codes Text ASCII / Unicode Decimal Codes BCD (Binary Coded Decimal) / (842 Code) * = Not covered in this class

32 Unsigned and Signed Normal (unsigned) binary can only represent positive numbers All place values are positive To represent negative numbers we must use a modified binary representation that takes into account sign (pos. or neg.) We call these signed representations

33 Signed Number Representation 2 Primary Systems Signed Magnitude Two s Complement (most widely used for integer representation)

34 Signed numbers All systems used to represent negative numbers split the possible binary combinations in half (half for positive numbers / half for negative numbers) 0 0 0000 000 000 00 In both signed magnitude and 2 s complement, positive and negative numbers are separated using the MSB 00 0 00-00 000 + 0 000 00 00 MSB= means negative MSB=0 means positive

35 Signed Magnitude System Use binary place values but now MSB represents the sign ( if negative, 0 if positive) 4-bit Unsigned 3 8 2 4 2 0 0 to 5 4-bit Signed Magnitude 3 2 0-7 to +7 +/- 4 2 8-bit Signed Magnitude 7 6 5 4 3 2 0-27 to +27 +/- 64 32 6 8 4 2

36 Signed Magnitude Examples 0 = -5 4-bit Signed Magnitude +/- 0 +/- 4 0 4 2 2 = +3 = -7 Notice that +3 in signed magnitude is the same as in the unsigned system +/- 4 2 0 0 0 0 = -9 8-bit Signed Magnitude +/- 64 32 6 8 4 2 0 0 0 0 0 = +25 +/- 64 32 6 8 4 2 Important: Positive numbers have the same representation in signed magnitude as in normal unsigned binary

37 Signed Magnitude Range Given n bits MSB is sign Other n- bits = normal unsigned place values Range with n- unsigned bits = [0 to 2 n- -] Range with n-bits of Signed Magnitude [ -2 n- to +2 n- ]

38 Disadvantages of Signed Magnitude. Wastes a combination to represent -0 0000 = 000 = 0 0 2. Addition and subtraction algorithms for signed magnitude are different than unsigned binary (we d like them to be the same to use same HW) 4-6 Swap & make res. negative 6-4 -

39 2 s Complement System Normal binary place values except MSB has negative weight MSB of = -2 n- 4-bit Unsigned 3 8 2 4 2 0 0 to 5 4-bit 2 s complement 3 2 0-8 to +7-8 4 2 8-bit 2 s complement 7 6 5 4 3 2 0-28 to +27-28 64 32 6 8 4 2

40 2 s Complement Examples 0 = -5 4-bit 2 s complement -8 0-8 4 0 4 2 2 = +3 Notice that +3 in 2 s comp. is the same as in the unsigned system = - -8 4 2 0 0 0 0 0 0 = -27 8-bit 2 s complement -28 64 32 6 8 4 2 0 0 0 0 0 = +25-28 64 32 6 8 4 2 Important: Positive numbers have the same representation in 2 s complement as in normal unsigned binary

4 2 s Complement Range Given n bits Max positive value = 0 Includes all n- positive place values Max negative value = 00 00 Includes only the negative MSB place value Range with n-bits of 2 s complement [ -2 n- to +2 n- ] Side note What decimal value is? - 0

42 Comparison of Systems 0000 000 000 00 000 00 00 0 000 0 0 00 0 00 00 0 + +2 +3 +4 +5 +6 +7-0 - -2-3 -4-5 -6-7 Signed Mag. 2 s comp. 0 + +2 +3 +4 +5 +6 +7-8 -7-6 -5-4 -3-2 -

43 Unsigned and Signed Variables In C, unsigned variables use unsigned binary (normal power-of-2 place values) to represent numbers 0 0 0 0 = +47 28 64 32 6 8 4 2 In C, signed variables use the 2 s complement system (Neg. MSB weight) to represent numbers 0 0 0 0 = -09-28 64 32 6 8 4 2

44 IMPORTANT NOTE All computer systems use the 2's complement system to represent signed integers! So from now on, if we say an integer is signed, we are actually saying it uses the 2's complement system unless otherwise specified We will not use "signed magnitude" unless explicitly indicated

45 Zero and Sign Extension Extension is the process of increasing the number of bits used to represent a number without changing its value Unsigned = Zero Extension (Always add leading 0 s): 0 = 000 Increase a 6-bit number to 8-bit number by zero extending 2 s complement = Sign Extension (Replicate sign bit): pos. neg. 000 = 00000 00 = 00 Sign bit is just repeated as many times as necessary

46 Zero and Sign Truncation Truncation is the process of decreasing the number of bits used to represent a number without changing its value Unsigned = Zero Truncation (Remove leading 0 s): 000 = 0 Decrease an 8-bit number to 6-bit number by truncating 0 s. Can t remove a because value is changed 2 s complement = Sign Truncation (Remove copies of sign bit): pos. neg. 00000 = 000 00 = 00 Any copies of the MSB can be removed without changing the numbers value. Be careful not to change the sign by cutting off ALL the sign bits.

47 Data Representation In C/C++ variables can be of different types and sizes Integer Types (signed and unsigned) C Type Bytes s MIPS Name ATmega328 [unsigned] char 8 byte byte [unsigned] short [int] 2 6 half-word word [unsigned] long [int] 4 32 word - [unsigned] long long [int] 8 64 double-word - Can emulate but has no single-instruction support Floating Point Types C Type Bytes s MIPS Name ATmega328 float 4 32 single N/A double 8 64 double N/A

48 Hexadecimal and Octal SHORTHAND FOR BINARY

49 Binary, Octal, and Hexadecimal Octal (base 8 = 2 3 ) Octal digit ( _ ) 8 can represent: 0 7 3 bits of binary ( _) 2 can represent: 000- = 0 7 Conclusion Octal digit = 3 bits Hex (base 6=2 4 ) Hex digit ( _ ) 6 can represent: 0-F (0-5) 4 bits of binary ( ) 2 can represent: 0000-= 0-5 Conclusion Hex digit = 4 bits

50 Binary to Octal or Hex Make groups of 3 bits starting from radix point and working outward Add 0 s where necessary Convert each group of 3 to an octal digit Make groups of 4 bits starting from radix point and working outward Add 0 s where necessary Convert each group of 4 to an octal digit 0000. 0 0 00000. 0 0 0 5 6 6 4 E C 56.6 8 4E.C 6

5 Octal or Hex to Binary Expand each octal digit to a group of 3 bits Expand each hex digit to a group of 4 bits 37.2 8 D93.8 6 000.00 2 00000.000 2 00.0 2 00000. 2

52 Hexadecimal Representation Since values in modern computers are many bits, we use hexadecimal as a shorthand notation (4 bits = hex digit) 0000 = D2 hex or 0xD2 if you write it in C/C++ 000000 = 76CB hex or 0x76CB if you write it in C/C++ Important Point: To interpret the value of a hex number, you must know what underlying binary system is assumed (unsigned, 2 s comp. etc.) D2 hex (what if underlying binary system is unsigned?) D2 hex (what if underlying binary system is signed?) D2 hex ( = 'Ò' in Arial Unicode font)

53 ASCII & Unicode BINARY CODES

54 Binary Representation Systems Integer Systems Unsigned Unsigned (Normal) binary Signed Signed Magnitude 2 s complement s complement* Excess-N* Floating Point For very large and small (fractional) numbers Codes Text ASCII / Unicode Decimal Codes BCD (Binary Coded Decimal) / (842 Code) * = Not covered in this class

55 Binary Codes Using binary we can represent any kind of information by coming up with a code Using n bits we can represent 2 n distinct items Colors of the rainbow: Red = 000 Orange = 00 Yellow = 00 Green = 00 Blue = 0 Purple = Letters: A = 00000 B = 0000 C = 0000... Z = 00

56 BCD Rather than convert a decimal number to binary which may lose some precision (i.e. 0. 0 = infinite binary fraction), BCD represents each decimal digit as a separate group of bits (exact decimal precision) Each digits is represented as a separate 4-bit number (using place values 8,4,2, for each dec. digit) Often used in financial and other applications where decimal precision is needed (439) 0 This is the Binary Coded Decimal (BCD) representation of 439 BCD Representation: 000 00 00 Unsigned Binary Rep.: 00 2 representation of 439 (i.e. using power of 2 place values) This is the binary Important: Some processors have specific instructions to operate on # s represented in BCD

57 ASCII Code Used for representing text characters Originally 7-bits but usually stored as 8-bits = - byte in a computer Example: printf( Hello\n ); Each character is converted to ASCII equivalent H = 0x48, e = 0x65, \n = newline character is represented by either one or two ASCII character LF (0x0A) = line feed (moves cursor down a line) CR (0x0D) = carriage return character (moves cursor to start of current line) Newline for Unix / Mac = LF only Newline for Windows = CR + LF printf() is the method to print text to the screen in C

58 ASCII Table LSD/MSD 0 2 3 4 5 6 7 0 NULL DLW SPACE 0 @ P ` p SOH DC! A Q a q 2 STX DC2 2 B R b r 3 ETX DC3 # 3 C S c s 4 EOT DC4 $ 4 D T d t 5 ENQ NAK % 5 E U e u 6 ACK SYN & 6 F V f v 7 BEL ETB 7 G W g w 8 BS CAN ( 8 H X h x 9 TAB EM ) 9 I Y i y A LF SUB * : J Z j z B VT ESC + ; K [ k { C FF FS, < L \ l D CR GS - = M ] m } E SO RS. > N ^ n ~ F SI US /? O _ o DEL

59 UniCode ASCII can represent only the English alphabet, decimal digits, and punctuation 7-bit code => 2 7 = 28 characters It would be nice to have one code that represented more alphabets/characters for common languages used around the world Unicode 6-bit Code => 65,536 characters Represents many languages alphabets and characters Used by Java as standard character code Unicode hex value (i.e. FB52 => 000000)