ac current sensing using microcontroller and accordingly perform the operations
You have a lot many options and choices to make here. Start by answering the following questions :


What's the range of AC current you plan to measure?
Do you need a true RMS sensing or would a rectified average be good enough? The later is good enough if you are sure the wave shape &amp; frequency of the AC current is always going to be the same. In that case you could use a mathematical average to rms conversion after average sensing.
Do you need isolation between the current you are sensing and the microcontroller ? Most probably yes!
Hall effect sensor is a good solution, that typically provides an output voltage proportional to the instantaneous input current. It also provides isolation. But then you would need to sense the sensor's output voltage in uC/ADC and still perform RMS/average calculations. Can your uC handle the sampling and calculation overheads?


Once you have an answer to the above, you need to design the circuit block that would somehow convert the current to be sensed to a proportional voltage within the ADC range of the uC. Make sure that this block handles positive and negative currents both, while still generating only positive output voltage to be fed to the ADC.

After this, in uC software, you need to perform an RMS calcualtion as follows:


Choose a sampling frequency. For example, if the AC current is 50Hz,
you can choose a sampling frequency like 20kHz so that you have 400 
samples per sine cycle. 
Next, have some sort of zero crossing detection circuitry in hardware. This should help you detect the start and end of a sine cycle. 
For all the samples within a sine cycle, performs the sample->square->accumulate operation.
After every sine cycle (i.e. 400 samples in my example above), perform mean &amp; square root operation.


And that's how you calculate AC RMS current!