Войти | Регистрация
Свежие: анекдоты, истории, мемы, фразы, стишки
Случайные: анекдоты, истории, мемы, фразы, стишки

История №1508824

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

Линус конечно же применил брутфорс и открыл бутылку, из которой немедленно вылез джинн.

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

— А меньше желаний желать можно? — уточнил Линус, продолжая думать про матрицу.

Джин озадачился, почесал в затылке и решил, что можно.

— Тогда я хочу чтобы количество моих желаний уменьшилось на три.

— Зачем? — поинтересовался джинн.

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

— Слушай, я из 900-х годов до нашей эры, я не понимаю, — покачал головой джинн. — Меня как царь Соломон запечатал сюда, я выпал из новостной ленты совершенно.

— Ты просто сделай так, как я говорю, — посоветовал Линус.

Джинн вырвал жменьку волос из бороды, пошептал, поводил руками в воздухе, и ничего не произошло. Тогда он достал из широких шаровар записной свиток из папируса.

— У тебя теперь три желания, — прокомментировал он, сверившись с папирусом.

— O shit, — удивился Линус.

— Но вообще довольно здорово, — попытался ободрить его джинн. — Я никогда раньше не видел, чтобы человек загадал желание, и у него осталось столько же желаний. Даже если бесполезное. Хороший фокус для вечеринок.

— Двухбитная переменная, — удивился Линус. — Необычно.

— Может, дворец? — сочувственно предложил джинн. — Миллион динаров? 72 девственницы? Я могу, если что...

— Я хочу, чтобы переменная, хранящая информацию о доступных мне желаниях, стала 16-битной, определился Линус.

— Я всё ещё не понимаю, — покачал головой джин. — 900-е годы. До нашей эры.

— Это ничего, — ответил Линус, привыкший иметь дело с гуманитариями. — Ты просто сделай то что я сказал, слово в слово.

Джинн вырвал волоски из брови, пошептал, поводил руками, и снова ничего не произошло. Он снова сверился с папирусом.

— У тебя теперь два желания, — развёл руками он.

— А вот теперь я хочу, чтобы у меня стало на два желания меньше.

Джинн вырвал волоски из подмышки, поколдовал и посмотрел в папирус.

— У тебя 65 535 желаний, — озадаченно сказал он.

Линус Торвальдс нехорошо улыбнулся.

— Я же говорил, что мы живём в матрице. Присаживайся. Записывай. Значит, во-первых...
+830
Проголосовало за – 967, против – 137
Статистика голосований по странам
Статистика голосований пользователей
101 комментарий, показывать
сначала новые

KnightRider20.02.25 17:26

А заметили - как только итория не про еврейский пиздунец, не о "бобаизбранном народе", так сразу интересно читать?

+-4

лесной20.02.25 15:13

После того как количество желаний стало равно нулю, нужно вычесть ещё единицу за то желание, которое только что исполнилось, будет -1 (исполнил желание, чтоб был 0).
В компьютерных системах числа представлены в двоичном формате и имеют фиксированный диапазон значений.

Джин использовал 16-битное беззнаковое число.

Если вычесть 1 из 0 в системе с 16-битным беззнаковым целым числом, результатом будет 65535

+2

ystervark20.02.25 13:10

Попросить увеличить количество желаний нельзя, но, может быть, можно попросить подогнать трех джиннов, каждого с тремя желаниями?

+0

Коммутатор20.02.25 11:23

Повезло, что:
- столь древняя версия ПО матрицы не оперирует понятием signed integer.
- видимо столь же древний процессор не генерирует аппаратное прерывание integer overflow.

+2

Crazy_Snake20.02.25 07:52

И ботаны начали совещаться))))

+1

andreydv1 ★★★19.02.25 21:09

Сейчас пришла в голову такая трактовка: это даже не развод джинна на количество желаний. Линус просто проверял, не находится ли он внутри компьютерной программы. Он же перед этим думал о матрице. И удостоверился, что счётчик желаний работает по принципу кода. То есть мы имеем дело с поставленным научным экспериментом.

+16

Michael Ashnin ★★★19.02.25 20:07

Ничё не понял — но байка отличная, классика!

+4

andreydv1 ★★★➦Michael Ashnin19.02.25 23:43

