¿Cuál es la diferencia entre el ensamblaje 80x86 y el ensamblaje win32?
Cuando los sistemas operativos modernos se refieren a x86, significa: "se pueden ejecutar nuevas CPU superiores a 80386" a menos que se especifique lo contrario. Sin embargo, el lenguaje ensamblador 80x86 generalmente mencionado en los libros introductorios nacionales es en realidad la programación en "modo real" de 8086 en DOS. Por supuesto, esta es la base. No puedes decir que no aprenderás si te quedas atrás.
El lenguaje ensamblador 80x86 y win32 finalmente genera código que es ejecutable por encima de 80386 (sin sentido). Sin embargo, la programación de Windows tiene sus propias características y reglas especiales. Por ejemplo, la función de devolución de llamada no se ejecuta secuencialmente como el programa DOS. El programa permite que el sistema decida cuándo ejecutar; otro ejemplo son los recursos, que a menudo pueden usar cosas proporcionadas por el sistema u otras bibliotecas... Estos están determinados por el. Particularidad del sistema Windows. Por lo tanto, el formato del texto del "ensamblado win32" es muy diferente al del libro introductorio.
El lenguaje ensamblador, al igual que otros lenguajes de alto nivel, debe ser compilado por un compilador para generar código de ejecución. Si utiliza un compilador diferente, el formato del texto es ligeramente diferente.