istruzione sllq (Shift Left Long with MQ)

Finalità

Ruota il contenuto di un registro di uso generale a sinistra del numero di bit specificato in un registro di uso generale, unisce i dati ruotati o una parola di zeri con il contenuto del registro di MQ e inserisce il risultato in un terzo registro di uso generale.

Nota: l'istruzione sliq è supportata solo nell'architettura della famiglia POWER ®.

Sintassi

bit Valore
0 - 5 31
6 - 10 RS
11 - 15 RA
16 - 20 RB
21 - 30 216
31 rc
Famiglia POWER ® 
sllq RA, RS, RB
sllq. RA, RS, RB

Descrizione

L'istruzione sllq ruota il contenuto del GPR (source general - purpose register) RS a sinistra di N bit, dove N è la quantità di spostamento specificata in bit 27-31 di RBGPR. L'unione dipende dal valore del bit 26 nel GPR RB.

Considerare quanto segue quando si utilizzano le istruzioni sllq :

  • Se il bit 26 di GPR RB è 0, viene generata una maschera di N zeri seguiti da 32 meno N . La parola ruotata viene quindi unita al contenuto di MQ Register sotto il controllo di questa maschera generata.
  • Se il bit 26 di RB GPR è 1, viene generata una maschera di N uno seguita da 32 meno N zeri. Una parola di zero viene quindi unita al contenuto di MQ Register sotto il controllo di questa maschera generata.

La parola unita risultante viene memorizzata in GPR RA. Il registro di MQ non viene modificato.

L'istruzione sllq ha due formati di sintassi. Ogni modulo di sintassi ha un effetto diverso sul campo di registrazione condizione 0.

Elemento Descrizione
Modulo sintassi Overflow Eccezione (OE) Punto fisso Registrazione eccezione Record bit (Rc) Condizione Registra campo 0
sllq Nessuno Nessuno 0 Nessuno
sllq. Nessuno Nessuno 1 LT,GT, EQ, SO

Le due forme di sintassi dell'istruzione sllq non influenzano mai il registro delle eccezioni a punto fisso. Se il modulo della sintassi imposta il bit Record (Rc) su 1, l'istruzione influisce sui bit Minore di (LT) zero, Maggiore di (GT) zero, Uguale a (EQ) zero e Overflow di riepilogo (SO) nel campo del registro condizioni 0.

Parametri

Elemento Descrizione
RA Specifica il registro di destinazione generico in cui è memorizzato il risultato dell'operazione.
RS Specifica il registro di origine generico per l'operazione.
RB Specifica il registro di origine generico per l'operazione.

Esempi:

  1. Il seguente codice ruota il contenuto di GPR 4 a sinistra di 4 bit, unisce una parola di zero con il contenuto di MQ Register sotto una maschera e inserisce il risultato unito in GPR 6:
    
    # Assume GPR 4 contains 0x9000 3000.
    # Assume GPR 5 contains 0x0000 0024.
    # Assume MQ Register contains 0xABCD EFAB.
    sllq 6,4,5
    # GPR 6 now contains 0xABCD EFA0.
    # The MQ Register remains unchanged.
    
  2. Il seguente codice ruota il contenuto del GPR 4 a sinistra di 4 bit, unisce i dati ruotati con il contenuto del Registro MQ sotto una maschera, posiziona il risultato unito nel GPR 6 e imposta il campo Registro condizioni 0 per riflettere il risultato dell'operazione:
    
    # Assume GPR 4 contains 0xB004 3000.
    # Assume GPR 5 contains 0x0000 0004.
    # Assume MQ Register contains 0xFFFF FFFF.
    sllq. 6,4,5
    # GPR 6 now contains 0x0043 000F.
    # The MQ Register remains unchanged.
    # Condition Register Field 0 now contains 0x4.