If I understand well, you are using a computer that have "broken" bitwise operators? That is odd but maybe you can try this?
float leftShit8(int value)
{
return pow(2, 8) * value;
}
This code simply do a power of 8 on the base that is 2. After that, you multiply by your value. It does the same thing as your code but I'm not sure why anyone would use this instead of bitwise since bitwise a much more faster I think.
You could make this more general and useful like this
float leftShit(int value, int numberOfShift)
{
return pow(2, numberOfShift) * value;
}
EDIT: For the edited question about division, the is only a sligh change. Thanks to T.C for this (answer below), I include it in my answer to make it more complete
float rightShift(int value, int numberOfShift)
{
return value/pow(2, numberOfShift);
}
Anyway, I hope it will help.