Как стать автором
Обновить

Комментарии 69

как и всякий другой официоз, вызывает только скуку. Да и… какая доля процента современных программистов умеет в шестнадцатиричную систему? Не процентов даже, а его долей — сколько? Навскидку, 0x1a+0x2b — сколько будет? Ото ж…

0x45)

C праздником! :-)

Как-то вы слишком предвзято относитесь к программистам, я вот всё ещё whanna be programmist (эникейщик с пайтоном), и тоже правильно посчитал в уме. Лучше устроить опрос где-нибудь, и узнать сколько процентов отвечает корректно

Как-то вы слишком предвзято относитесь к программистам
Больше сорока лет программирую, насмотрелся.
(эникейщик с пайтоном), и тоже правильно посчитал в уме
Вот потому и посчитали, на энтузиазме. Трушным программерам это просто не нужно.
Лучше устроить опрос где-нибудь
Устраивал. Личные. 1а+2b с ходу только пара человек посчитала.

Наверное, те, кто работает с Embedded и всякими GPIO ещё помнят. Я вот не программист, а сисадмин, но посчитать смог. А вот перевести из десятичной обратно в шестнадцатеричную быстро в уме уже никак.
P.S. а догадаться, что можно было сразу считать в HEX, догадался только когда комментарий писал. В голове проще считать по привычке, в DEC.

в Embedded чаще всего приходиться делать hex to bin и обратно. Складывать там даже проще, меньше в уме держать))

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

Если не секрет, как вы в уме посчитали a+b без перевода?

В конкретно моём случае это бы не получилось. Но результат было бы гораздо легче перевести в HEX в уме, чем результат целого примера.
Тут тренировка решает. Когда я баловался пиксельным рисованием на спектруме, я отлично помнил не только степени двойки до 65536 но и очень много вариантов их сумм, что позже помогло лучше дружить с масками подсетей.

По сути на память. Вы же не на пальцах 7+3 складываете, а сразу помните что это 10?

я например так считал: a+b = b+a = c+9 = d + 8 = ... = 10 + 5 = 15

медленно, зато без вычитания 16.

1010+1011 Единичка ушла в старший байт, 101 осталось.

Там же вроде универсальная формула, если не ошибаюсь, — z = (x + y) MOD base, и если x + y > base, то к следующей паре цифр из числа добавляется 1

можно посчитать что угодно в любой системе, никуда не переводя, хоть в 60-ти ричной.

0x1+0x2 = 0x3

0x0a+0x0b - это выход за рамки разряда, в 0x3 докидываем 0x1, будет 0x4

осталось вычислить остаток

a не хватает 6 до переполнения разряда, из b нужно вычесть 6 и записать в ответ

b это 11, 11 - 6 = 5, ответ: 0x4 + 0x05 = 0x45

да, для выполнения операций в рамках разряда нужно прикидвать известо что к носу, чтобы иметь возможность посчитать, но в целом всё считается в рамках системы. С 13-ти ричной, 7-ми ричной, 34-ричной системой был бы такой же алгоритм.

Мало кто умеет, но много кто отмечает:)

угу, и больше всех отмечают те, кто вообще не понимает, о чём речь :-/

А доля тех кто перфоркартами умеет пользоваться совсем стремится к нулю. Ото ж…

Эх, молодость, молодость. Когда-то умел читать перфокарты по дырочкам (наш перфоратор текст вверху карты не пропечатывал, как у некоторых).

Да многие умеют, просто не так востребовано это. А на вскидку получится рак.

Какой рак?

НЛО прилетело и опубликовало эту надпись здесь

idkfa

и в ад!

IDSPISPOPD

ух, не я один это помню.. новички довольствовались IDCLIP!

Я как раз IDCLIP никогда не помнил, что первое узнал, то и применял =)

J3QQ4…

душнила.

P.S. Если кто пользуется - тот умеет сходу. Кому внезапно понадобится - вспомнит без труда, ибо сложного там ничего. Мы в универе переводили. Больше не пользовался нигде.

Да и… какая доля процента современных программистов умеет в шестнадцатиричную систему?

Этому учат на 1-2 курсе на любой "айтишной" специальности. Все, кто окончил вуз?

Как школьная тригонометрия 99.999% граждан ни разу в жизни не требуется, так и эти базовые знания давно уже повыветрились в головах программеров. Заодно с тригонометрией, кстати.

Двоичное и шестнадцатеричное исчисление для программиста, это не тригонорметрия, это как умножение/деление в уме. У вас же не выветрилось как 42 * 37 без калькулятора?

У меня и восьмерично-десятеричная система М-220 ещё не вся выветрилась. Это не отменяет того факта, что подавляющему большинству программистов умение или хотя бы понимание hex-ов не требуется. Как, кстати, и тригонометрия со всей математикой, за исключением арифметики бытового уровня.
Кстати, 1554. Или Вы про Е2Е? :-)
школьная тригонометрия 99.999% граждан ни разу в жизни не требуется

