Tuple Logo
ASCII

SHARE

ASCII

ASCII (American Standard Code for Information Interchange) is a text coding standard that forms the basis of digital communication. It is used worldwide to encode text data consistently, allowing computers and other devices to exchange information seamlessly. In this blog, we explain what ASCII is, why it's important and how it works, with practical examples and insights for IT professionals, developers, entrepreneurs and tech enthusiasts.

ASCII is a character set that converts each character, number or symbol into a unique binary code. This makes it possible to store and process text information in digital systems. The standard was developed in 1963 by the American National Standards Institute (ANSI) and is still used worldwide.

How does ASCII work?

ASCII uses 7 bits to encode characters, resulting in 128 possible combinations (from 0000000 to 1111111). These combinations include:

Example of ASCII codes

Character

Decimal

Hexadecimal

Binary

A

65

41

01000001

B

66

42

01000010

1

49

31

00110001

!

33

21

00100001

This encoding allows computers to understand and correctly display letters, numbers and symbols.

Why is ASCII important?

ASCII plays a crucial role in digital communication because of the following reasons:

1. Standardization

ASCII provides a universal standard for encoding text, allowing different systems and devices to communicate with each other without problems.

2. Compatibility

Virtually all modern programming languages and operating systems understand ASCII, making it a reliable choice for text processing and communication.

3. Scalability

Although ASCII originally supported only 128 characters, it has become the basis for more comprehensive encodings such as UTF-8. Unicode, including UTF-8, builds on ASCII and supports thousands of additional characters for international communication.

Potential challenges.

ASCII in practice: Applications and examples

ASCII can be found in various industries and applications. Here are some common examples:

  1. Web development

    Web developers use ASCII to encode characters in HTML, CSS and JavaScript. Special characters such as spaces or symbols are represented by ASCII codes (e.g.,   for a non-breakable space).

  2. Network communication

    Network protocols such as HTTP, FTP and SMTP use ASCII codes to exchange text data. This ensures that e-mails and web pages are formatted and displayed correctly.

  3. Databases and storage.

    In databases, text data is often stored and retrieved using ASCII codes, especially when simple text strings without special characters are processed.

  4. Programming languages

    Many programming languages, such as Python, C++ and Java, use ASCII for string manipulation and text processing. In Python, you can easily query ASCII codes with the ord() function.

Example in Python:

print(ord('A'))  # Output: 65
print(chr(65)) # Output: 'A'

ASCII versus Unicode: What's the difference?

Although ASCII was long the standard, Unicode is now the norm because of the need for a more comprehensive character set. Here are the key differences:

Feature

ASCII

Unicode (UTF-8)

Number of bits

7 bits

8 to 32 bits

Number of characters

128

More than 143.000

Language support

Latin characters only

Global support

Application

Basic text encoding

Modern software and systems

Unicode is backwards compatible with ASCII, allowing legacy systems to still function within modern applications.

The basis for many years

ASCII has been the basis for digital text communication for decades. Although Unicode is now the standard, ASCII remains relevant in systems where simple, consistent text encoding is needed. Understanding ASCII will help you better understand how digital communication works and the transition to modern character encodings.

Complete ASCII Table

Below is the complete ASCII table, including all control characters, numbers, letters, and special symbols. This table serves as a helpful reference when working with character encoding, data transmission, or programming languages that utilize ASCII. The values are displayed in decimal, hexadecimal, and binary formats, along with their corresponding symbols and descriptions.

 

Use this table to quickly look up ASCII values or gain a deeper understanding of how characters are encoded at a low level.

 

Control Characters (0–31 + 127)

Decimal

Hex

Binary

Symbol

Description

0

00

00000000

NUL

Null character

1

01

00000001

SOH

Start of Header

2

02

00000010

STX

Start of Text

3

03

00000011

ETX

End of Text

4

04

00000100

EOT

End of Transmission

5

05

00000101

ENQ

Enquiry

6

06

00000110

ACK

Acknowledge

7

07

00000111

BEL

Bell

8

08

00001000

BS

Backspace

9

09

00001001

TAB

Horizontal Tab

10

0A

00001010

LF

Line Feed

11

0B

00001011

VT

Vertical Tab

12

0C

00001100

FF

Form Feed

13

0D

00001101

CR

Carriage Return

14

0E

00001110

SO

Shift Out

15

0F

00001111

SI

Shift In

16

10

00010000

DLE

Data Link Escape

17

11

00010001

DC1

Device Control 1

18

12

00010010

DC2

Device Control 2

19

13

00010011

DC3

Device Control 3

20

14

00010100

DC4

Device Control 4

21

15

00010101

NAK

Negative Acknowledge

22

16

00010110

SYN

Synchronous Idle

23

17

00010111

ETB

End of Transmission Block

24

18

00011000

CAN

Cancel

25

19

00011001

EM

End of Medium

26

1A

00011010

SUB

Substitute

27

1B

00011011

ESC

Escape

28

1C

00011100

FS

File Separator

29

1D

00011101

GS

Group Separator

30

1E

00011110

RS

Record Separator

31

1F

00011111

US

Unit Separator

127

7F

01111111

DEL

Delete

 

Numbers (0–9) (48–57)

Decimal

Hex

Binary

Symbol

Description

48

30

00110000

0

Digit 0

49

