Разница между реализацией и синтаксисом

после долгих исследований я думаю, что начал узнавать, как работают ассемблеры

Ассемблер работает как компилятор, который компилирует код для предполагаемой архитектуры. в то время как язык ассемблера - это общая идея, которая реализована по-другому. Но я не понимаю, как работает синтаксис? Разве это не просто реализация?

Я искал, но не могу найти ничего, что объясняло бы, как работает синтаксис и чем он отличается от реализации.

Я видел синтаксис слов, используемый в http://sun.hasenbraten.de/vasm/, Сколько существует языков ассемблера и многих других статьях.

Но я до сих пор этого не понимаю. В основном я нахожу жизненный синтаксис AT&T против синтаксиса Intel (может кто-нибудь объяснить?).

Также это бонус, чтобы спросить: может ли ассемблер поддерживать несколько архитектур? Если да, то как?

Синтаксисы at & t и Intel - это два основных варианта сборки x86. Они даже недостаточно конкретны, поскольку не охватывают директивы и тому подобное. Другие архитектуры могут использовать совершенно другой синтаксис. Как правило, один ассемблер (двоичный) не поддерживает несколько архитектур, но некоторые ассемблеры могут быть скомпилированы для конкретной одной из нескольких архитектур (например, ассемблер GNU). Даже тогда вам понадобится соответствующий исходный код, ассемблер не сможет волшебным образом превратить ваш x86, например, в ARM.

Jester 13.09.2018 19:50

Не могли бы вы дать более подробный ответ или предоставить подробный документальный фильм? О синтаксисе и директивах?

jakHunter 13.09.2018 20:30

синтаксис определяется ассемблером, который вы используете (я имею в виду «компилятор», созданный конкретным поставщиком - поэтому проверьте его документацию). Если этот ассемблер поддерживает несколько целей, каждая из них может иметь определенные особенности синтаксиса. Общие математические выражения имеют тенденцию быть одинаковыми почти во всех ассемблерах (кроме самых простых, которые вообще не могут вычислять выражения), но все, что связано с инструкциями, является индивидуальным. Едва связанные вопросы и ответы: stackoverflow.com/q/39083991/4271923, stackoverflow.com/a/40727469/4271923

Ped7g 13.09.2018 20:40
1
3
96
0

Другие вопросы по теме