Редко требуются только сложные вычисления, а знания того
что такое синус и что такое косинус
image
требуются не только тем кто графикой занимаются, но и тем кто что-то мастерит руками, от чего имеет дело с треугольниками и углами.
НЛО прилетело и опубликовало эту надпись здесь

Как раз сейчас пишу программу, в которой основная идея состоит в переводе декартовых координат в полярные. Последний месяц столько тригонометрии через мозг прошло! Радуюсь: наконец-то пригодилось сполна )

На самом деле даже в 10-11 классе вполне учат. Я считаю пример нерепрезентативным, потому что фронтендерам например вообще Hex не упёрся и что теперь они не программисты теперь?

Фронтендерам битовые операции не нужны? Например, чтобы проверить какие там пермишены у юзерской роли? Hex представление, это просто более удобное и короткое представление двоичного числа, ты сразу можешь сказать, какой бит в каком состоянии находится, потому что уж двоичное представление чисел 0-15 любой программист либо помнит, либо выведет за пару секунд.

Фронтендеры обычно на битовые маски и шестнадцатеричные числа выражают крайнюю степень недоумения, а иногда и возмущения. Приходится такие простые вещи только ради фронтового апи усложнять (представляя каждый бит отдельным булевым полем). И да, то что 0xff === 255 им тоже взрывает мозг. Хотя это валидный js.

Я фронтендер и в корне не согласен с написанным :)

Что очень радует)

Кстати, у фронтендеров все цвета в css в hex, так что, очень удивительные вещи вы говорите.

Да, сам фуллстеком был. Однако недавний пример: в документации описал цвета в hex и отдал интом, а фронт в json увидел их таки в dec виде и не успокоился, пока я и в документации на dec не переделал (и то ему больше хотелось hex-строку вида "color": "#ff0000"). Предложение вбить в консоль console.log(0xff0000 === 16711680); было принято за издевательство и хак. Очень много во фронте народу, кто знает фреймворк, а информатику нет (да и язык часто не особо).

Очень много во фронте народу, кто знает фреймворк, а информатику нет (да и язык часто не особо).

Ну почему же только во фронте...

НЛО прилетело и опубликовало эту надпись здесь
Всё время говорю своим падаванам «учитесь прикидывать шестнадцатиричные числа в уме». Не обязательно точно, но чтоб примерно можно было преобразовать из десятичных и наоборот. Правда у нас микроконтроллеры, DSP, обмен по бинарным протоколам и всё такое. И таки да, такое умение регулярно пригождается когда ловишь что-то в дампах обмена, например.

Очевидно, 0x1a0x2b! /s

stackoverflow detected

Вся надежда, что компилятор хвостовую рекурсию оптимизирует за криворучкой… :)

Так и задумано: работа через некоторое время прерывается.

Спасибо за экскурс в историю. Кстати за Китай не знал сей интересный факт.

Ох уж эти программисты, которые в уме считают в 16-ричной системе. Дай бог им здоровья Они наверное еще дискетами пользуются, или перфокартами и машины у них на паровой тяге и лапти на ногах. Гет/пост запросы голубями отправляют. А пинг капелькой воды замеряют.

В шестнадцатеричной не считаю, но в двоичной — вполне. Когда что-то надо посчитать, загибаю пальцы в двоичной системе — одной руки таким образом хватает, чтоб сосчитать от 0 до 31, двух — в теории до 1023, на практике — где-то до 80 доходил.

жиза. Кстати, недавно раздуплился, и понял как по загнутым пальцам быстро считать число, даже если оно уже 512+, просто номер пальца это степень двойки, если палец загнутый(0) - пропускаю, если оттопырен(1) докидываю число в сумму: первая рука 1, 2, 4, 8, 16 - вторая рука 32, 64, 128, 256, 512

Ну у меня наоборот — оттопыренный палец соответствует нулю, загнутый — единице. И самый младший разряд — на большом пальце правой руки.

пальцы отлично работают в троичной системе

Ну мне и в восьмеричной считать приходилось...

А в Японии до сих пор некоторые государственные документы на 3х-дюймовых дискетах возят.

Кстати, в актуальной классификации данная специальность обозначается кодом 230105.65 – означает ли это, что программисты могут отмечать свой профессиональный праздник еще и 23 января?

Да, в 5:65 утра

НЛО прилетело и опубликовало эту надпись здесь

это шестнадцатиричные часы просто

тогда в 6:41

На кдпв переполнение стека будет.

А вы думаете программисты работают вечно

Переполнение стека это когда теломеры закончились

То есть не хватает shithouse(); или empty(); ?

Многие добавили бы beer(); , ну и соответствующие работы над ошибками))

экзамен по Python, на изучение которого у взрослого человека уходят годы

Там какой-то особо сложный экзамен? Так то питон можно не особо торопясь за несколько месяцев освоить.

перегоревших ламп и перфокарт

ни разу не менял перегоревшие перфокарты (правда, у нас были ЕС ЭВМ, на микросхемах).

А где сервер за 6 рублей из рекламной плашки в конце?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий