Разница между арифметическим и логическим сдвигом в архитектуре микропроцессора заключается в работе со знаковым битом. 2
Логический сдвиг выполняется без учёта знакового бита. 3 Например, при логическом сдвиге вправо в старшем разряде кода операнда устанавливается нуль, а младший разряд записывается в качестве флага переноса в регистр состояния процессора. 1
Арифметический сдвиг предназначен для чисел со знаком. 3 Он не изменяет значение старшего бита и сохраняет знак числа. 35 Например, при арифметическом сдвиге вправо значение старшего разряда сохраняется прежним (нулем или единицей), младший разряд также записывается в качестве флага переноса. 1
Таким образом, логический сдвиг работает с беззнаковыми числами, а арифметический — со знаковыми, при этом не меняя их знак. 2