KOI8-U

KOI8-Uは、キリル文字を使う言語であるウクライナ語をカバーするように設計された、8ビットの文字コードである。ロシア語とブルガリア語をカバーするKOI8-Rに基づくが、8つの図形文字を4つのウクライナ文字Ґ、Є、І、Їの大文字と小文字双方に置き換えている。
有名にならなかったISO 8859-5より、KOI8ははるかに広く使われ続けている。もう1つの広く使われているキリル文字コードはWindows-1251である。将来は、最終的にどちらもUnicodeに取って代わられるかもしれない。
ロシア語で、KOI8は () の略で、"情報交換用符号、8ビット" という意味である。
KOIシリーズの文字集合におけるロシア語のキリル文字は、ISO 8859-5のような自然なキリル文字のアルファベット順ではなく、ASCIIのラテン文字と対応する符号位置に疑似ローマ字順で並べられているという特性を持つ。さらに、大文字と小文字の符号位置は逆になっている。これは不自然に見えるかもしれないが、8ビット目が落ちて文字化けしても、大文字小文字を入れ替えた翻字をすることで通常のASCII端末上で文章をまだ読める (もしくは少なくとも解読できる) という役に立つ特性である。たとえば、KOI8-Uの ""（ルスキー・テクスト、ロシア語のテキストの意） は8ビット目を落とすと になる。その一方で、文字コードでソートしても正しいキリル文字の順序にならないという欠点もある。
上記の表において、20は通常の空白 (SPACE) 文字であり、9Aはノーブレークスペース (NO-BREAK SPACE) である。
KOI8-Rとの違いは位置 0xA4; 0xA6; 0xA7; 0xAD; および 0xB4; 0xB6; 0xB7; 0xBD; にある。これらはロシア語に存在しない追加の文字からなる。
RFC 2319では文字95がU+2219 (∙) であるべきだと言っているが、Windows-1251のビュレット文字に合わせるためU+2022 (•) が使われる場合もある。
いくつかの参考文献には誤植があり、文字B4はU+0403であると誤って述べている (正しくはU+0404)。この誤植はRFC 2319のAppendix Aにも存在する (ただしRFC本文の表には正しいマッピングが示されている)。