Я пытаюсь преобразовать некоторый код c в ассемблер, и мне нужна помощь.
char encode(char plain){
__asm{
mov eax, plain
add eax, 2
ret
}
//C code
/*
char code;
code = plain+2;
return code;*/
}
Первая проблема заключается в том, что visual studio жалуется, что размер регистра не совпадает, т. Е. Eax слишком мал / велик для char. У меня сложилось впечатление, что они оба были DWORD. Кроме того, если я оставлю переменную в eax и ret в сборке, она на самом деле вернет эту переменную, верно?