Объявление функции с несколькими переменными в сборке. (Вопросы Генеральной Ассамблеи) - PullRequest
0 голосов
/ 05 ноября 2019

Я новичок в сборке, поэтому, если некоторые из них кажутся базовыми, пожалуйста, потерпите меня. Я осмотрел много мест, но не нашел супер относительных ответов на мои вопросы. Я пишу некоторый ассемблерный код, и мне нужно написать функцию, которая принимает несколько переменных и объявляет одну локальную переменную. (Код ниже) Я также хотел бы знать, где эти переменные размещены и как получить к ним доступ в функции. У меня большой опыт работы с языками (C, C ++, Java, Python, Swift), однако сборка сильно отличается от всего, что я изучил.

Я нашел несколько простых источников, в которых говорится, что мне нужно использовать такие функции, как"function (int, int, int, int):" Однако, глядя на код скомпилированной сборки из gcc -SI, мы не видим функций, объявленных так. Ниже приведен пример кода, который я хотел бы эмулировать:

int func (int w, int x, int y, int z) {

int a = 89;

вернуть;

}

Очевидно, что этот C-код совершенно бесполезен и не использует ни одну из переданных переменных. Я просто использовал это в качестве примера. Однако любая информация о том, как передаются переменные, как объявляются функции и как к ним обращаться (к переменным), была бы весьма полезной. Я понимаю, где этот код будет размещен в терминах разделов, но хотел бы получить некоторую информацию по вопросам, изложенным выше.

...