Its a TM, and its Shadowball
You get it at the olivine city pokmon gym
HM 02 Fly is with the woman outside Cianwood City Gym.
Beat the 5th gymleader and leave the gym
Fly in CianwoodThe HM Fly is given to you by the lady (who is the gym leader's wife) outside Cianwood Gym, but only after you've beaten the gym leader. She will comment on how her husband is getting fat! ;)
In Pokemon series, you generally find HMs soon before or right after you beat gym leaders.
I know that in soul silver, after you beat all 16 gym leaders the professor gives it to you.
You have to have the HM cut. You earn the ability to use HMs when you defeat a gym leader, but the gym leader does not give you the HM. You find them seperately somewhere in the game. Hope this helps!
I think you find it on the way to the 8:th gym in the ice cave :)
Cut is an HM. It can only be learned after you beat Bugsy in the Azalea City Gym.
Beat the Cianwood Gym leader, Chuck. Then a woman will apper when you leave the gym and give you the HM.
Fourth gym, in Ecruteak City. To get the HM for it, you must beat the dancing girls inside the dance hall in the same city..
HM 02 in Heart Gold and Soul Silver is Fly .But you get it at the end of the 7th or 8th gym.