Error de sintaxis en NASM de 32 bits

Iniciado por UsuarioZ, 2 Noviembre 2020, 21:14 PM

0 Miembros y 1 Visitante están viendo este tema.

UsuarioZ

Ya esta solucionado, la solución era sacar el "\" en esa linea, era un error de tipeo del libro que estaba leyendo de ensamblador.
-------------------------------
Hola, estaba intentando ensamblar este código y me tira este error de sintaxis en la linea 29, ¿Qué puede ser?

Citarsub1.asm:29: error: expression syntax error.

Para ensamblar estoy usando este comando en Windows para el archivo sub1.asm:
Citarnasm -f win32 sub1.asm

Código (asm) [Seleccionar]

%include "asm_io.inc"

segment .data
 
 prompt1 db  "Ingrese un numero: ", 0
 prompt2 db  "Ingrese otro numero: ", 0
 outmsg1 db  "Ud. ha ingresado ", 0
 outmsg2 db  " y ",0
 outmsg3 db  ", la suma de ellos es ", 0
 
segment .bss
 input1 resd 1
 input2 resd 1
 
segment .text
 global _asm_main

_asm_main:
 enter 0, 0
 pusha
 mov eax, prompt1
 call print_string
 mov ebx, input1
 mov ecx, ret1
 jmp short get_int

ret1:
 mov eax, prompt2
 mov ecx, \$ + 7 ;<--- Acá me marca el error.
 jmp short get_int
 
 mov eax, [input1]
 add eax, [input2]
 mov ebx, eax
 
 mov eax, outmsg1
 call    print_string
 mov eax, [input1]
 call    print_int
 mov eax, outmsg2
 call print_string
 mov eax, [input2]
 call print_int
 mov eax, outmsg3
 call print_string
 mov eax, ebx
 call print_int
 call print_nl
 
 popa
 mov eax, 0
 leave
 ret

 get_int:
   call read_int
   mov [ebx], eax
   jmp ecx


----------------