Pregunta

estoy empezando a puerto un programa que está escrito en C y tienen varias piezas de código escrito en el montaje con instrucciones para una máquina de 32 bits - como LJMP -. A una máquina de 64 bits

¿Hay un lugar / documento que tiene las instrucciones, en el montaje, para una máquina de 32 bits y su contraparte de 64 uno? Si no es así, ¿dónde puedo encontrar un documento que enumera todas las instrucciones para un bit de 32 y una máquina de 64 bits?


Como es es bastante obvio, yo soy muy novato para la situación. Vamos a aclarar algunos puntos.

Estoy portar un sistema operativo en sus primeros días. Fue escrito con una máquina x86 en mente. Ahora, quiero que se ejecute en una x86_64.

Está escrito en una máquina Linux con UNIX en mente. Estoy casi seguro de que el autor original está escribiendo en una máquina Intel. También estoy en Intel, pero me gustaría ejecutar el SO en AMD también.

El compilador utilizado es gcc.

¿Fue útil?

Solución

Otros consejos

No ha ofrecido ningún fondo, o incluso el tipo de CPU, pero voy a sugerir paseíto tal vez debería tomar este puerto de 64 bits como una oportunidad de reconsiderar tener lenguaje ensamblador utilizado. Aunque ciertamente tiene su lugar, yo recomendaría la recodificación de la rutina en C ++ y la evaluación comparativa de salida del compilador optimizado para ver si es realmente más lento. En muchos casos, no será.

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