[Resolvido] Ajuda com Assembly + C++

eu estava tentando criar um código em C++ que pegasse um label de um código em Assembly… no código em C++ eu passo como parâmetro 32 no método teste, que está escrito num programa em assembly que deveria somar mais 1 no número passado por parâmetro e retornar o valor da soma, porém ele não retorna a soma, retorna apenas o 1. Veja os códigos:

C++
#include
using namespace std;

    extern "C" int teste(int num);

    int main(void){
    cout << teste(32) << endl;
    return 0;
}

Assembly:
global teste
section .text

teste:
    mov eax, edi
    add eax, 1
    ret

alguém pode pe ajudar ?

Tentou usar o “addi eax, 1”?

na hora de compilar dá erro na instrução “addi”

eu acho que isso é coisa de meu computador, pois executei em outra máquina e deu certo

Deu certo? Boa!

sim deu certo, e obrigado pela ajuda amigo

1 curtida