Операции сдвига заключается в одновременном смещении цифр числа на фиксированное число разрядов влево или вправо.
Логический сдвиг – смещение всей числовой последовательности (слова ) включая разряд знака, при котором в освободившиеся при сдвиге k разрядов записываются нули.
k – константа сдвига.
Циклический сдвиг - смещение всей числовой последовательности (слова ), при котором, цифры выходящие за пределы разрядной сетки, снова вводятся в освобождающиеся позиции слова.
Арифметический сдвиг – сдвиг всей числовой последовательности (слова) без изменения позиции знака числа. Арифметический сдвиг может быть простой и модифицированный.
Простой сдвиг влево:
- для прямого кода – сдвигается только цифровая часть числа, освобождающиеся младшие разряды заполняются нулями.Допустимая константа сдвига kд определяется числом подряд стоящих нулей после точки.
- для дополнительного и обратного сдвигается вся числовая последовательность освобождающаяся часть для дополнительного кода заполняется нулями, для обратного заполняется выдвигающимися единицами(циклический сдвиг влево)
Допустимая величина сдвига определяется числом подряд стоящих единиц после запятой (точки ).
Простой сдвиг вправо:
- для прямого кода – сдвигается только цифровая часть числа;
- для дополнительного и обратного сдвигается вся числовая последовательность,
цифра знакового разряда перемещается в старший цифровой разряд и восстанавливается в знаковом разряде. Разряды выходящие за правую границу сетки теряются.
Модифицированный сдвиг используется для чисел с плавающей точкой. Величина исходного числа после сдвига не меняется, наряду со смещением мантиссы числа одновременно изменяется и его порядок, так чтобы величина его осталось неизменной.