I have an image with value ranging from -1 to +1.
I want to convert this into 0-255 (8bit).
How can this be done using ArcGIS for Desktop or ERDAS IMAGINE?
Using ArcGis Raster Calculator multiply by 127 and then add 128. This will give you a value between 0 and 255 which will be floating point then use Int to convert to an integer and Copy Raster specifying 8 bit unsigned as the output pixel_type.
Another way to do this is to do a nice stretch in ArcMap and then right click on the layer, select data::export data then check the box Use Renderer which will force the data into 8 bit using the colour scheme you have applied (and even optionally RGB).