Thai Industrial Standard 620-2533

Thai Industrial Standard 620-2533, commonly referred to as TIS-620, is the most common character set and character encoding for the Thai language. The standard is published by the Thai Industrial Standards Institute (TISI), an organ of the Ministry of Industry under the Royal Thai Government, and is the sole official standard for encoding Thai in Thailand. The descriptive name of the standard is "Standard for Thai Character Codes for Computers" (Thai: รหัสสำหรับอักขระไทยที่ใช้กับคอมพิวเตอร์). "2533" refers to year 2533 of the Buddhist Era (1990), the year the present version of the standard was published; a previous revision, TIS 620-2529 (1986), is now obsolete.

TIS-620 is the IANA preferred charset name for TIS-620, and that charset name is used also for ISO/IEC 8859-11 (which adds a no-break space character at 0xA0, which is unassigned in TIS-620). When the IANA name is used the codes are supplemented with the C0 and C1 control codes from ISO/IEC 6429.

Structure

TIS-620 is a conventionally structured Extended ASCII national character set that retains full compatibility with 7-bit ASCII and uses the 8-bit range hex A1 to FB for encoding the Thai alphabet. Due to the complex combining nature of Thai vowels and diacritics, TIS-620 is intended for information interchange only, and an additional display engine is required to compose characters correctly.

Variants

A nearly identical version of TIS-620 has been adopted as ISO/IEC 8859-11 in 2001, the sole difference being that ISO/IEC 8859-11 defines hex A0 as a non-breaking space, while TIS-620 leaves it undefined but reserved. (In practice, this small distinction is usually ignored.)

The ISO/IEC 8859-11 set has also been registered as ISO-IR-166 by Ecma International, but this variation adds explicit escape codes for signaling the beginning and end of Thai character sequences.

The TIS-620 character set ordering has been used essentially as is within Unicode (ISO/IEC 10646) as well. Unicode's Thai block is U+0E01 through U+0E7F, and TIS-620 Thai characters can be converted to UTF-16 simply by prefixing each byte with 0E and subtracting hex A0 from the value.

Character set

TIS-620[1]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_
0
1_
16
2_
32
SP
0020
!
0021
"
0022
#
0023
$
0024
%
0025
&
0026
'
0027
(
0028
)
0029
*
002A
+
002B
,
002C
-
002D
.
002E
/
002F
3_
48
0
0030
1
0031
2
0032
3
0033
4
0034
5
0035
6
0036
7
0037
8
0038
9
0039
:
003A
;
003B
<
003C
=
003D
>
003E
?
003F
4_
64
@
0040
A
0041
B
0042
C
0043
D
0044
E
0045
F
0046
G
0047
H
0048
I
0049
J
004A
K
004B
L
004C
M
004D
N
004E
O
004F
5_
80
P
0050
Q
0051
R
0052
S
0053
T
0054
U
0055
V
0056
W
0057
X
0058
Y
0059
Z
005A
[
005B
\
005C
]
005D
^
005E
_
005F
6_
96
`
0060
a
0061
b
0062
c
0063
d
0064
e
0065
f
0066
g
0067
h
0068
i
0069
j
006A
k
006B
l
006C
m
006D
n
006E
o
006F
7_
112
p
0070
q
0071
r
0072
s
0073
t
0074
u
0075
v
0076
w
0077
x
0078
y
0079
z
007A
{
007B
|
007C
}
007D
~
007E
8_
128
9_
144
A_
160

0E01

0E02

0E03

0E04

0E05

0E06

0E07

0E08

0E09

0E0A

0E0B

0E0C

0E0D

0E0E

0E0F
B_
176

0E10

0E11

0E12

0E13

0E14

0E15

0E16

0E17

0E18

0E19

0E1A

0E1B

0E1C

0E1D

0E1E

0E1F
C_
192

0E20

0E21

0E22

0E23

0E24

0E25

0E26

0E27

0E28

0E29

0E2A

0E2B

0E2C

0E2D

0E2E

0E2F
D_
208

0E30
◌ั
0E31

0E32

0E33
◌ิ
0E34
◌ี
0E35
◌ึ
0E36
◌ื
0E37
◌ุ
0E38
◌ู
0E39
◌ฺ
0E3A
฿
0E3F
E_
224

0E40

0E41

0E42

0E43

0E44

0E45

0E46
◌็
0E47
◌่
0E48
◌้
0E49
◌๊
0E4A
◌๋
0E4B
◌์
0E4C
◌ํ
0E4D
◌๎
0E4E

0E4F
F_
240

0E50

0E51

0E52

0E53

0E54

0E55

0E56

0E57

0E58

0E59

0E5A

0E5B

  Letter  Number  Punctuation  Symbol  Other  Undefined

In the table above, 20 is the regular SPACE character. Code values 00-1F, 7F, 80-9F, A0, DB-DE and FC-FF are not assigned to characters by TIS-620.

Code values D1, D4-DA, E7-EE are combining characters.

Further reading

  • Flohr, Guido (2016) [2006]. "Locale::RecodeData::TIS_620 - Conversion routines for TIS-620". CPAN libintl-perl. 1.0. Archived from the original on 2017-01-14. Retrieved 2017-01-14.
gollark: Hmm... what's desirable as a CB but not a 2G?
gollark: ... except I have no CB female... oh well.
gollark: I'll use some spare coppers or something.
gollark: I might make my own pair of those. People like zyus, right?
gollark: You may need others for more than one per week.

References

  1. Leisher, Mark (1998-03-06), TCCII 2533 1009 / TIS 620 Thai, TIS620.TXT
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.