Введение

Двойной байтовый набор символов (DBCS) — это кодировка символов, в которой либо все символы (включая управляющие символы) кодируются двумя байтами, либо только каждый графический символ, который нельзя представить в сопровождающем однобайтовом наборе символов (SBCS), кодируется двумя байтами (иероглифы хан обычно составляют большинство этих двухбайтовых символов). DBCS поддерживает национальные языки, содержащие множество уникальных символов или знаков (максимальное количество символов, которое можно представить одним байтом, составляет 256, а двумя байтами — до 65 536). Примеры таких языков — японский и китайский. Корейский хангуль содержит меньше символов, но стандарт KS X 1001 поддерживает как хангуль, так и ханча, используя два байта на символ.

В вычислительной системе CJK

Термин DBCS традиционно относится к кодировке символов, в которой каждый графический символ кодируется двумя байтами. В 8-битной кодировке, такой как Big 5 или Shift JIS, символ DBCS представлен ведущим (первым) байтом с установленным старшим битом (то есть, превышающим семь бит) и сочетается с набором символов одного байта (SBCS). По практическим соображениям, для обеспечения совместимости с немодифицированным, стандартным программным обеспечением, SBCS ассоциируется с символами полуширины, а DBCS – с символами полной ширины. В 7-битной кодировке, такой как ISO 2022 JP, для переключения между SBCS и DBCS используются управляющие последовательности или коды сдвига. Иногда использование термина "DBCS" может подразумевать базовую структуру, не соответствующую стандарту ISO 2022. Например, "DBCS" иногда может означать двухбайтную кодировку, которая специально не является Extended Unix Code (EUC). Это первоначальное значение DBCS отличается от того, что некоторые считают правильным использованием в настоящее время. Некоторые настаивают на том, чтобы эти кодировки символов правильно назывались многобайтными наборами символов (MBCS) или кодировками переменной ширины, поскольку кодировки символов, такие как EUC JP, EUC KR, EUC TW, GB 18030 и UTF-8, используют более двух байтов для некоторых символов и поддерживают один байт для других.

Неоднозначность

Некоторые люди используют термин DBCS для обозначения кодировок UTF-16 и UTF-8, в то время как другие используют его для обозначения более старых (до Unicode) кодировок символов, использующих более одного байта на символ. Shift JIS, GB 2312 и Big5 – это несколько кодировок символов, которые могут содержать более одного байта на символ, однако даже использование термина DBCS для этих кодировок является некорректной терминологией, поскольку эти кодировки на самом деле являются кодировками переменной ширины (как и UTF-16 и UTF-8). Некоторые мэйнфреймы IBM действительно имеют настоящие страницы кода DBCS, содержащие только двухбайтовую часть многобайтовой страницы кода. Если кто-то использует термин "DBCS enablement" для интернационализации программного обеспечения, он использует неоднозначную терминологию. Это может означать, что он хочет разработать программное обеспечение для восточноазиатских рынков, используя устаревшие технологии со страницами кодов, или что он планирует использовать Unicode. Иногда этот термин также подразумевает перевод на восточноазиатский язык. Как правило, "Unicode enablement" означает интернационализацию программного обеспечения посредством использования Unicode, а "DBCS enablement" – использование несовместимых кодировок символов, существующих в разных странах Восточной Азии, для интернационализации программного обеспечения. Поскольку Unicode, в отличие от многих других кодировок символов, поддерживает все основные языки Восточной Азии, обычно проще реализовать и поддерживать программное обеспечение, использующее Unicode. Поддержка DBCS (не Unicode) обычно требуется только в тех случаях, когда более старые операционные системы или приложения не поддерживают Unicode.

ТБК

Тройной байтный набор символов (TBCS) — это кодировка символов, в которой символы (включая управляющие символы) кодируются тремя байтами.