Принцип такой: допустим переменная 3-хбитовая. Если с десятичной системой аналогию проводить, то на трёх позициях максимальное число при трёх разрядах будет 999 (и количество комбинаций 1000 - от 0 до 999). Если из 003 отнять 3 и ещё 1, то получится -1. Так вот, если система будет из трёх позиций, то машина, отнимая от 003 четвёрку, получит не минус один, а перещёлкнется на 999. Этот прикол и использовал Линус в данной байке.

+12

Michael Ashnin ★★★➦andreydv120.02.25 07:28

Спасибо, но я безнадёжен, самому иногда смешно — какой же я чайник!
Старый и ленивый, заточенный под одну функцию…
Спасибо ещё раз — я оценил вашу благожелательность.

+3

Kelavrik_0➦Michael Ashnin20.02.25 10:29

Числа записывают как степени двойки. Пусть двух битовая переменная. Первый бит А, второй В. Число воспринимается А*2+В. Но В может быть только 0 или 1. Если А=1 и В=1, то имеем число 3. Допустим добавляем 1 как при сложении в столбик. В превращается в 0, единица переходит на нижний разряд, то есть к А. А+1 тоже ноль, но другого то разряда нет и получается А=0, В+0.

+2

Random➦Michael Ashnin21.02.25 03:37

Kelavrik_0, ну вот представьте, что вы анестезиолог и говорите про дыхательную функцию под опиатами.

Что будет понятнее среднестатистическому собеседнику без специальных знаний?

Вариант 1) «Опиаты повышают респираторную депрессию до летальных величин».

или

Вариант 2) «Дыхалка на герыче ваще в жопу братан, ты эта, не бухай особо».

Так вот, Миша, вот вам вариант #2 касательно данной истории. Есть ячейка. Хранит ровно одну цифру, от 0 до 9. Когда в ней ноль, и мы делаем -1, то получается 9. Было бы 9, сделали бы +1, получили бы 0. Всё.

+1

Kelavrik_0➦Random21.02.25 10:55

Да тут знаний на уровне простейшей арифметики. В отличии от анестезии.

+0

Mike Mihalych➦Michael Ashnin21.02.25 12:31

Представьте, что Вы скручиваете счетчик пробега на автомобиле. Старый, механический, как в "Жигулях" или "Москвичах". Если сильно перекрутить, то счетчик после 00000 покажет 99999. В байке описывается примерно такой же случай. 2 раза. ;-)

+4

Random➦Mike Mihalych21.02.25 14:55

Браво! Реквестирую больше простых, понятных и правильных аналогий.

+1

Random➦Kelavrik_021.02.25 15:49

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

+0

Kelavrik_0➦Random21.02.25 15:52

Да ладно, впрочем зачем продолжать?

+1

andreydv1 ★★★➦Mike Mihalych21.02.25 23:11

Вот это самое наглядное объяснение. И главное правильное.

+0

Хренонимус 19.02.25 19:57

Вот только тип не указал. Signed или unsigned. Кто его знает, что у них там по умолчанию декларируется...

+7

Хренонимус ➦ТожеУкраинец20.02.25 10:23

У вас осталось 2.1235322 желания ;)

+3

Коммутатор➦Хренонимус20.02.25 10:49

В 900-х годах до н.э.?

+0

Хренонимус ➦Коммутатор20.02.25 12:21

Дык! От 16ти до 32х бит всего десяток лет прошел ;)

+0

Random➦Хренонимус20.02.25 18:32

Прошёл… идет! Подождем еще 2037 года, веселуха будет )

+1

Random➦Хренонимус20.02.25 18:34

У Доктороу была прекрасная повесть на эту тему: https://craphound.com/walh/Cory_Doctorow_-_With_a_Little_Help.html

+0

Хренонимус ➦Random20.02.25 19:56

Сказал, десять лет!
Это же целая эпоха пройдет! ;)

+1

Random➦Хренонимус21.02.25 01:37

Epoch. Right.
На самом деле, 19 января 2038 наебнутся ооочень многие системы, от кассовых аппаратов до банкоматов (которые по слухам до сих пор на коболе, а по лично виденным примерам, от ХР до OS/2).

+0

Хренонимус ➦Random21.02.25 12:22

Вот за коболь и индустриалку - да. Невидимый ИТ он такой. Работает спокойно, никого не трогает, никто его не трогает, пока, внезапно, не работает.

+0

Хренонимус 19.02.25 19:53

Кхе-кхе-кхе ;)

+1

Random19.02.25 16:20

И работать это будет до первого вселенского патча. А вот ЛЛео Каганов эту идею (бесконечные три желания) реализовал через методы социальных графов: https://lleo.me/arhive/fan2004/piramida.shtml

