Skip to main content

Что такое широкий характер?

Широкий символ - это компьютерный символ, размер которого превышает стандартное 8-разрядное измерение. Символы в компьютерном наборе, таком как универсальный набор символов (USC), иллюстрируют основной пример широких символов, поскольку USC можно кодировать в 16-битном или 32-битном форматах. Это отличается от более старых стандартизированных наборов символов, таких как Американский стандартный код для обмена информацией (ASCII), в котором используется символ длиной не более 7 бит. Преимущество кодирования наборов символов в широких символах состоит в том, что это дает больше пространства для дыхания, когда приходит время добавлять дополнительные и сложные символы в набор, предоставляя дизайнерам символов более широкий диапазон свободы. Недостатки заключаются в дополнительном потреблении памяти, поскольку широкие наборы символов используют больше системной памяти, когда активны на компьютере.

Наборы символов должны быть настроены для работы с конкретными операционными системами, и широкие символы ничем не отличаются. Для операционных систем Windows® - как 32-, так и 64-разрядных версий - широкие наборы символов должны быть адаптированы к 16-разрядной структуре, предлагая вдвое больше места для хранения каждого символа по сравнению со «стандартным» 8-разрядным набором. Unix®, с другой стороны, требует, чтобы широкие символы соответствовали 32-битной среде, предлагая в четыре раза больше возможностей основного набора символов.

Наибольшим преимуществом широких наборов символов является то, что они допускают нестандартные символы и большую универсальность, включая различные языки в свои интерфейсы. Например, широкие наборы символов могут включать стандартный английский алфавит, а также языки, такие как кириллица и греческий одновременно. Это означает, что один набор широких символов может применяться к лицам, охватывающим несколько стран, в отличие от требования уникального неширокого набора символов для каждого отдельного языкового региона.

Хотя наборы широких символов полезны для стандартизации версий программного обеспечения в разных языковых регионах, они имеют свою цену. Эта цена является дополнительной стоимостью в памяти. Хотя 16-разрядный набор символов обеспечивает удвоенную емкость по сравнению со стандартным 8-разрядным набором, он также потребляет вдвое больше памяти. То же самое относится к 32-битным наборам символов, которые поглощают в четыре раза больше памяти, чем обычные наборы символов.

С вычислительной и статистической точек зрения, это значительная «стоимость» памяти. Однако при практическом применении стоимость не так велика, как может показаться. Современные компьютеры часто содержат четыре и более гигабайт системной памяти, что делает хранение даже большого 32-битного набора символов на практике весьма незначительным. Только самые перегруженные или недостаточно мощные компьютеры заметят существенное снижение производительности при использовании наборов широких символов.