Domanda

Cosa significa l'istruzione PowerPC cmplw e come retromarlo qui è la linea.

cmplw     cr6, r31, r10   -----------        r31 = 80 and r10 = 0
.

Per favore dammi un tut veloce su come invertire questa istruzione :)

È stato utile?

Soluzione

I contenuti del registro R31 e R10 sono confrontati per determinare se sono maggiori di, inferiori a, uguali o se vi è una condizione di overflow sommaria e il risultato è inserito nel campo Condizione register (CR) 6. Il I bit del campo CR sono impostati secondo 3.3.9 Punto fisso ISTRUZIONI CONFORMERS Nel libro ISA utente PowerPC 1. Il campo CR in questo esempio è 6 e tali campi sono numerati in modo tale che il campo 0 sia bit 0-3, il campo 1 è 4 -7, e così via. Quindi CR Field 6 è bit 24-27 del registro delle condizioni, ed è qui che troverai il risultato di maggiori anni, meno di, ecc.

Un campo CR viene utilizzato più comunemente da un'istruzione di ramo (come BNE, BNEQ, BLT, ecc.) Per prendere una decisione di flusso. Senza le prossime istruzioni relative che prendono una decisione basata sul campo CR, è difficile scrivere il codice in C per illustrare ciò che questa istruzione fa. Direi la migliore stima del codice C per questo è qualcosa come "R31== R10", "R31>= R10", "R31

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