INSTRUCCIONES DE DESPL!MIENTO " ROTCI#N INSTRUCCIONES DE DESPL!MIENTO O CORRIMIENTO DE $ITS% Las instrucciones de corrimiento, que son parte de la capacidad lgica de la computadora, pueden realizar las siguientes acciones:
1. Hacer referencia a un registro o direccin de memoria. 2. Recorre bits a la izquierda o a la derecha. 3. Recorre hasta bits en un b!te, 1" bits en una palabra ! 32 bits en una palabra doble. #. $orrimiento lgico %sin signo& o aritm'tico %con signo&. (l segundo operando contiene el )alor del corrimiento, que es una constante %un )alor inmediato& o una referencia al registro $L. *ara los procesadores +,+", la constante inmediata solo puede ser 1- un )alor de corrimiento ma!or que 1 debe estar contenido en el registro $L. *rocesadores posteriores permiten constantes de corrimiento inmediato hasta 31. (l formato general para el corrimiento es . /etiqueta:0 . $orrim. . 1registro,memoria2, 1$L,inmediato2 . DESPL!MIENTO O CORRIMIENTO DE $ITS &CI L DEREC&% Los corrimientos hacia la derecha %3HR ! 34R& mue)en los bits hacia la derecha en el registro designado. (l bit recorrido fuera del registro mete la bandera de acarreo. Las instrucciones de corrimiento a la derecha estipulan datos lgicos %sin signo& o aritm'ticos %con signo&:
Las siguientes instrucciones relacionadas ilustran 3HR ! datos con signo: INSTRUCCION COMENTRIO 567 $L, +3 567 4L, 1+11+1118 - 4L 9 1+11+111 3HR 4L, +1 - 4L 9 +1+11+11 :n corrimiento a la derecha 3HR 4L, $L - 4L 9 ++++1+11 ;res corrimientos adicionales a la derecha
(l primer 3HR desplaza el contenido de 4L un bit hacia la derecha. (l bit de mas a la derecha es en)iado a la bandera de acarreo, ! el bit de mas a la izquierda se llena con un cero. (l segundo 3HR desplaza tres bits m<s a 4L. La bandera de acarreo contiene de manera sucesi)a 1, 1 ! +- adem<s, tres bits + son colocados a la izquierda del 4L. SR se difiere de 3HR en un punto importante: SR utili'a el (it de si)no para llenar el bit )acante de m<s a la izquierda. =e esta manera, los )alores positi)os ! negati)os retienen sus signos. Las siguientes instrucciones relacionadas ilustran 34R ! datos con signo en los que el signo es un bit 1:
(n especial, los corrimientos a la derecha son >tiles para %di)idir entre 2& obtener mitades de )alores ! son mucho m<s r<pidas que utilizar una operacin de di)isin. 4l terminar una operacin de corrimiento, puede utilizar la instruccin ?$ %3alta si ha! acarreo& para e@aminar el bit desplazado a la bandera de acarreo. Microprocesadores DESPL!MIENTO O CORRIMIENTO DE $ITS L I!*UIERD% Los corrimientos hacia la izquierda %3HL ! 34L& mue)en los bits a la izquierda, en el registro designado. 3HL ! 34L son id'nticos en su operacin. (l bit desplazado fuera del registro ingresa a la bandera de acarreo. Las instrucciones de corrimiento hacia la izquierda estipulan datos lgicos %sin signo& ! aritm'ticos %con signo&:
3HL: =esplazamiento lgico a la izquierda 34L: =esplazamiento aritm'tico a la izquierda Las siguientes instrucciones relacionadas ilustran 3HL para datos sin signo:
(l primer 3HL desplaza el contenido de 4L un bit hacia la izquierda. (l bit de m<s a la izquierda ahora se encuentra en la bandera de acarreo, ! el >ltimo bit de la derecha del 4L se llena con cero. (l segundo 3HL desplaza tres bits m<s a 4L. La bandera de acarreo contiene en forma sucesi)a +, 1 ! 1, ! se llena con tres ceros a la derecha del 4L. Los corrimientos a la izquierda llenan con cero el bit de mas a la derecha. $omo resultado de esto, 3HL ! 34L don id'nticos. Los corrimientos a la izquierda en especial son >tiles para duplicar )alores ! son mucho m<s r<pidos que usar una operacin de multiplicacin. 4l terminar una operacin de corrimiento, puede utilizar la instruccin ?$ %3alta si ha! acarreo& para e@aminar el bit que ingreso a la bandera de acarreo.
ROTCION DE $ITS +DESPL!MIENTO CIRCULR, Las instrucciones de rotacin, que son parte de la capacidad lgica de la computadora, pueden realizar las siguientes acciones:
1. Hacer referencia a un b!te o a una palabra. 2. Hacer referencia a un registro o a memoria. 3. Realizar rotacin a la derecha o a la izquierda. (l bit que es desplazado fuera llena el espacio )acante en la memoria o registro ! tambi'n se copia en la bandera de acarreo. #. Realizar rotacin hasta bits en un b!te, 1" bits en una palabra ! 32 bits en una palabra doble. A. Realizar rotacin lgica %sin signo& o aritm'tica %con signo&. (l segundo operando contiene un )alor de rotacin, el cual es una constante %un )alor inmediato& o una referencia al registro $L. *ara los procesadores +,+", la constante inmediata solo puede ser 1- un )alor de rotacin ma!or que 1 debe estar contenido en el registro $L. *rocesadores posteriores permiten constantes inmediatas hasta el 31. (l formato general para la rotacin es:
ROTCI#N L DEREC& DE $ITS Las rotaciones a la derecha %R6R ! R$R& desplazan a la derecha los bits en el registro designado. Las instrucciones de rotacin a la derecha estipulan datos lgicos %sin signo& o aritm'ticos %con signo&: Las siguientes instrucciones relacionadas ilustran R6R: INSTRUCCION COMENTRIO 567 $L, +3 567 8H, 1+11+1118 - 8H 9 1+11+111 R6R 8H, +1 - 8H 9 11+11+11 :na rotacin a la derecha R6R 8H, $L - 8H 9 ++++1+11 ;res rotaciones a la derecha (l primer R6R desplaza el bit de m<s a la derecha del 8H a la posicin )acante de m<s a la izquierda. La segunda ! tercera operaciones R6R realizan la rotacin de los tres bits de mas a la derecha. R$R pro)oca que la bandera de acarreo participe en la rotacin. $ada bit que se desplaza fuera de la derecha se mue)e al $B ! el bit del $B se mue)e a la posicin )acante de la izquierda.
ROTCI#N L I!*UIERD DE $ITS Las rotaciones a la izquierda %R6L ! R$L& desplazan a la izquierda los bits del registro designado. Las instrucciones de rotacin a la izquierda estipulan datos lgicos %sin signo& ! aritm'ticos %con signo&:
Las siguientes instrucciones relacionadas ilustran R6L: INSTRUCCION COMENTRIO 567 $L, +3 567 8L, 1+11+1118 - 8L 9 1+11+111 3HR 8L, +1 - 8L 9 11+11+11 :na rotacin a la izquierda 3HR 8L, $L - 8L 9 ++++1+11 ;res rotaciones a la izquierda
(l primer R6L desplaza el bit de mas a la izquierda del 8L a la posicin )acante de mas a la derecha. La segunda ! tercera operaciones R6L realizan la rotacin de los tres bits de mas a la izquierda. =e manera similar a R$R, R$L tambi'n pro)oca que la bandera de acarreo participe en la rotacin. $ada bit que se desplaza fuera por la izquierda se mue)e al $B, ! el bit del $B se mue)e a la posicin )acante de la derecha. *uede usar la instruccin ?$ %salta si ha! acarreo& para comprobar el bit rotado hacia la $B en el e@tremo de una operacin de rotacin.