Nifty ends below 24,100; banks, pharma stocks drag markets