The speed limit is 30 miles an hour but Tom is driving at 50.
1. He shouldn't be driving so fast.
2. He shouldn't have been driving so fast.
Could you please tell me which is correct, sentence 1 or sentence 2?
And please give me your explanation.
Tom is driving 50 mph. (right now, at this very moment) To give your opinion about an action that is happening in the present, you will need to use the present: 'He shouldn't be.....' driving so fast.
If you say, 'He shouldn't have been driving so fast,' you are commenting on something that has already happened.