Каковы AT & T эквиваленты этим директивам Intel для ассемблера? - PullRequest
0 голосов
/ 23 сентября 2018

В некотором примере кода, написанного в синтаксисе Intel, была строка с надписью [org 0x7c00].Я не мог понять, как заставить это работать с синтаксисом AT & T, и не мог найти его в Интернете.

Кроме того, я нашел строку с $$ (это не может считаться директивой на ассемблере).Из того, что я мог бы сказать, это ссылается на начало двоичного файла (?) Я не могу найти AT & T эквивалент этого тоже.

Чтобы задать более широкий вопрос.Что является хорошим способом найти эквиваленты AT & T (неясные?) Заявления Intel?

1 Ответ

0 голосов
/ 07 октября 2018

org в at & t синтаксис.=, поэтому:

. = 0x7c00
.globl _a
_a: ret

После компиляции nm выдает:

0000000000007c00 T _a

Но поскольку ld отличается от инструментов dos, вы можете не получить желаемого эффекта;это дальнейшее перемещение может быть применено к _a, так что в итоге получится что-то вроде:

0000000100000000 T __mh_execute_header
0000000100007fac T _a
0000000100000390 T _main
...