Кодирование текстовой информации имеет несколько различных аспектов, которые можно разделить по целям использования. Например закодированную информацию можно хранить, обрабатывать и передавать. Если информацию нужно обрабатывать то она должна быть представлена в ОЗУ в самом удобном для этого виде и представлять её в сжатом виде, за исключением некоторых специальных случаев, не практично с точки зрения времени обработки, с другой стороны если информация нужно просто хранить долгосрочно без частой обработки, то практично хранить её в максимально сжатом виде для экономии места, при передачи информации нужно сохранять некоторый компромисс между компактностью представления и необходимым временем нужным процессору для конвертации представления с целью обработки. Современные кодировки текстовой информации это результат таких компромиссов. Также не нужно путать кодирование и сжатие это взаимосвязанные но разные задачи.