Jump to content

Thai Industrial Standard 620-2533

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by GünniX (talk | contribs) at 18:03, 18 April 2020 (Reflist). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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
Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef|
1_
16
Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef|
2_
32
Template:Chset-color-misc|SP
0020
Template:Chset-color-punct|!
0021
Template:Chset-color-punct|"
0022
Template:Chset-color-punct|#
0023
Template:Chset-color-graph|$
0024
Template:Chset-color-punct|%
0025
Template:Chset-color-punct|&
0026
Template:Chset-color-punct|'
0027
Template:Chset-color-punct|(
0028
Template:Chset-color-punct|)
0029
Template:Chset-color-punct|*
002A
Template:Chset-color-graph|+
002B
Template:Chset-color-punct|,
002C
Template:Chset-color-punct|-
002D
Template:Chset-color-punct|.
002E
Template:Chset-color-punct|/
002F
3_
48
Template:Chset-color-digit|0
0030
Template:Chset-color-digit|1
0031
Template:Chset-color-digit|2
0032
Template:Chset-color-digit|3
0033
Template:Chset-color-digit|4
0034
Template:Chset-color-digit|5
0035
Template:Chset-color-digit|6
0036
Template:Chset-color-digit|7
0037
Template:Chset-color-digit|8
0038
Template:Chset-color-digit|9
0039
Template:Chset-color-punct|:
003A
Template:Chset-color-punct|;
003B
Template:Chset-color-graph|<
003C
Template:Chset-color-graph|=
003D
Template:Chset-color-graph|>
003E
Template:Chset-color-punct|?
003F
4_
64
Template:Chset-color-punct|@
0040
Template:Chset-color-letter|A
0041
Template:Chset-color-letter|B
0042
Template:Chset-color-letter|C
0043
Template:Chset-color-letter|D
0044
Template:Chset-color-letter|E
0045
Template:Chset-color-letter|F
0046
Template:Chset-color-letter|G
0047
Template:Chset-color-letter|H
0048
Template:Chset-color-letter|I
0049
Template:Chset-color-letter|J
004A
Template:Chset-color-letter|K
004B
Template:Chset-color-letter|L
004C
Template:Chset-color-letter|M
004D
Template:Chset-color-letter|N
004E
Template:Chset-color-letter|O
004F
5_
80
Template:Chset-color-letter|P
0050
Template:Chset-color-letter|Q
0051
Template:Chset-color-letter|R
0052
Template:Chset-color-letter|S
0053
Template:Chset-color-letter|T
0054
Template:Chset-color-letter|U
0055
Template:Chset-color-letter|V
0056
Template:Chset-color-letter|W
0057
Template:Chset-color-letter|X
0058
Template:Chset-color-letter|Y
0059
Template:Chset-color-letter|Z
005A
Template:Chset-color-punct|[
005B
Template:Chset-color-punct|\
005C
Template:Chset-color-punct|]
005D
Template:Chset-color-graph|^
005E
Template:Chset-color-punct|_
005F
6_
96
Template:Chset-color-graph|`
0060
Template:Chset-color-letter|a
0061
Template:Chset-color-letter|b
0062
Template:Chset-color-letter|c
0063
Template:Chset-color-letter|d
0064
Template:Chset-color-letter|e
0065
Template:Chset-color-letter|f
0066
Template:Chset-color-letter|g
0067
Template:Chset-color-letter|h
0068
Template:Chset-color-letter|i
0069
Template:Chset-color-letter|j
006A
Template:Chset-color-letter|k
006B
Template:Chset-color-letter|l
006C
Template:Chset-color-letter|m
006D
Template:Chset-color-letter|n
006E
Template:Chset-color-letter|o
006F
7_
112
Template:Chset-color-letter|p
0070
Template:Chset-color-letter|q
0071
Template:Chset-color-letter|r
0072
Template:Chset-color-letter|s
0073
Template:Chset-color-letter|t
0074
Template:Chset-color-letter|u
0075
Template:Chset-color-letter|v
0076
Template:Chset-color-letter|w
0077
Template:Chset-color-letter|x
0078
Template:Chset-color-letter|y
0079
Template:Chset-color-letter|z
007A
Template:Chset-color-punct|{
007B
Template:Chset-color-graph||
007C
Template:Chset-color-punct|}
007D
Template:Chset-color-graph|~
007E
Template:Chset-color-undef|
8_
128
Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef|
9_
144
Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef|
A_
160
Template:Chset-color-undef| Template:Chset-color-letter|
0E01
Template:Chset-color-letter|
0E02
Template:Chset-color-letter|
0E03
Template:Chset-color-letter|
0E04
Template:Chset-color-letter|
0E05
Template:Chset-color-letter|
0E06
Template:Chset-color-letter|
0E07
Template:Chset-color-letter|
0E08
Template:Chset-color-letter|
0E09
Template:Chset-color-letter|
0E0A
Template:Chset-color-letter|
0E0B
Template:Chset-color-letter|
0E0C
Template:Chset-color-letter|
0E0D
Template:Chset-color-letter|
0E0E
Template:Chset-color-letter|
0E0F
B_
176
Template:Chset-color-letter|
0E10
Template:Chset-color-letter|
0E11
Template:Chset-color-letter|
0E12
Template:Chset-color-letter|
0E13
Template:Chset-color-letter|
0E14
Template:Chset-color-letter|
0E15
Template:Chset-color-letter|
0E16
Template:Chset-color-letter|
0E17
Template:Chset-color-letter|
0E18
Template:Chset-color-letter|
0E19
Template:Chset-color-letter|
0E1A
Template:Chset-color-letter|
0E1B
Template:Chset-color-letter|
0E1C
Template:Chset-color-letter|
0E1D
Template:Chset-color-letter|
0E1E
Template:Chset-color-letter|
0E1F
C_
192
Template:Chset-color-letter|
0E20
Template:Chset-color-letter|
0E21
Template:Chset-color-letter|
0E22
Template:Chset-color-letter|
0E23
Template:Chset-color-letter|
0E24
Template:Chset-color-letter|
0E25
Template:Chset-color-letter|
0E26
Template:Chset-color-letter|
0E27
Template:Chset-color-letter|
0E28
Template:Chset-color-letter|
0E29
Template:Chset-color-letter|
0E2A
Template:Chset-color-letter|
0E2B
Template:Chset-color-letter|
0E2C
Template:Chset-color-letter|
0E2D
Template:Chset-color-letter|
0E2E
Template:Chset-color-letter|
0E2F
D_
208
Template:Chset-color-letter|
0E30
Template:Chset-color-misc|◌ั
0E31
Template:Chset-color-letter|
0E32
Template:Chset-color-letter|
0E33
Template:Chset-color-misc|◌ิ
0E34
Template:Chset-color-misc|◌ี
0E35
Template:Chset-color-misc|◌ึ
0E36
Template:Chset-color-misc|◌ื
0E37
Template:Chset-color-misc|◌ุ
0E38
Template:Chset-color-misc|◌ู
0E39
Template:Chset-color-misc|◌ฺ
0E3A
Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-graph|฿
0E3F
E_
224
Template:Chset-color-letter|
0E40
Template:Chset-color-letter|
0E41
Template:Chset-color-letter|
0E42
Template:Chset-color-letter|
0E43
Template:Chset-color-letter|
0E44
Template:Chset-color-letter|
0E45
Template:Chset-color-letter|
0E46
Template:Chset-color-misc|◌็
0E47
Template:Chset-color-misc|◌่
0E48
Template:Chset-color-misc|◌้
0E49
Template:Chset-color-misc|◌๊
0E4A
Template:Chset-color-misc|◌๋
0E4B
Template:Chset-color-misc|◌์
0E4C
Template:Chset-color-misc|◌ํ
0E4D
Template:Chset-color-misc|◌๎
0E4E
Template:Chset-color-punct|
0E4F
F_
240
Template:Chset-color-digit|
0E50
Template:Chset-color-digit|
0E51
Template:Chset-color-digit|
0E52
Template:Chset-color-digit|
0E53
Template:Chset-color-digit|
0E54
Template:Chset-color-digit|
0E55
Template:Chset-color-digit|
0E56
Template:Chset-color-digit|
0E57
Template:Chset-color-digit|
0E58
Template:Chset-color-digit|
0E59
Template:Chset-color-punct|
0E5A
Template:Chset-color-punct|
0E5B
Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef| Template:Chset-color-undef|

  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. {{cite web}}: |archive-date= / |archive-url= timestamp mismatch; 2017-01-15 suggested (help)

References

  1. ^ Leisher, Mark (1998-03-06), TCCII 2533 1009 / TIS 620 Thai, TIS620.TXT

External links