Ультра-маленькие демки под DOS

В статье вы узнаете как сделать маленькие программы для MS-DOS на ассемблере, я покажу как рисовать 2D графику напрямую в видео-буфер. Может быть, вы даже вдохновитесь на создание собственного демо, которое будет ставить рекорды по размерам исполняемог…

Что скрывают программы от отладчика?

Здорово, когда программы разрешают себя отлаживать: какие бы тайны ни скрывали, выдадут. Честным программам скрывать нечего, но встречаются и вредные: такие программы мешают себя изучать, а то и вовсе отказываются работать.Отладчик поможет изучить заши…

Как найти часть суши, окруженную водой

Уже очень давно создана и работает программа, отображающая космонавтам движение МКС на карте земной поверхности.МКС, конечно, двигается вовсе не по земной поверхности, а по орбите. Но если соединить станцию и центр Земли прямой, то точка пересечения эт…

Звуковой датчик при респавне игрока

Играя в Unreal Tournament (ut99) я использую тактику «ожидание противника в засаде», таких игроков называют camper.Я мирно cтою за ящиком и слушаю музыку.Как только раздаётся сигнал «респавна» (воскрешение игрока).Я говорю: — Привет! Во время игры я сл…

[recovery mode] mov Программирование на Ассемблере без знаний Ассемблера, habr

ПрологРешил поделиться своими мыслями и кратким двухдневным опытом написания (собирания по частям) программы на Ассемблере без чтения учебников, больших статей и в целом без опыта программирования на Ассемблере. На одном из форумов я набрёл на задач…

Что делать, когда выпускник топ-10 мирового вуза не может спроектировать блок сложения A+B

У меня был в свое время практикант из Стенфорда, от которого я получил инсайдерскую информацию, чему их там учат. Потом я интервьировал много студентов, и понял, что если человек не делает самостоятельных проектов в вузе, а просто плывет по течению про…

«Хакер»: Учимся анализировать программы для x86-64 с нуля

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

Бесполезный и красиво ужасный язык программирования ALLang

Примерно год назад я писал язык программирования под названием ALLang. Расшифровка его звучит так: Another LISP Language, что незамысловато даёт понимание его второсортности. Тем не менее, таковой язык всё же предлагает интересные особенности в своей р…

Как устроена работа thread_local переменных: разбираемся и добавляем поддержку в учебную ОС

Эта статья написана по мотивам моей курсовой работы, основной смысл которой описан здесь. В процессе работы над ней мне понадобилось добавить в учебной ОС, над которой я работал, поддержку thread_local переменных, о чём я и хочу здесь рассказать в наде…