ISO/CEI 10646 définit plusieurs formes de codage de caractères pour l'Universal Character Set. La plus simple, UCS-2, assigne une valeur de code unique, c'est-à-dire une séquence d'un ou plusieurs nombres unique, entre 0 et 65.535 pour chaque caractère. Ainsi, exactement deux octets, soit un mot de 16 bits, permettent de représenter la valeur de tout point de code. En conséquence, UCS-2 permet une représentation binaire de chaque point de code du Plan Multilingue de Base, le PMB, à la condition que le point de code soit assigné, c'est-à-dire qu'il représente effectivement un caractère. Il en découle également qu'UCS-2 ne permet pas de représenter les points de code extérieurs au PMB.
Le premier amendement de l'édition originale de l'UCS définit UTF-16, une extension d'UCS-2, pour représenter les points de code extérieurs au PMB. Il existe dans le PMB une plage située dans la zone spéciale (S Zone) dont les points de code ne sont pas assignés. UCS-2 interdit l'utilisation de valeurs de code pour ces points de code, mais UTF-16 permet leur utilisation par paires afin de désigner les caractères extérieurs au PMB.
Cette plage est subdivisée en une partie haute et une partie basse, où chaque paire est constituée d'un "élément RC" de chacune de ces zones. Un élément RC est une séquence de deux octets faite d'un octet R et d'un octet C obtenus depuis la séquence de 4 octets qui correspond à une cellule dans l'espace de codage d'un jeu de codage de caractères.
Unicode a aussi adopté UTF-16, mais en terminologie Unicode, les éléments de zone moitié-haute sont appelées "demi-codets hauts d'indirection" et ceux de la moitié basse "demi-codets bas d'indirection". On rencontre aussi le terme de seizet d'indirection.
Un autre codage, UCS-4, utilise une seule valeur entre 0x00 et (théoriquement) 0x7FFFFFFF pour chaque caractère (bien que l'UCS s'arrête à 0x10FFFF et ISO/CEI 10646 a établi que tous les assignements futurs de caractères prendront place dans cette zone). UCS-4 permet la représentation de chaque valeur par exactement quatre octets (mots de 32-bits). UCS-4 permet donc une représentation binaire de chaque code point de l'UCS, y compris ceux en dehors du PMB. Comme en UCS-2, chaque caractère codé a une taille fixe en octets, qui fait qu'il est simple à manipuler, mais bien sûr, il nécessite deux fois plus de mémoire que l'UCS-2.
Occasionnellement, les articles sur Unicode mélangent les concepts UCS-2 et "UCS-16". UCS-16 n'existe pas ; les auteurs qui font cette erreur essayent de parler d'UCS-2 ou d'UTF-16.