Código
#include <stdio.h> int main() { return 0; }
y creo que imposiblemente mas exactamente el mismo programa, pero en ensamblador:
Código
.686 .model FLAT includelib \masm32\lib\msvcrt.lib printf proto C, :dword getchar proto C exit proto C, :dword .data? dd ? .data __0 db "Im the output.", 0 .code start: call main invoke exit, 0 main proc invoke printf, offset __0 invoke getchar ret main endp end start
Producen una salida con una diferencia de ciento veintinueve mil seiscientos cuarenta y dos (129 642) bytes ¡Eso seria un 85.40% mayor, para el mismo algoritmo! ¡Que locura!
¿Por que existe esta diferencia tan abismal?
¿Es la diferencia siempre de este tamaño en terminos porcentuales, o la diferencia existe hasta cierto punto?
Saludos.