Какой тип сборки выводит gcc с флагом -S - PullRequest
0 голосов
/ 16 ноября 2011

Заголовок поста - это вопрос. Я вижу, что это не ассемблер для ассемблера NASM. Для какого языка ассемблера предназначен вывод ассемблера gcc?

Ответы [ 3 ]

3 голосов
/ 16 ноября 2011

Это синтаксис AT & T компьютера, на котором вы компилируете, а NASM использует синтаксис Intel.

-S -masm=intel исправит это: Как вы используете gcc для генерации кода сборки в синтаксисе Intel

3 голосов
/ 16 ноября 2011

В основном, существует два вида сборки.

  • Синтаксис Intel
  • AT & T (GAS) синтаксис

GCC обычно выводит сборку с использованием синтаксиса AT & T (GAS), а NASM использует синтаксис Intel.

На некоторых платформах вы можете сгенерировать сборку в синтаксисе Intel, используя:

-masm=intel

К сожалению, это не поддерживается везде. Например, при использовании OS X поддерживается только синтаксис AT & T.

0 голосов
/ 16 ноября 2011

Это на & т ассемблере. Стандарт в мире Unix.

...