意味の違いでいえば
not A and B のほうは,「AとBの両立」を否定している
not A or B のほうは,「AとBの両方」を否定している
ということです。
「両立」を否定するというのは,おそらく初耳でしょうね?
たとえば,「お菓子を食べてしまうこと」と「そのお菓子をまだ持っていること」とは両立しません。そこで
You cannot eat your cake and have it.
という英文では,eat your cake(自分のお菓子を食べる)と have it(それを持っている)が両立しないことを表しています。
この and を or に変えると
You cannot eat your cake or have it. (あなたは,自分のお菓子を食べることも持っていることもできない。・・・ただし,この you cannot は,ここでは禁止(~してはいけない)の意味で使われているので,この英文は「あなたは,自分のお菓子を食べてもいけないし,持っていてもいけない」と和訳するのが正しいです。)
という英文では,eat your cake と have it の両方ともが否定されております。
「両立を否定」などと難しいことを言いましたが,この際,この日本語表現も覚えておいてください。