Что за люди иногда конвертируют числа или строки в байты? - PullRequest
0 голосов
/ 11 апреля 2020

Иногда я сталкиваюсь с вопросами о преобразовании sth в байты. Существуют ли что-то, где жизненно важно преобразовать в байты или зачем я могу преобразовать sth в байты?

1 Ответ

1 голос
/ 11 апреля 2020

В большинстве языков наиболее распространенные строковые функции входят в состав языка или в заранее подготовленную библиотеку / include / import, в которой часто используется объектный код для использования строковых функций на основе процессора, однако иногда необходимо сделать что-то со строкой, которая изначально не поддерживается языком, поэтому с 8-битных дней люди рассматривали строки как массив из 7 или 8-битных символов, которые вписываются в байт и используют соглашения, такие как ASCII, чтобы определить, какое значение байта представляет какой символ.

В то время как стандартные языки часто имеют функции, такие как «string.replaceChar (OFFSET, 'a')», эта методология может быть кропотливо медленной, потому что каждый вызов метода replaceChar приводит к дополнительным затратам на обработку, которые могут быть больше, чем обработка должна быть выполнена.

Существует также фактор простоты при проектировании ваших собственных строковых алгоритмов, но, как я уже сказал, большинство распространенных алгоритмов уже встроены в современные языки. (stringCompare, trimString, reverseString и др. c).

Предположим, вы хотите выполнить операцию со строкой, которая не входит в стандартную комплектацию.

Предположим, вы хотите добавить два числа, которые представлены в виде десятичных цифр в строках, и размер этих чисел больше, чем размер 64-битной шины процессора? Шифрование / дешифрование RSA за замками браузера SSL использует использование чисел, которые не вписываются в размер слова настольного компьютера, но тем не менее программы на рабочем столе, которые имеют дело с сертификатами и ключами RSA, должны иметь возможность обрабатывать эти данные, которые на самом деле это строки.

Существует множество причин, по которым вы бы хотели иметь дело со строкой, как массив байтов, но каждая из этих причин была бы достаточно специализированной.

...