[dd640b5880bcc8342d2c59a252e1323a657e2ae3]

Branchless UTF-8

https://nullprogram.com/blog/2017/10/06/
https://nrk.neocities.org/articles/utf8-pext
https://cceckman.com/writing/branchless-utf8-encoding/
Подборка решений по branchless UTF-8 декодированию и кодированию.

[оставить комментарий]
комментарий 0:
From: Yarik Sysoev
Date: 2026-09-08 14:28:47Z

заглянул в Unicode.jai, там на lookup-табличку не скупились :)

trailingBytesForUTF8 :: u8.[
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
     2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, 3,3,3,3,3,3,3,3,4,4,4,4,5,5,5,5
];

Не помню, делился ли уже, но по смежной теме есть вот такая интересная
страница. Вряд ли супер практично в современности, но некоторые трюки
выглядят красиво (как бы многие не хотели верить, что программирование
не является искусством):
https://graphics.stanford.edu/~seander/bithacks.html