Неизвестный ASCII

Знаете ли вы:

  • чтобы из символа десятичной цифры получить ее численное значение, достаточно взять младшие 4 бита ASCII-кода этой цифры;
  • чтобы получить порядковый номер буквы латинского алфавита (неважно, в верхнем или нижнем регистре), достаточно взять младшие 5 бит ASCII-кода этой буквы;
  • чтобы перевести латинскую букву из нижнего регистра в верхний, достаточно установить 6-й бит (со смещением 5) ASCII-представления буквы в 1 (обратная операция выполняется по аналогии, сбросом этого бита).

Первые два факта я не знал.

УжасноПлохоНормальноХорошоОтлично (2 голосов, средний: 5.00 из 5)
Loading ... Loading ...

11 комментариев

    • Ты меня прям ставишь в тупик своей немногословностью =) Скажи по секрету, что ты имел в виду?

      • Смахивает на те же трюки с языком. Если бы в коде я такую битовую арифметику встретил и не было бы рядом комментария, я бы долго ругался неприличными словами.

        • Битовые трюки обычно используются на самом нижнем уровне, заботливо укутанные километрами абстракций =)

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

  • whirlwind:

    а кто знал про все три факта, тот наверняка на асме програмил :)

Оставьте свой отзыв

Если введен идентификатор OpenID, можно не задавать имя и почту (но имя лучше все же задать).

XHTML: Можно использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

Это не спам, честное слово