+6

любитель19.02.25 16:07

Наконец-то нормальная инструкция для общения с джином.

+14

dobrovit ➦любитель19.02.25 19:25

С джином не надо общаться. Его надо пить.

+4

Msl➦dobrovit19.02.25 20:02

А поговорить?

+2

andreydv1 ★★★➦dobrovit20.02.25 08:40

Всякое в жизни случается. Ещё недавно куча народа слушало гречку.

+0

proctoleha19.02.25 15:38

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

Вообще ЭВМ пофиг какое число - с минусом, или без. Если оно целое, то что -1, что 1 - это type integer. Диапазон целых чисел разный в разных ЯП, что то вроде от -32000 до 32000.

И
> переменная переполнится
- это лютый треш. Для тех кто в курсе.

Вспоминаем информатику: переменная - это зарезервированная область в оперативной памяти, в которой в которой хранятся данные какого либо типа. И ЭВМ пофигу с минусом, или без целочисленные переменные. Так то это дыра в безопасности, если программа отработает так, как написано в истории

+-5

kamakama ➦proctoleha19.02.25 17:10

Ассемблерам пофиг на дыры. Сказали XOR - значит XOR. А то, что мы там не байты складываем, а числа - это его вааще не ебет.

perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see'

+4

vap➦proctoleha19.02.25 17:16

Но на распространенных ныне архитектурах двоичное представление шестнадцатибитного беззнакового 65535 такое же, как и для шестнадцатибитного знакового -1. И, кстати, в большинстве языков ничего плохого не случается, если из беззнакового вычесть что-то, что дало бы отрицательный результат. В Си так, насколько помню, даже официально можно (в отличие от знаковых - там по стандарту будет неопределенное поведение).

+3

Kelavrik_0➦proctoleha20.02.25 10:22

Уфф! Числа отрицательные и положительные складывают одинаково, это верно. Но разная интерпретация чисел.

+1

Коммутатор➦vap20.02.25 10:46

Окромя включенных опций проверки современных компиляторов, которые вызовут SEH и, если он не перехвачен, оно приведет к terminate.

+1

ВД19.02.25 15:32

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

+-7

Derrick➦ВД19.02.25 15:43

По условию "нельзя желать больше желаний." То есть нельзя формулировать запрос вида "Wishes=Wishes++", "Wishes=Wishes+N", "Wishes=N*Wishes", где Wishes и N беззнаковые целые. А вот запрос вида "Wishes=Wishes-N" при таких же ограничениях на Wishes и N допустим: это желать МЕНЬШЕ желаний.
А то, что реализовано через задницу - так это нормально. Оно всегда так реализовано. Вон, Сухие из Питера вылететь не могли. Идиотизм? Конечно.

+17

2haw2 ➦ВД20.02.25 00:08

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

+8

Random➦2haw220.02.25 02:01

Я эту уязвимость году примерно в 1995 нащупал интуитивно :)
Была такая игра, Elite, векторная 3D-графика.
Стрелять по врагам нужно лазерам, судорожно совмещая прицел в трех координатах, а они обратно палят.
И были самонаводящиеся ракеты. Были они дорогие, в бей помещалось три штуки. Наводишь на цель и жмешь файр.
Не знаю каким чудом, но я навел ракету, затем задокился со станцией, продал ракету, вылетел со станции и выстрелил.
И хуяк! 255 ракет в бее.
До сих пор помню чувство абсолютного контроля над тканью бытия, испытанное в тот момент.

+7

Kelavrik_0➦Random20.02.25 10:19

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

+3

Apostle➦Random25.03.25 01:52

О да, Элит - легенда! Помню из комнаты с братом выходили, так как нельзя было дышать, чтобы загрузилась с кассеты на Спектрум😅 А еще во вторых героях можно было на минус деньги купить минус юнита, а потом разделить его шифтом на -2 и 1 и так пока не надоест. А минусовых уволить)

+0

AndM19.02.25 15:25

А Грета Тумберг не доучилась в школе и стала жирной.

+5

Старый как дерьмо мамонта➦AndM19.02.25 17:59

Потом она села в тюрьму и похудела.

+4

andreydv1 ★★★19.02.25 15:23

Очень хорошо. С точки зрения самой идеи одна из самых смешных историй в рунете за последнее время.

+11

Awn19.02.25 15:16

Джин - алкогольный напиток,
Джинн - дух из арабской мифологии. )

+8

