Неправильная комбинация кода операции и ошибки операндов
Я пытаюсь написать программу, которая берет двоичный ввод из текстового файла и отправляет его в качестве параметра в функцию сборки. Эта функция сборки должна выводить этот двоичный ввод на экран. Входные данные отправляются из кода c в код сборки по его адресу.
Когда я пытаюсь собрать свой ASM-файл, я получаю сообщение об ошибке «Недопустимая комбинация кода операции и операндов» наmov msg, [esp+8]
линия. Я хочу скопировать мойchar
аргумент из стека к моей статической переменной. Почему это не действительная инструкция?
Полный код:
segment .data
len equ 31
segment .bss
msg resb 0
segment .text
global sequence_generator
sequence_generator:
push ebp
mov ebp, esp
mov msg, [esp+8]
mov eax,4
mov ebx,1
mov ecx,msg
mov edx,len
int 80h
pop ebp
ret