Чему вы научитесь
- Понимать модель данных и модель выполнения программы на уровне процессора
- Работать с регистрами, копировать данные через MOV и выполнять базовую арифметику
- Использовать флаги процессора, сравнения и условные переходы для управления логикой программы
- Писать циклы и применять логические операции и сдвиги
- Работать с памятью: переменными, массивами, структурами, адресацией через LEA
- Работать со строками и понимать, что такое endianness
- Организовывать вызовы функций: стек вызовов, параметры, возврат значений, сохранение регистров
- Выполнять системные вызовы напрямую и работать с вводом/выводом
- Использовать препроцессор: константы, макросы, условную компиляцию
О курсе
Первый курс линейки об ассемблере x86-64: с нуля объясняет модель данных, арифметику, переходы, циклы, работу с памятью, функции и системные вызовы на Linux. К концу курса вы напишете свои первые самостоятельные программы — калькулятор, конвертер чисел, сортировщик файлов.
Для кого этот курс
Тем, кто раньше не писал на ассемблере и хочет разобраться, как компьютер выполняет код на самом низком уровне
Программистам на языках высокого уровня, которые хотят понять, что происходит «под капотом» — как работают функции, память, циклы на уровне процессора
Студентам, изучающим архитектуру компьютеров и организацию ЭВМ
Всем, кто планирует пройти дальнейшие курсы линейки (отладка, SIMD, кроссплатформенность) и хочет начать с прочной базы
Начальные требования
- Базовые навыки работы в терминале Linux (переход по каталогам, запуск команд)
- Установленный NASM и компилятор/линковщик (ld или gcc) — как это сделать, объясняется в первом разделе курса
- Специальных знаний ассемблера не требуется — курс начинается с нуля
- Будет большим плюсом знание С/С++
Преподаватели курса
Как проходит обучение
Курс построен по принципу «от простого к сложному»: каждый урок вводит одну новую концепцию и закрепляет её практическими заданиями прямо в теле урока. Теория подаётся короткими порциями, без перегрузки терминологией — новые понятия объясняются через практику, а не через абстрактные определения. Курс завершается тремя мини-проектами, где нужно применить весь пройденный материал в связке.
Сертификат
Успешно завершив курс, вы получите сертификат от платформы Stepik. Уже 27 учеников получили сертификат.
Что вы получите
- Понимание того, как программа устроена и выполняется на уровне процессора
- Навык чтения и написания ассемблерного кода под Linux x86-64
- Умение работать с памятью, стеком и системными вызовами напрямую, без посредников
- Три завершённых мини-проекта в портфолио: калькулятор, конвертер чисел, сортировщик файлов
- Прочную базу для перехода к более сложным темам — отладке, оптимизации, SIMD
- Сертификат о прохождении курса