Миндербиндер➦Awn19.02.25 16:28

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

+11

SV19.02.25 15:13

Напомнило вопрос про чёрного кота:
удваивает он или отменяет дурность
предзнаменования, если дорогу вам
перейдёт, а потом вернётся назад?..

+6

John Doe➦SV19.02.25 17:17

Удваивает, потому что кот векторный а не скалярный.

+5

deShurik➦John Doe20.02.25 03:44

Если скалярный, то удвоил, если векторный, то отменил.

+8

demontag19.02.25 15:06

Все такие умные, про матрицу рассуждают, про переменные. Меня волнует более приземленный вопрос, про 72 девственниц! Где их содержать, в моей двухкомнатной брежневке? Значит надо и дворец, и миллион, чтоб содержать всё это. Проще сорвать джекпот в миллиард , в Столото.

+5

Ez➦demontag19.02.25 15:48

Джекпот уже твой, брат, мамой клянус! Давай денги.

+2

Хренонимус ➦demontag19.02.25 19:59

Так там стартовый пакет сразу предлагался: дворец, миллион динар и толпа девственниц ;)

+2

demontag➦Хренонимус19.02.25 20:22

Можно хотя бы рублями?

+0

Ost19.02.25 14:59

Лишь бы прозекторы не стали тоже слать сюда профюмор.
Всё-таки раздел историй, а не басен.

+0

Derrick➦Ost19.02.25 15:47

Ну, это, конечно, в анекдотах должно было быть. А в остальном почему нет? Что, истории про вытащенную стрелу и подозрение на простатит сильно лучше?

+3

Ost➦Derrick19.02.25 15:55

Зачем равняться на придурка оби? Того всегда минусую. А "простатит" прям в точку лёг. Надеюсь, автор меня послушает и подстрахуется. Вдруг полное совпадение. Будет польза (афтырю) от неформата.
А к этому произведению в анекдотах не имел бы никаких претензий.

+0

karag0➦Ost20.02.25 16:23

Он и был в анекдотах

+0

Ost➦karag020.02.25 16:25

Так Вы - жертва волюнтаризЬма редактора? Пойду, плюс поставлю!

+0

Консильери 19.02.25 14:46

Спасибо! Просто шедевр!

+3

MasterIvanov ★★19.02.25 14:34

Гениально! Даже - конгениально!

+3

SV➦MasterIvanov19.02.25 15:09

Вы бы это слово хоть погуглили...

+4

Генрих Монт ➦MasterIvanov19.02.25 15:13

По данным опроса, более 90% людей убеждены, что слово «конгениально» является превосходной формой наречия «гениально». То есть если человек является даже более гениальным, чем гений, то он «конгениален». Но, к сожалению, это неправильно! Слово «конгениальный» пришло к нам из латыни и дословно обозначает «схожий по духу». Таким образом мы получаем, что «конгениально» - это близко по духу. Если вы назвали человека «конгениальным», значит, вы имели в виду то, что он схож с вами по образу мышления и ценностям.

Как только я захотел выпить, мне позвонил друг и позвал в бар: этот человек конгениален!

+11

MasterIvanov ★★➦SV19.02.25 15:19

"Я ждал тебя, мой нежный критик!" Твою дружескую заботу, интерес к моему комменту и поддержание разговора.

Ваше обращение на Вы только наше состояние близости и атмосферы уважения на этом сайте! Если Вы, конечно, не людоед!

+3

MasterIvanov ★★➦MasterIvanov19.02.25 15:20

Моему гению так недоставало Вашего!

+3

Yggaz➦Генрих Монт20.02.25 08:28

Нет в языке понятия "правильно/неправильно". Есть "принято". И увы, язык меняется. Мне тоже не нравится, что "нелицеприятный" используют как усиленный вариант "неприятный" (а не "беспристрастный", как было), а слово "довлеть" понимают как "оказывать давление" (а не "быть достаточным", как было). Но если 90% людей понимают "конгениальный" как "очень гениальный" - вероятно, это слово теперь принято использовать именно в этом значении. А я опасаюсь, что там уже не 90, а 97% :).

+3

AleM 19.02.25 14:30

Ага, а если бы у Джина оказалась арифметика многократной точности, а не в виде двухбайтного слова типа Integer*2, то дырку от бублика он бы получил, а не переполнение массива.

+1

John Doe➦AleM19.02.25 17:21

В истории нет ни слова про переполнение массива.

+2

AleM ➦John Doe20.02.25 12:23

