Программисты и системы счисления

Jun 08, 2020 12:26

За уже почти 30 лет программирования и примерно 25 лет работы программистом, что-то, хотя бы отдалённо напоминающее использование систем счисления, отличных от десятичной, я видел примерно два раза ( Read more... )

альтернативно одарённые, контрманипуляция сознанием, программирование

Leave a comment

Comments 142

corwin1958 June 8 2020, 09:45:44 UTC
Вообще-то в аппаратуре, в протоколах взаимодействия до сих часто используется позиционное кодирование. Там байты и слова режут по N бит. И вот в реализациях интерфейса взаимодействия по таким протоколам использовать систему счисления отличную от десятичной может быть целесообразно.

Reply

lex_kravetski June 8 2020, 09:50:48 UTC
> Вообще-то в аппаратуре, в протоколах взаимодействия до сих часто используется позиционное кодирование.

В той самой аппаратуре, которую сделали в трёх экземплярах в 1970-м, а с тех пор она всем была так нужна, что для неё даже транслятор так никто и не сподобился написать.

> И вот в реализациях интерфейса взаимодействия по таким протоколам использовать систему счисления отличную от десятичной может быть целесообразно.

А переводить числа из одной системы счисления в другую всё так же не надо.

Reply

corwin1958 June 8 2020, 10:05:16 UTC
Почему в 70-м? Во вполне современной, к сожалению. При обмене короткими сообщениями. TLV к примеру используется.

А переводить числа из одной системы счисления в другую всё так же не надо.
Как правило, но не всегда. От языка зависит. Недавно пришлось писать скрипт для матлаба в котором фигурировала длинная шестнадцатеричная константа-маркер. Поименовал её в начале скрипта - вбив значение в шестнадцатеричном же виде - всё было нормально. А заказчик запустил скрипт на версии 2008 года - получил ошибку - там такая запись еще не поддерживалась.

Но вообще-то на крайний случай всегда есть виндовый калькулятор...

Reply

lex_kravetski June 8 2020, 11:46:50 UTC
> Почему в 70-м? Во вполне современной, к сожалению. При обмене короткими сообщениями. TLV к примеру используется.

Как оно записывается, в современности вообще всё равно. Поскольку в коде (для компилятора или для транслятора), всё равно будет что-то типа «getLength/setLength». То, что железяка это потом сохранит в пять байтов, а не в двадцать, в этом смысле вообще совсем без разницы.

> Недавно пришлось писать скрипт для матлаба в котором фигурировала длинная шестнадцатеричная константа-маркер.

Ответ прост и очевиден: не надо так делать. Если эта константа что-то значит по частям, а не целиком, скрипт должен начинаться с того, что её создают из чего-то значащих частей.

Reply


brutus_cynicus June 8 2020, 09:52:41 UTC
Таки недавно в Ардуино нужно было свой символ на дисплее нарисовать. Символ записывал в двоичной системе. Ноль пиксел выключен, один включен.
Таки не всегда программируют под АйБиЭм ПиСи.

Reply

lex_kravetski June 8 2020, 11:49:41 UTC
> Таки недавно в Ардуино нужно было свой символ на дисплее нарисовать. Символ записывал в двоичной системе. Ноль пиксел выключен, один включен.

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

https://javl.github.io/image2cpp/

Reply


Оффтоп. admtoha June 8 2020, 10:15:33 UTC
Пардон, за навязчивость. Хочу удостовериться, что моё сообщение с ссылкой в личку ЖЖ дошло.
А то ни какой реакции нет. Ожидал что-то вроде, мол, "хорошо, посмотрю", или "в таком исполнении нафиг не надо"...

Reply

Re: Оффтоп. lex_kravetski June 8 2020, 10:26:50 UTC
Да, дошло, но я ещё не успел проверить. Видел только само сообщение.

Reply

Re: Оффтоп. admtoha June 8 2020, 10:33:13 UTC
Хорошо.
Там дофига проверять.
Заранее извиняюсь за форматирование текста, точнее его отсутствие. Делал в дефолтных стилях LibreOffice. Задумывалось так, чтобы было чисто без тэгов и можно было без проблем стилизовать, как хочешь. Но потом глянул, уже после отправки - слишком страшно. Надо было хоть абзацам отступы сделать.

Reply

Re: Оффтоп. lex_kravetski June 8 2020, 10:47:32 UTC
У меня есть скрипт, который сам всё делает.

Reply


akalashnikov02 June 8 2020, 10:24:17 UTC
"За уже почти 30 лет программирования и примерно 25 лет работы программистом, что-то, хотя бы отдалённо напоминающее использование систем счисления, отличных от десятичной, я видел примерно два раза."

TL;DR - Поэтому системы счисления, отличные от десятичной, программистам вообще не нужны.

(Хотя мельком и были упомянуты флаги, и потеря значимости (привет "Patriot"). Не была, правда, упомянута сложность нахождения десятичных чисел в даташите какого-либо микроконтроллера.)

Reply

lex_kravetski June 8 2020, 10:47:03 UTC
> Поэтому системы счисления, отличные от десятичной, программистам вообще не нужны.

Программистам нужны джойстики для облёта небоскрёбов: это знает каждый, кто хорошо учился в школе, смотрел фильм «Хакеры» и никогда не занимался программированием.

Reply

(The comment has been removed)

lex_kravetski June 8 2020, 11:01:51 UTC
Ты наверно уже устал циферки в логине-то менять, да?

Reply


clr666 June 8 2020, 10:42:45 UTC
«Нахмурив мохнатые брови и подняв палец вверх»: а вот как наступит долгожданный армагеддец (после онлайн-чипирования через 5G гейцом) и вам с Фродо придётся тащить кольцо в Мордор (вот где по дороге пригодятся бумажные книги) и, чтобы добросить кольцо до жерла вулкана и не обжечься, тут то и пригодится и таблица умножения, и тригонометрия, и баллистика! И все в уме, без куркуляторов и компуктеров!

Reply


Leave a comment

Up