It is shift to left for 1 bite of z.
For example your z is 18, that is (if int is 2 bytes) 0000 0000 0001 0010 bynary, when you shift it, z becomes 0000 0000 0000 1001 whitch is 9. It actualy work as didide by two. If you have negative falues for example -18, in second complement it is
0000 0000 0001 0010
1111 1111 1110 1101//first complement
1111 1111 1110 1110//second complement
and when you shift it, the sign byte is puted on the top
1111 1111 1111 0111
0000 0000 0000 1000//first complement
0000 0000 0000 1001//second complement
witch is -9.
With this shift to right is easy, search web for shift to left, it is more complicated in case of signed values