Následující odpověď není endianness agnostická a moje formulace je založena na formátu little endian...
Můžete posouvat bity jednoduše násobením (posun doleva) nebo dělením (posun doprava) argumentem 2 na mocninu x, kde x je počet bitů, které se mají posunout. pokud například potřebuji posunout bajt nižšího řádu čísla (255:11111111) o 16 bitů doleva, provedl bych následující operaci:
select 255 * power(2,16) from dual;
-- the result will be (16711680:111111110000000000000000)
naopak, pokud chci posunout hodnotu 16711680 o 16 bitů doprava, provedl bych následující:
select 16711680 / power(2,16) from dual;
-- the result will be (255:11111111)