Yasm

Из Википедии, бесплатной энциклопедии

Yasm
Логотип программы Yasm
Тип Ассемблер
Разработчики Peter Johnson, Michael Urman и др.
Операционные системы Linux, DOS, Windows, UNIX
Последняя версия 1.3.0 (25 июля 2019)
Репозиторий github.com/yasm/yasm
Лицензия BSD License
Сайт yasm.tortall.net

Yasm — ассемблер, являющийся попыткой полностью переписать ассемблер NASM. Лицензируется под лицензией BSD.

Поддерживаемые архитектуры

[править | править код]

Формат выходных файлов

[править | править код]

Yasm поддерживает следующие форматы выходных файлов:

  • Binary — бинарные файлы с любой нужной вам структурой.
  • ELF32 и ELF64 — объектные файлы UNIX.
  • Mach-O — 32- и 64-битные объектные файлы Mac OS X.
  • COFF — объектные файлы для использования с DJGPP, MS COFF для Win32, MS64 COFF для Win64 (с поддержкой SEH).
  • RDOFF2

Формат отладочной информации

[править | править код]

Расшифровка

[править | править код]

Название Yasm, особенно в форме акронима, имеет несколько возможных значений, главным образом шуточных:

  • Yes, it’s an ASseMbler — Да, это — АССЕМБЛЕР
  • Your fAvorite aSseMbler — Ваш любимый ассемблер
  • Yet Another aSseMbler — Ещё один ассемблер
  • whY An aSseMbler — почему ассемблер?

Отличия от NASM

[править | править код]

Кроме Intel-синтаксиса, применяемого в NASM, Yasm также поддерживает AT&T-синтаксис, распространённый в Unix. Yasm построен «модульно», что позволяет легко добавлять новые формы синтаксиса, препроцессоры и т. п.

Последняя версия Yasm вышла в 2019 году.