А я не про историю, я про арифметику многократной точности? Не приходилось с таким сталкиваться, когда нужно перемножить или сложить два десятичных числа с тысячью знаков в каждом?

+0

Kroki 19.02.25 14:07

А что анекдоты делают в историях?

+4

Kelavrik_0➦Kroki19.02.25 14:11

Печатаются!

+9

Коммутатор➦Kroki20.02.25 10:07

В анекдотах overflow. Выбросило сюда.

+7

2haw2 19.02.25 13:50

А потом он сел повышать привилегии до Root, вышел за пределы защищенной памяти, и словил kernel panic. Поэтому, в нашей версии реальности эта история осталась только в виде данного лога.

+11

kamakama ➦2haw219.02.25 17:11

А потом Линус сказал ему - просто повторяй, не думай

perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see'

+6

2haw2 ➦kamakama20.02.25 00:09

О, а вот и патч Бармина подъехал! sudo забыл :)

+3

Гарик О 19.02.25 13:47

идея шикардос

+3

Пан хулиган19.02.25 13:40

На самом деле, требовать сделать переменную 16 битной не нужно, это лишняя работа и лишний шанс, что что-то пойдет не так.

Достаточно было загадать 2 желания, а на последнем попросить минус 1 желание и снова получить 3 желания. Повторять до бесконечности.

+14

karag0➦Пан хулиган19.02.25 13:41

Ему лень было

+6

Random➦Пан хулиган19.02.25 15:34

Каганов нечто похожее реализовал, но не так прямолинейно.

https://lleo.me/arhive/fan2004/piramida.shtml

+4

Kelavrik_0➦Random20.02.25 10:09

Это другое, он принцип финансовой пирамиды реализовал.

+2

irrazionalle19.02.25 13:23

Хе хе ... А кто сказал, что там не вещественный тип данных? Матрица-то аналоговая )

+0

karag0➦irrazionalle19.02.25 13:33

В 4 вроде перешли на цифровую

+2

proctoleha19.02.25 13:22

Улыбнуло! 2 ^ 16 = ?

+1

2haw2 ➦proctoleha19.02.25 13:24

65536, но 0 это тоже состояние. Так что всё правильно подсчитано.

+5

Kelavrik_019.02.25 13:19

Отличная идея, повеселили. Но если бы переменная была signed, а не unsigned?

+2

karag0➦Kelavrik_019.02.25 13:34

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

+2

karag0➦Kelavrik_019.02.25 13:38

Тем более джин работает с переменными напрямую, типа древний как ассемблер, и для него нет понятия signed/unsigned

+1

2haw2 ➦Kelavrik_019.02.25 13:45

Тогда Линус бы с ок-фейсом пошёл исполнять желания джинна, разумеется!

+7

Kelavrik_0➦2haw219.02.25 14:03

Ага, вот и я о том же.

+3

Kelavrik_0➦karag019.02.25 14:10

В шутящих физиках была история про -2 рыбы. https://www.anekdot.ru/id/271033/

+2

karag0➦karag019.02.25 14:22

Что я написал, к него нет понятий переменных он манипулирует битами на прямую

+1

Коммутатор➦Kelavrik_020.02.25 09:58

Очевидно в 900 годах до нашей эры не было понятия отрицательных чисел. Так что никаких signed. Правда и нуля тогда не было.
P.S. Могу ошибаться по эпохе, когда ввели понятие отрицательных чисел.

+1

Коммутатор➦Коммутатор20.02.25 10:04

Вроде бы согласуется с Википедией:

Впервые отрицательные числа были частично узаконены в классическом китайском трактате «Математика в девяти книгах» (II в до н. э.), а затем (примерно с VII века) и в Индии,...

+1

Kelavrik_0➦Коммутатор20.02.25 10:08

Зато переменные были и двубитные, и 16-битные.

+0

Коммутатор➦Kelavrik_020.02.25 12:45

О чем нам и поведал автор в аватаре Линуса Торвальдса.

+0

Alexander_A 19.02.25 13:08

Идея текста - замечательная.
Исполнение подкачало.
И место для публикации - не соответствует совершенно.

+-4

mikondr➦Alexander_A19.02.25 14:00

На Пикабу позавчера норм же было))

+5

Derrick➦mikondr19.02.25 15:49

В анекдотах было бы норм. В историях не очень.

+1

Общий рейтинг комментаторов
Рейтинг стоп-листов

Рейтинг@Mail.ru