Курс на Stepik
Обложка курса «Ассемблер (NASM Linux x86-64) — Переход к Windows x64» на Stepik
1 690 ₽

Ассемблер (NASM Linux x86-64) — Переход к Windows x64 ★ 0.000

Открыть на
STEPIK.ORG

Курс о том, как ассемблерные знания, полученные на Linux, работают на Windows x64: другой ABI, другая модель системных вызовов, PE вместо ELF, DLL вместо .so. Финал курса — кроссплатформенный проект, который собирается под обе ОС из одного исходного кода.

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Учеников на курсе 3
Сертификаты, выданные на курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Сертификатов выдано 0
Отзывы о курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Отзывов получено 0
Рейтинг курса «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Рейтинг курса 0.000
Уроки в курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Количество уроков 46
Тесты в курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Количество квизов 155
Стоимость курса «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Стоимость курса 1 690 ₽ —
Обновления курса «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Обновления курса — —
Дата публикации курса «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Дата публикации курса — ———
Последнее обновление курса «Ассемблер (NASM Linux x86-64) — Переход к Windows x64»Последнее обновление — ———
Сложность normal — ———

Содержание курса

Разделы в курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64» 9 разделов Уроки в курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64» 46 уроков Тесты в курсе «Ассемблер (NASM Linux x86-64) — Переход к Windows x64» 155 тестов Последнее обновление курса «Ассемблер (NASM Linux x86-64) — Переход к Windows x64» обн. 15 сентября 2026

Введение в мир Windows

5 уроков
1. Подготовка окружения ↗
2. Чем Windows отличается от Linux на уровне исполнения кода ↗
3. Запуск ↗
4. PE — анатомия исполняемого файла Windows ↗
5. Точка входа и рантайм-обвязка ↗

ABI и соглашения о вызовах

6 уроков
1. Microsoft x64 calling convention ↗
2. Shadow space ↗
3. Callee-saved и caller-saved регистры ↗
4. Выравнивание стека и вызов функций ↗
5. Сравнение с System V AMD64 ↗
6. Передача структур и больших аргументов ↗

WinAPI вместо syscall

6 уроков
1. Почему в Windows нет прямых системных вызовов ↗
2. kernel32.dll, ntdll.dll: слои системы ↗
3. Статическая и динамическая линковка с WinAPI ↗
4. Импорт функций: import table и .idata ↗
5. Вызов простейших функций WinAPI из ассемблера ↗
6. Обработка ошибок: GetLastError ↗

Ввод/вывод и работа с консолью

5 уроков
1. Хендлы вместо файловых дескрипторов ↗
2. WriteConsole и ReadConsole ↗
3. Работа с файлами ↗
4. Закрытие хендлов и освобождение ресурсов ↗
5. Юникод в Windows: ANSI vs Wide API ↗

Память и структура процесса

5 уроков
1. Карта памяти процесса в Windows ↗
2. VirtualAlloc и VirtualFree вместо brk/mmap ↗
3. Heap API: GetProcessHeap, HeapAlloc, HeapFree ↗
4. Права доступа к страницам памяти ↗
5. Стек потока и его лимиты ↗

Библиотеки и линковка

5 уроков
1. DLL vs статическая библиотека: концептуальные отличия от .so/.a ↗
2. Экспорт и импорт символов: .def-файлы ↗
3. Написание собственной DLL с ассемблерными функциями ↗
4. Вызов функций из DLL во время выполнения: LoadLibrary, GetProcAd ↗
5. Линковка с C-рантаймом (MSVCRT) из ассемблера ↗

Отладка и инструменты Windows

7 уроков
1. WinDbg: запуск и базовые команды ↗
2. Просмотр регистров, памяти и стека в WinDbg ↗
3. dumpbin: анализ PE-файла ↗
4. Точки останова и пошаговое выполнение ↗
5. Сравнение с GDB/objdump: что похоже, что иначе ↗
6. Шпаргалка по отладке ↗
7. Практика ↗

Кроссплатформенная разработка

5 уроков
1. Абстрагирование ABI ↗
2. Условная сборка под ELF и PE через препроцессор ↗
3. Единый интерфейс ввода/вывода поверх syscall и WinAPI ↗
4. Организация проекта с раздельными платформенными модулями ↗
5. Сборка одного проекта под Linux и Windows: ↗

Итоги

2 урока
1. XOR-шифратор — кроссплатформенная версия ↗
2. Список пройденного ↗