А в чём преимущество оной в сравнении с позиционными системами? Она же избыточная вроде как...
Цитата: Danandr25 от октября 25, 2016, 12:34
А в чём преимущество оной в сравнении с позиционными системами? Она же избыточная вроде как...
Помехоустойчивость. Две стоящие рядом единицы не могут идти, поэтому такая комбинация автоматом означает ошибку. При использовании в сжатии данных, две единицы означает конец числа, то есть это расширенный аналог унарного кода, где одна единица определяет конец числа.
А если смотреть не с точки зрения машин, а с точки зрения людей?
Можно было бы помечтать о том, чтобы юникод был основан на кодах Фибоначчи. Тогда у числа символов в принципе бы не было потолка.
Цитата: Danandr25 от октября 25, 2016, 12:34
в сравнении с позиционными системами
А что, разве фибоначчиева система сама не позиционная?
Цитата: Hellerick от октября 25, 2016, 14:23
Можно было бы помечтать о том, чтобы юникод был основан на кодах Фибоначчи. Тогда у числа символов в принципе бы не было потолка.
Для принятых ныне компьютеров типа как технически неудобно иметь дело с данными, не выровненными хотя бы по байтам (единицам адресации). А если длина кратна байту, то числа или номера неограниченного размера реализуются другими способами, при желании.
Цитата: лад от октября 25, 2016, 13:02
Помехоустойчивость. Две стоящие рядом единицы не могут идти, поэтому такая комбинация автоматом означает ошибку.
Но другого вида ошибки-то не выявляются. Т.е. фактически это позволяет разве что установить тот факт, что канал передачи данных настолько загажен, что ошибки льются сплошным потоком. А вот проверить принятое на отсутствие единичных ошибок не позволяет. Или если даже массово идут ложные нули.
А то и двоично закодированную троичную систему можно было бы назвать помехоустойчивой из-за того, что там могут быть запрещены какие-то комбинации в каких-то позициях.
Цитата: Hellerick от октября 25, 2016, 14:23
Можно было бы помечтать о том, чтобы юникод был основан на кодах Фибоначчи. Тогда у числа символов в принципе бы не было потолка.
Ограничение в 6 байт у UTF8 искуственное, если надо, можно сделать и больше. Только пока не надо. Пока что только 4 байта используются.
ЦитироватьАлгоритм UTF-8 технически позволяет записывать код любой длины. Но для эффективной и надёжной работы алгоритма необходимо ограничение длины кода. Действующий стандарт Unicode 6.х предполагает использование кода до 21-го бита, то есть до четырех байт в UTF-8.]Алгоритм UTF-8 технически позволяет записывать код любой длины. Но для эффективной и надёжной работы алгоритма необходимо ограничение длины кода. Действующий стандарт Unicode 6.х предполагает использование кода до 21-го бита, то есть до четырех байт в UTF-8.
Цитата: Basil от октября 25, 2016, 22:52Цитата: Действующий стандарт Unicode 6.х
Вы гляньте, какой нынче стандарт на дворе действующий-то...
Цитата: Toman от октября 25, 2016, 20:17
Цитата: лад от октября 25, 2016, 13:02
Помехоустойчивость. Две стоящие рядом единицы не могут идти, поэтому такая комбинация автоматом означает ошибку.
Но другого вида ошибки-то не выявляются. Т.е. фактически это позволяет разве что установить тот факт, что канал передачи данных настолько загажен, что ошибки льются сплошным потоком. А вот проверить принятое на отсутствие единичных ошибок не позволяет. Или если даже массово идут ложные нули.
Кодировка Фибоначчи еще для поиска удобна. Внутри последовательности большего кода не может оказаться последовательности, аналогичной меньшему коду.
Цитата: Bhudh от октября 26, 2016, 03:55
Вы гляньте, какой нынче стандарт на дворе действующий-то...
В действующем по-прежнему так.
В 4 байта UTF-8 укладываются плоскости от 00 до 1F. А в уникоде на дворе, вроде, только до плоскости 10 дошли.
Цитата: Bhudh от октября 26, 2016, 03:55
Цитата: Basil от октября 25, 2016, 22:52Цитата: Действующий стандарт Unicode 6.х
Вы гляньте, какой нынче стандарт на дворе действующий-то...
Сути не меняет, используется пока только четыре байта. Используя только четыре можно закодировать 1,112,064 code points, из них в стандарте Unicode 9.0 я вижу используются только ~128К, так что расти еще и расти, примерно в 10 раз, пока из 4 байтов выберется.