Domanda

sto cominciando a porta di un programma che è scritto in C e hanno diversi pezzi di codice scritto in assembly con le istruzioni per una macchina a 32 bit - come LJMP -. Ad una macchina 64 bit

C'è un posto / documento che ha le istruzioni, in assemblea, per una macchina a 32 bit e la sua controparte per un 64 uno? Se no, dove posso trovare un documento che elenca tutte le istruzioni per un po '32 e una macchina a 64 bit?


Come è è abbastanza evidente, Sono un novizio per la situazione. Chiariamo alcuni punti.

sto porting di un sistema operativo nei suoi primissimi giorni. E 'stato scritto con una macchina x86 in mente. Ora, voglio che venga eseguito in un x86_64.

E 'scritto in una macchina Linux con UNIX in mente. Sono quasi certo che l'autore originale sta scrivendo in un secondo macchina Intel. Sono anche su Intel, ma vorrei eseguire il sistema operativo in AMD troppo.

Il compilatore gcc è utilizzato.

Altri suggerimenti

Non hai offerto alcun fondo, o anche il tipo di CPU, ma ho intenzione di suggerire thay forse si dovrebbe prendere questa porta a 64-bit come un'opportunità di riconsiderare avendo linguaggio assembly utilizzato. Mentre sicuramente ha il suo posto, mi sento di raccomandare ricodifica la routine in C ++ e benchmarking di uscita ottimizzato del compilatore per vedere se è davvero più lentamente. In molti casi, non sarà.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top