Обычно main — это функция. Но всегда ли это так?
Идея написать эту статью пришла мне в голову, когда одного из моих коллег заставили пройти начальный курс по CS в моем университете. Мы с ним искали способ написать корректную программу — Читать дальше...
View ArticleСамоизменяющаяся программа на C под x86_64
Зачем вообще может понадобиться писать программу, которая меняет свой код во время выполнения? Это ужасно! Да, да, я знаю. И все-таки, зачем? Ну, например, это хороший учебный пример. Но главная —...
View ArticleКак создавался редактор ассемблерного кода SASM
Рассказывает создатель SASM, Дмитрий Манушин Здравствуйте! Хочу немного рассказать о разработке проекта SASM — среды разработки для языков ассемблера. Чтобы сразу было понятно о чём речь: Сайт:...
View ArticleБесплатные материалы для программистов
Огромная база ссылок на книги, статьи, туториалы, онлайн-курсы, интерактивные обучалки, подкасты — всё только бесплатное. — Читать дальше «Бесплатные материалы для программистов»
View ArticleОсновы Just In Time компиляции, используемой в динамических языках, на...
Я был сильно вдохновлен, когда узнал о динамической компиляции (JIT — Just In Time) из различных виртуальных машин Ruby и JavaScript. Я мог бы рассказать вам все о том, как — Читать дальше «Основы Just...
View ArticleВ Сети появилась серия статей-руководств по созданию собственной ОС на...
Предлагаем вашему вниманию серию англоязычных статей, опубликованную в блоге Филиппа Опперманна. В ней подробно разбирается процесс разработки собственной 64-битной ОС на ассемблере и Rust. Серия...
View ArticleНа GitHub выложили тетрис, целиком помещающийся в загрузочном секторе
TetrOS — клон знаменитого Tetris, написанный на ассемблере. Он целиком вмещается в 512 байт загрузочного сектора (ему требуется всего 446 байт места, это как раз максимальный размер загрузчика в MBR)....
View ArticleРуководство по созданию ядра для x86-системы. Часть 1. Просто ядро
Рассказывает Arjun Sreedharan Давайте напишем простое ядро, которое можно загрузить при помощи бутлоадера GRUB x86-системы. Это ядро будет отображать сообщение на экране и ждать. Как загружается...
View ArticleРуководство по созданию ядра для x86-системы. Часть 2. Система ввода / вывода
Рассказывает Arjun Sreedharan В прошлой статье я писал о том, как создать простейшее x86-ядро, использующее GRUB, работающее в защищённом режиме и выводящее на экран строку. В этот раз мы подключим к...
View ArticleКомпилятор Си в одну инструкцию: обзор инструмента M/o/Vfuscator
M/o/Vfuscator компилирует программы в инструкции mov, и только в них. Инструмент ориентирован на язык Си и архитектуру процессора x86, но адаптивен и легко настраивается под другие языки и архитектуры....
View ArticleКурс «Основы программирования встраиваемых систем»
Русскоязычный курс, открывающий своим слушателям удивительный мир микроконтроллеров. Среди окружающих нас приборов все сложнее встретить такие, в которых их нет. Часы и светофоры, системы освещения,...
View ArticleКурс «Программирование с нуля»
Русскоязычный курс для абсолютных новичков, рассказывающий об основах программирования на примере языка ассемблера. Данный курс это авторская программа «Школы Программистов», целью которой является...
View ArticleВыпущена версия DOOM, работающая только на mov-инструкциях
Один кадр обрабатывается около 7 часов, зато игра теперь не подвержена недавним уязвимостям в процессорах. — Читать дальше «Выпущена версия DOOM, работающая только на mov-инструкциях»
View ArticleПримите участие в баттле языков программирования 2020. Старт уже завтра!
В то время как Java и язык Си меняются местами на вершине рейтинга TIOBE, мы решили выяснить, какие языки программирования, наши подписчики любят больше всего. Завтра начинается баттл языков...
View ArticleБитва языков программирования 2020 продолжается!
Первый день голосования закончился. По его итогам Swift уверенно обошёл PHP, а Kotlin немного не дотянул до Java. Смотрите результаты здесь. Сегодня соревнуются следующие две пары языков:...
View ArticleКак компилятор преобразует код на C в Assembler?
Видео, в котором подробно разбирается преобразование программы на языке C в машинный код. — Читать дальше «Как компилятор преобразует код на C в Assembler?»
View Article