![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
XOR
RoNaBoU © (2006-09-05 07:07:00)Что делает сия функция XOR?
XbI (2006-09-06 20:28:00) [1]жесть... :)))
default (2006-09-06 19:38:00) [2]Fay © (06.09.06 18:31) [27]
да я в курсе:)
Fay (2006-09-06 18:31:00) [3]2 default © (05.09.06 22:01) [26]
(not x1) and (not x2) буквально приводится к not (x1 or x2), а
(not x1) or (not x2) к not (x1 and x2). Данные определения f1 и и f3 - просто левые части правил приведения.
default (2006-09-05 22:01:00) [4]Fay © (05.09.06 21:50) [25]
громоздкость может быть ценой за нагляднось
но в данном случае, думаю, одинаковы наглядны и записи с not и исходные
Fay (2006-09-05 21:50:00) [5]А в чём причина такой сложной записи f1,2,3 ? Это всего лишь дополнение or, xor и and (соотв) ...
DprYg (2006-09-05 20:02:00) [6]
> DevilDevil © (05.09.06 19:05) [20]
> DevilDevil © (05.09.06 19:09) [21]
Ответ на вопрос был уже дан.
> RoNaBoU
Без знания систем счисления далеко не уедешь...
Palladin (2006-09-05 19:57:00) [7]пжалста
:)
x1 x2 and xor or f1 f2 f3
--------------------------
0 0 0 0 0 1 1 1
0 1 0 1 1 0 0 1
1 0 0 1 1 0 0 1
1 1 1 0 1 0 1 0
f1 функция Пирса (not x1) and (not x2)
f2 эквивалентность ((not x1) and (not x2)) or (x1 and x2)
f3 штрих Шеффера (not x1) or (not x2)
default (2006-09-05 19:27:00) [8]DevilDevil © (05.09.06 19:09) [21]
осталось сюда таблицу умножения запостить и мы станем все воистину просвещёнными
DevilDevil (2006-09-05 19:09:00) [9]
ОЧЕПЯТКИ !!!
АРИФМЕТИЧЕСКИЕ:
10 or 3 = 11
10 and 3 = 10
10 xor 3 = 9
byte( not(10) ) = 5
10 = 1010
3 = 0011
Вроде так...
DevilDevil (2006-09-05 19:05:00) [10]XOR - логическая операция, называемая "сложение по модулю 2" и обозначается плюсиком в кружочке.
логическая операция XOR (как и все остальные логические: AND, OR, NOT) имеют два различных предназначения: в логических операциях и операциях с перечисляемыми типами (арифметические).
АРИФМЕТИЧЕСКИЕ:
9 or 3 = 7
9 and 3 = 2
9 xor 3 = 5
byte( not(9) ) = 5
9 = 1010
3 = 0011
ЛОГИЧЕСКИЕ:
A, B : boolean;
A := ...
B := ...
Строкуif (A xorB) then ...
можно трактовать как "если A и B разные, то ..."
Поэтому следующая строка абсолютно эквивалентна:
if (A <>B) then ...
default (2006-09-05 17:09:00) [11]сейчас дойдём до того, что XOR это просто три весёлых (или нет, кому как, вот для автора сабжа, наверно, невесёлых) буквы
Fay (2006-09-05 16:59:00) [12]2 han_malign © (05.09.06 15:45) [17]
"непревосходства суммы над 1" - это просто ужоzz
han_malign (2006-09-05 15:45:00) [13]http://ru.wikipedia.org/wiki/%D0%94%D0%B8%D0%B7%D1%8A%D1%8E%D0%BD%D0%BA%D1%86%D0%B8%D1%8F
evvcom (2006-09-05 15:22:00) [14]Вы еще подеритесь, горячие финские парни! (c) Генерал
Буквоедством занимаетесь, не определив колокольню, с которой спорите.
Jenny (2006-09-05 12:32:00) [15]вернее операция ;)
Jenny (2006-09-05 12:32:00) [16]Это функция из Дискретной математики или как её называют ОПЕРАНДА ;)
default (2006-09-05 10:29:00) [17]Fay © (05.09.06 10:21) [12]
оператор языка определяющий логическую функцию
Fay (2006-09-05 10:21:00) [18]2 DrPass © (05.09.06 10:09) [11]
Да хоть тремя. XOR в Delphi - оператор.
DrPass (2006-09-05 10:09:00) [19]Это, вообще-то, логическая функция, а не оператор асма. Другое дело, что процессор умеет вычислять ее одной инструкцией.
Fay (2006-09-05 09:26:00) [20]2 default © (05.09.06 9:20) [8]
В Delphi - не функция, как не является функцией ! в C.