Невозможно скомпилировать ассемблерный код, написанный под Linux, в Visual Studio с помощью MASM.Linux

Ответить Пред. темаСлед. тема
Anonymous
 Невозможно скомпилировать ассемблерный код, написанный под Linux, в Visual Studio с помощью MASM.

Сообщение Anonymous »

У меня есть несколько ранее работающих файлов сборки .s, которые я написал несколько лет назад в Linux, но оказалось, что эти файлы невозможно скомпилировать с помощью Visual Studio MASM и онлайн-ассемблеров. Я не помню, какой компилятор я использовал в Linux. Можно ли либо получить компилятор, необходимый для таких файлов, и использовать его в Visual Studio, либо каким-либо образом исправить файлы, чтобы сделать их совместимыми с MASM? Вот пример моего ассемблерного кода:

Код: Выделить всё

_EXIT = 1
_PRINTF = 127

.SECT .TEXT
MOV    CX, end - arr
SHR    CX, 1
PUSH   end - 2
PUSH   CX

CALL    PRINT_ARR
ADD     SP, 4

PUSH   0
PUSH    _EXIT
SYS

PRINT_ARR:
PUSH    BP
MOV     BP, SP

MOV     SI, 6(BP)
MOV     CX, 4(BP)

L1:
PUSH    (SI)
PUSH    space
PUSH    _PRINTF
SYS
ADD     SP, 6
SUB     SI, 2
LOOP L1

PUSH    enter
PUSH    _PRINTF
SYS

MOV     SP, BP
POP     BP
RET

.SECT .DATA
arr:    .WORD   1, 2, 3, 4, 5
end:    .BYTE   0
space:  .ASCIZ  "%d "
enter:  .ASCIZ  "\n"

.SECT .BSS
Я попробовал изменить расширение файла с .s на .asm и скомпилировать его с помощью Visual Studio 2022 с включенной поддержкой MASM, однако IDE не компилирует его и вместо этого отправляет множество ошибок. Я также пробовал запустить этот код в нескольких онлайн-ассемблерах, но это тоже не сработало.

Подробнее здесь: https://stackoverflow.com/questions/791 ... -with-masm
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Linux»