Jaya Pradha.
B Roll No : 11BCM025
Introduction
Shift Microoperations :
Shift microoperations are used for serial
transfer of data Three types of shift microoperation : Logical, Circular, and Arithmetic
Shift micro operations
Symbolic designation R shl R R shr R R cil R R cir R R ashl R R ashr R Description Shift-left register R Shift-right register R Circular shift-left register R Circular shift-right register R Arithmetic shift-left R Arithmetic shift-right R
Logical Shift
A logical shift transfers 0 through the serial input The bit transferred to the end position through the serial input is assumed to be 0 during a logical shift (Zero inserted)
Circular Shift
The circular shift circulates the bits of the register around the two ends without loss of information
Arithmetic Shift
An arithmetic shift shifts a signed binary number to the left or right An arithmetic shift-left multiplies a signed binary number by 2 An arithmetic shift-right divides the number by 2 In arithmetic shifts the sign bit receives a special treatment
Logical Shift Example
1. Logical shift: Transfers 0 through the serial input. R1 shl R1 Logical shift-left R2 shr R2 Logical shift-right (Example) Logical shift-left 10100011 01000110 (Example) Logical shift-right 10100011 01010001
Circular Shift Example
Circular shift-left
Circular shift-right
R1 cil R1 R 2 cir R 2
(Example) Circular shift-left 10100011 is shifted to 01000111
(Example) Circular shift-right
10100011 is shifted to 11010001
Arithmetic Shift Right
Arithmetic right-shift: Rn-1 remains unchanged; Rn-2 receives Rn-1, Rn-3 receives Rn-2, so on. For a negative number, 1 is shifted from the sign bit to the right. A negative number is represented by the 2s complement. The sign bit remained unchanged.
Arithmetic Shift Right
Arithmetic Shift Right :
Example 1
0100 (4) 0010 (2)
Example 2
1010 (-6) 1101 (-3)
Arithmetic Shift Left
The operation is same with Logic shift-left The only difference is you need to check overflow problem (Check BEFORE the shift)
Carry out Sign bit
R2 ashl R2
LSB
Rn-1
Rn-2
0 insert
Vs=1 : Overflow Vs=0 : use sign bit
Arithmetic Shift Left
Arithmetic Shift Left :
Example 1
0010 (2) 0100 (4)
Example 2
1110 (-2) 1100 (-4)
Arithmetic Shift Left
Arithmetic Shift Left :
Example 3
0100 (4) 1000 (overflow)
Example 4
1010 (-6) 0100 (overflow)
Example
example: 011011 SHL SHR CiL CiR ASHL ASHR 110110 001101 110110 101101 Overflow 001101
Flash Overview
Thank You