I have a micro-controller that i programmed few years back. However, i have lost the program code due to hdd crash. Is there a way to extract the program code from my micro-controller?
It depends most UC vendors offer protection options for code. If this option is set, you will not be able to read out the firmware. But else you should be able to download the firmware. For downloading the code you need a programmer device. Which UC do you have?
Assuming that you can download the code from the chip, it will not have variable names, comments, or labels for the gotos and calls. This would be fine for making other copies of the chip but it would probably be easier to recode it than try to figure out how to modify the code, unless the changes you need are trivial.