passwd ファイルと shadow ファイルの x と * と ! は何を意味するのでしょうか?

普通は shadow にハッシュされたパスワードが入っていて、
そのとき passwd ファイルのほうには x が入っているということくらいしか知らないのですが、
/etc/shadow を見ると * とか ! があります。