31

00110001

1

Digit 1

50

32

00110010

2

Digit 2

51

33

00110011

3

Digit 3

52

34

00110100

4

Digit 4

53

35

00110101

5

Digit 5

54

36

00110110

6

Digit 6

55

37

00110111

7

Digit 7

56

38

00111000

8

Digit 8

57

39

00111001

9

Digit 9

 

Uppercase Letters (A–Z) (65–90)

Decimal

Hex

Binary

Symbol

Description

65

41

01000001

A

Uppercase A

66

42

01000010

B

Uppercase B

67

43

01000011

C

Uppercase C

68

44

01000100

D

Uppercase D

69

45

01000101

E

Uppercase E

70

46

01000110

F

Uppercase F

71

47

01000111

G

Uppercase G

72

48

01001000

H

Uppercase H

73

49

01001001

I

Uppercase I

74

4A

01001010

J

Uppercase J

75

4B

01001011

K

Uppercase K

76

4C

01001100

L

Uppercase L

77

4D

01001101

M

Uppercase M

78

4E

01001110

N

Uppercase N

79

4F

01001111

O

Uppercase O

80

50

01010000

P

Uppercase P

81

51

01010001

Q

Uppercase Q

82

52

01010010

R

Uppercase R

83

53

01010011

S

Uppercase S

84

54

01010100

T

Uppercase T

85

55

01010101

U

Uppercase U

86

56

01010110

V

Uppercase V

87

57

01010111

W

Uppercase W

88

58

01011000

X

Uppercase X

89

59

01011001

Y

Uppercase Y

90

5A

01011010

Z

Uppercase Z

 

Lowercase Letters (a–z) (97–122)

Decimal

Hex

Binary

Symbol

Description

97

61

01100001

a

Lowercase a

98

62

01100010

b

Lowercase b

99

63

01100011

c

Lowercase c

100

64

01100100

d

Lowercase d

101

65

01100101

e

Lowercase e

102

66

01100110

f

Lowercase f

103

67

01100111

g

Lowercase g

104

68

01101000

h

Lowercase h

105

69

01101001

i

Lowercase i

106

6A

01101010

j

Lowercase j

107

6B

01101011

k

Lowercase k

108

6C

01101100

l

Lowercase l

109

6D

01101101

m

Lowercase m

110

6E

01101110

n

Lowercase n

111

6F

01101111

o

Lowercase o

112

70

01110000

p

Lowercase p

113

71

01110001

q

Lowercase q

114

72

01110010

r

Lowercase r

115

73

01110011

s

Lowercase s

116

74

01110100

t

Lowercase t

117

75

01110101

u

Lowercase u

118

76

01110110

v

Lowercase v

119

77

01110111

w

Lowercase w

120

78

01111000

x

Lowercase x

121

79

01111001

y

Lowercase y

122

7A

01111010

z

Lowercase z

Special Characters and Punctuation (32–47, 58–64, 91–96, 123–126)

Decimal

Hex

Binary

Symbol

Description

32

20

00100000

(space)

Space

33

21

00100001

!

Exclamation mark

34

22

00100010

"

Double quote

35

23

00100011

#

Number sign

36

24

00100100

$

Dollar sign

37

25

00100101

%

Percent sign

38

26

00100110

&

Ampersand

39

27

00100111

'

Apostrophe

40

28

00101000

(

Left parenthesis

41

29

00101001

)

Right parenthesis

42

2A

00101010

*

Asterisk

43

2B

00101011

+

Plus sign

44

2C

00101100

,

Comma

45

2D

00101101

-

Hyphen-minus

46

2E

00101110

.

Period

47

2F

00101111

/

Forward slash

58

3A

00111010

:

Colon

59

3B

00111011

;

Semicolon

60

3C

00111100

Less-than sign

61

3D

00111101

=

Equals sign

62

3E

00111110

Greater-than sign

63

3F

00111111

?

Question mark

64

40

01000000

@

At symbol

91

5B

01011011

[

Left square bracket

92

5C

01011100

\

Backslash

93

5D

01011101

]

Right square bracket

94

5E

01011110

^

Caret

95

5F

01011111

_

Underscore

96

60

01100000

`

Grave accent

123

7B

01111011

{

Left curly brace

124

7C

01111100

|

Vertical bar

125

7D

01111101

}

Right curly brace

126

7E

01111110

~

Tilde

Frequently Asked Questions
What is an object in programming?

An object in programming is an instance of a class and contains properties (attributes) and functionalities (methods). Objects are used in object-oriented programming (OOP) to combine data and functionality into a single entity.


What are objects in a computer?

In a computer, objects can refer to software entities within OOP, as well as files, windows or system resources managed by the operating system. An object in OOP is a programming concept, while an object in a computer can be interpreted more broadly.


What is the difference between an object and a class?

A class is a blueprint or template from which objects are created. An object is an instance of a class with specific properties and methods. For example, a class Car can be a blueprint, and an object my_car = Car(“Tesla”, “red”) is a specific car with characteristics.


Articles you might enjoy

Piqued your interest?

We'd love to tell you more.

Contact us
Tuple Logo
Veenendaal (HQ)
De Smalle Zijde 3-05, 3903 LL Veenendaal
info@tuple.nl‭+31 318 24 01 64‬
Quick Links
Customer Stories