потому что это
signed bitwise shift. Это значит, что принимает во внимание знак и работает с int а не uint. Вот ток unsigned left shift не существует, есть только правый...
Я думаю, что в вашей ситуации это поможет:

Код:
trace(uint(0x7a <<24));
trace(uint(0x8a <<24));
trace(uint(0x9a <<24));