Sensex falls 340 points, Nifty ends at 14,850; Small and Mid-cap outperform