I've had a quick look at it and basically the op-amp is acting has an amplifier, the voltage drop across the resistor is only milli-volts and the pic will not see this hence the op-amp.

example: say it was in a power supply and it had a load of 5amps then the voltage drop across the resistor was 120MV then op-amp would say have a gain of say 10 so you times the .120Mv by 10 and this would give you an output voltage of 1.2V you then scale it in your software so your display reads 5amps.

the other part for reading the voltage is not the best way the zener diode can cause problems with readings. The best way is similar to other part of the op-amp but this time has divider, so if you put 25 volts in you divide it by 10 and the output to the PIC is 2.5V same thing again you scale it to read 25 volts on your display.

The voltage reading I gave above is only has a sample I have not gone that far into detail working out the calculations but it should give you a rough idea how it works

You can do a search on op-amps set up has amplifier or divider, the pots on there are used has a calibration part or you can use it so that the output voltage never exceeds 5 volts

Hope that helps