If a team is below the cap, then their Disabled Player, Bi-Annual, Mid-Level and/or Traded Player exceptions are added to their team salary, and the league treats the team as though they are over the cap. This is to prevent a loophole... A team can't act like they're under the cap and sign free agents using cap room, and then use their Disabled Player, Bi-Annual, Mid-Level and/or Traded Player exceptions. Consequently, the exceptions are added to their team salary (putting the team over the cap) if the team is under the cap and adding the exceptions puts them over the cap...
So being under the cap does not necessarily mean a team has room to sign free agents. For example, assume the cap is $49.5 million, and a team has $43 million committed to salaries. They also have a Mid-Level exception for $5 million and a Traded Player exception for $5.5 million. Even though their salaries put them $6.5 million under the cap, their exceptions are added to their salaries, putting them at $53.5 million, or $4 million over the cap. So they actually have no cap room to sign free agents, and instead must use their exceptions.
http://members.cox.net/lmcoon/salarycap.htm#Q1


