Whats >>>, ^ keywords for?

i was trying to understand the code someone wrote and there were

>>> and ^ which i couldnt understand

c = uint(uint(0xedb88320) ^ uint(c >>> 1));

can someone please teach me what they are for?

also there were ‘&’ keywords too i dont know what that is.

if (c&1)
trace (“hello”);