ROTATE es una operación lógica del microprocesador 8085. Es una instrucción de 1 byte. Esta instrucción no requiere ningún operando después del código de operación. Opera el contenido del acumulador y el resultado también se almacena en el acumulador. La instrucción Rotate se usa para rotar los bits del acumulador. Tipos de instrucción ROTATE: Hay 4 categorías de la instrucción ROTATE: Rotar acumulador a la izquierda (RLC), Rotar acumulador a la izquierda mediante acarreo (RAL), Rotar acumulador a la derecha (RRC), Rotar acumulador a la derecha a través de acarreo (RAR). Entre estas cuatro instrucciones; dos son para girar a la izquierda y dos son para girar a la derecha. Todos ellos se explican brevemente en los siguientes apartados:
- Girar el acumulador a la izquierda (RLC): en esta instrucción, cada bit se desplaza a la posición izquierda adyacente. El bit D7 se convierte en D0. La bandera de acarreo CY se modifica de acuerdo con el bit D7. Por ejemplo:-
A = D7 D6 D5 D4 D3 D2 D1 D0 //before the instruction A = 10101010; CY=0 //after 1st RLC A = 01010101; CY=1 //after 2nd RLC A = 10101010; CY=0
- Girar el acumulador a la izquierda a través del acarreo (RAL): en esta instrucción, cada bit se desplaza a la posición izquierda adyacente. El bit D7 se convierte en el bit de acarreo y el bit de acarreo se cambia a D0. La bandera de acarreo CY se modifica de acuerdo con el bit D7. Por ejemplo:
A = D7 D6 D5 D4 D3 D2 D1 D0 //before the instruction A = 10101010; CY=0 //after 1st RAL A = 01010100; CY=1 //after 2nd RAL A = 10101001; CY=0
- Girar el acumulador a la derecha (RRC): en esta instrucción, cada bit se desplaza a la posición derecha adyacente. El bit D7 se convierte en D0. La bandera de acarreo CY se modifica de acuerdo con el bit D0. Por ejemplo:
A = D7 D6 D5 D4 D3 D2 D1 D0 //before the instruction A = 10000001; CY=0 //after 1st RRC A = 11000000; CY=1 //after 2nd RRC A = 01100000; CY=0
- Girar el acumulador a la derecha a través del acarreo (RAR): en esta instrucción, cada bit se desplaza a la posición derecha adyacente. El bit D0 se convierte en el bit de acarreo y el bit de acarreo se cambia a D7. La bandera de acarreo CY se modifica de acuerdo con el bit D0. Por ejemplo:
A = D7 D6 D5 D4 D3 D2 D1 D0 //before the instruction A = 10000001; CY=0 //after 1st RAR A = 01000000; CY=1 //after 2nd RAR A = 10100000; CY=0
Aplicaciones de las instrucciones ROTATE: Las instrucciones ROTATE se utilizan principalmente en operaciones aritméticas de multiplicación y división y para la transferencia de datos en serie. Por ejemplo:
If A is 0000 1000 = 08H 1. By rotating 08H right : A = 0000 0100 = 04H This is equivalent to dividing by 2. 2. By rotating 08H left : A = 0001 0000 = 10H This is equivalent to multiplying by 2.
Sin embargo, estos procedimientos no son válidos cuando la lógica 1 se gira hacia la izquierda de D7 a D0 o viceversa. Por ejemplo, si 80H se gira hacia la izquierda, se convierte en 01H.
Publicación traducida automáticamente
Artículo escrito por SUDIPTADANDAPAT y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA