Advice, recommendation, a good idea in the present.

Should/shouldn’t + V1

You should read more.

You shouldn’t play computer games so often.

Ought to + V1 (more stress on the moral obligation)

You ought to help him – he’s in need.

Regret about the past, someone didn’t do the right thing in the past.

Should + have + V3

You should have told me the truth.

She should have exercised more.

You shouldn’t have bought it. It’s too expensive!

Note:

For giving recommendation we can also use the construction had better + V1:

You’d better study more to enter this university.