I understand the ship misidentified the aircraft as an Iranian fighter jet, but why would the US military shoot down an Iranian fighter jet in the first place?
So, the Iran Air tragedy is rooted in the larger Iran/Iraq conflict. The US, at different times, supported both sides in an effort to produce a politically acceptable victory. But most importantly, the US favored stability, and tried to prevent further escalation of the war. After all, both Iraq and Iran were massive oil exporters, and they both sent most of their oil through the Persian Gulf and the Strait of Hormuz.
That meant that the US had an interest in keeping the Strait open, while Iran and Iraq hoped to cut the others access to the Strait off. Because of this, the US Navy stood as sort of a middle man, keeping both sides from blockading oil shipments, and simultaneously putting itself between two hostile warring parties. In 1987, an Iraqi fighter attacked the USS Stark, [which was damaged](http://en.wikipedia.org/wiki/USS_Stark_(FFG-31)#mediaviewer/File:USS_Stark_-_external_damage_by_exocet.jpg), and 37 American sailors were killed.
This escalated tensions, but by 1988 tensions were escalated again by the Iranians, who began to mine the Strait. An American ship, the USS Samuel B. Roberts hit an Iranian mine, and was also damaged. This provided justification for a massive American operation against the Iranian navy, which was brutalized in a one day operation called Operation Praying Mantis.
Mantis destroyed several several Iranian ships, and crippled Iran's ability to interdict the Persian sea lanes. But the Iranian air force could still launch major attacks against "neutral shipping" (read, tankers carrying oil to the west). Because of this, the US implemented a quasi-No Fly Zone, which was really directed against Iranian combat aircraft. This set the stage for the disaster.
Now, the airport that IA 655 launch from was also a military facility, and it did have several F-14 Tomcats. What happened to IA655 is hotly debated by both sides. The captain and crew at the time argued that the Vincennes made several attempts to contact IA 655, while detecting its steep climb to 14,000 ft. The crew interpreted this movement to be the beginning of an attack run by the F-14, in which it would climb high then dive towards a target and launch missiles. Thus, when the Vincennes couldnt contact the F-14/IA655, they assumed the contact was hostile, and engaged the target.
A more unbiased account of the attack was generated in the years after the incident, which essentially concluded that the Vincennes and its crew had attacked IA655 while it was flying in a civilian flight lane, while it was broadcasting on civilian frequencies (in English, the international language for flight control), and despite the fact that IA655's flight profile didnt really look like that of an F-14 in an attack run.
So, to your question, why did the Vincennes attack IA655. The Iranians argue a position which is somewhere between outright malice and downright incompetence. I think they might push that line a bit far, but there is a kernel of truth to that claim. Remember first what I talked about in the beginning, things in the Persian Gulf were tense. The US had had two ships damaged, and had just humiliated the Iranian military. Capt. William C. Rogers was justified in trying to prevent casualties among his command. Further, tensions on the Vincennes were more pronounced, as the ship had recently engaged Iranian patrol boats which had attacked the ship.
But at the same time, Capt. Rogers came out of the incident pretty badly. The most common (American) explanation for the incident is something called "scenario fulfillment," which is pretty much what it sounds like. The Vincennes had entered a combat area, and had been training on the ships advanced Anti-Aircraft weapons (it was the first AEGIS equipped Cruiser). The crew had naturally been training on how to identify and intercept a hostile F-14 attack, so when IA655 fulfilled some of those characteristics, the crew began to reenact one of their training scenarios. To them, IA655 was an F-14, simply because they had only trained how to deal with hostile air threats.
But at the same time, Capt. Rogers had gained a reputation for aggressive action. The other captains in the region had regarded him as a sort of loose was gunning to prove his ship and his crew in an area which had just seen hostilities. Rather than keep a cool head, and halt the wish fulfillment of his junior officers, Rogers embraced the potential threat, and responded in a characteristically aggressive manner.
Its probable that the IA655 incident was just one long and tragic accident. But everything which followed the incident politicized the tragedy, and gave Iran fodder for their propaganda machine. For example, Bush senior refused to apologize for incident. The Vincennes received awards for her tour in the Gulf, and Capt. Roberts was awarded commendations for his conduct while in command of the ship. The US Navy did its best to try and pretend like the incident never happened, and that only gave Iran ammunition to cry foul. Because of this, IA655 is still a hotly debated issue, while many of other airliner shoot-downs have largely been forgotten, like KA007