Pregunta

Estoy usando VS2008 C++ (sin bibliotecas).Este es mi código:

    __asm
    {
    jmp start
msg:
          db "http://www.stackoverflow.com"
dtfld:
          db "00/00/0000"
tmfld:
          db "00:00:00"
start:

Recibo los siguientes errores:

Error 1 error C2400:error de sintaxis del ensamblador en línea en 'código de operación';encontrado 'token incorrecto'
Error 2 error C2400:error de sintaxis del ensamblador en línea en 'código de operación';encontrado 'token incorrecto'
Error 3 error C2400:error de sintaxis del ensamblador en línea en 'código de operación';encontrado 'token incorrecto'

¿Por qué es esto?

¿Fue útil?

Solución

Cita de Directivas de datos y operadores en ensamblaje en línea (Microsoft):

Aunque un bloque __asm ​​puede hacer referencia a tipos de datos y objetos C o C++, no puede definir objetos de datos con directivas u operadores MASM.En concreto, no puede utilizar las directivas de definición DB, DW, DD, DQ, DT y DF, ni los operadores DUP o THIS.Las estructuras y registros de MASM tampoco están disponibles.El ensamblador en línea no acepta las directivas STRUC, RECORD, WIDTH o MASK.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top