You can't unless you trade a Pokemon from Pokemon Ruby, Sapphire or Emerald and get a Pokemon that knows Dive. The HM Dive is not necessary in Pokemon FireRed and is thus not avaliable. However, a Pokemon that knows Dive can be traded from Pokemon Sapphire, Ruby or Emerald version to Firered.
I can't remember much, but I think you have to get it from Wallace or Juan.
Dive is not available in FireRed.
The short answer is no. There is no Dive, HM 08, in Pokemon FireRed.
You cannot get dive in FireRed, but you can get it in Emerald, Ruby or Sapphire.
Since dive is not a HM in firered you will have to trade a Pokemon to a friend that has ruby, sapphire or emerald then using that game use the HM Dive to teach the move Dive to that Pokemon trade it back so firered can have that Pokemon again it will still have Dive however you cannot use it to dive underwater.
Dive is not an HM in firered but if you trade a Pokemon that can learn dive to ruby, sapphire or emerald then teach it dive then trade it back it will still have dive however you cannot use it outside of battle.
Dive is not an HM in firered if you want a Pokemon to learn dive trade it to ruby, sapphire or emerald then take it back after teaching it the move.
you can not catch him
You can catch a Ho-Oh at Navel Rock in Pokemon FireRed.
You can catch Moltres at Mt. Ember Peak in FireRed.