Конечно, посмотрите на таблицу истинности:
A B And Nand
---------------------
lo lo lo hi
lo hi lo hi
hi lo lo hi
hi hi hi lo
Как видите, вы можете получить значения nand, отрицая ранее добавленные значения.Но вы, возможно, забыли, что and
и not
работают с каждым битом регистров.Я думаю, что вы перепутали с логическими значениями, где (обычно) любое ненулевое значение считается истинным.Следовательно,
11101001 nand 01000111 =
= ~ (11101001 and 01000111) =
= ~ 01000001 =
= 10111110
, потому что
1 and 0 = 0
1 and 1 = 1
1 and 0 = 0
0 and 0 = 0
1 and 0 = 0
0 and 1 = 0
0 and 1 = 0
1 and 1 = 1
В следующий раз, когда вы должны опубликовать как ожидаемые, так и фактические результаты, таким образом, нам будет легче понять, что пошло не так.