>>  <<  Ркв  Ввд  JfC  LJ  Фрз  Слв  Изм  Рзг  !:  Помощь  Словарь

Поразрядно m b.  _ 0 0  

Монада эквивалентна случаю нулевого левого аргумента; тоесть
m b. y 0 m b. y
 
  Если f диадная булевская функция, а d=: 0 1 , тогда d f/ d (или f/~d) есть ее полная таблица истинности. Например, ниже приведены таблицы для или, не-или, и, и не-и:
   (+./~ ; +:/~ ; *./~ ; *:/~) d=: 0 1
+---+---+---+---+
|0 1|1 0|0 0|1 1|
|1 1|0 0|0 1|1 0|
+---+---+---+---+
Если все эти таблицы отсортировать, то каждая из шестнадцати возможных булевских диад получит некоторый порядковый номер k ; фраза k b. тогда реализует соответствующую функцию. Кроме того, допускаются отрицательные индексы и аргументы в виде массивов.

Атом m=16+k обозначает побитовую булевскую функцию целых аргументов. Каждый атом ее аргументов считается битовыми списком длины w , где w — длина слова машины, на которой работает программа. Например, 17 b. выполняет побитовое и.

Наконец, 32 b. соответствует циклическому сдвигу, 33 b. сдвигу, а 34 b. сдвигу с учетом знака.
 

В следующей таблице перечислены все возможные булевские функции:
m     Разобранная
Таблица
    Функция
0 _16 16 0 0 0 0 0
1 _15 17 0 0 0 1 x *. y
2 _14 18 0 0 1 0 x > y
3 _13 19 0 0 1 1 x
4 _12 20 0 1 0 0 x < y
5 _11 21 0 1 0 1 y
6 _10 22 0 1 1 0 x ~: y
7 _9 23 0 1 1 1 x +. y
8 _8 24 1 0 0 0 x +: y
9 _7 25 1 0 0 1 x = y
10 _6 26 1 0 1 0 -. y
11 _5 27 1 0 1 1 x >: y
12 _4 28 1 1 0 0 -. x
13 _3 29 1 1 0 1 x <: y
14 _2 30 1 1 1 0 x *: y
15 _1 31 1 1 1 1 1
  32 циклический сдвиг
  33 сдвиг
  34 сдвиг с учетом знака

Например:
   (7 b./~ ; 8 b./~ ; 1 b./~ ; 14 b./~) d=: 0 1
+---+---+---+---+
|0 1|1 0|0 0|1 1|
|1 1|0 0|0 1|1 0|
+---+---+---+---+

   (_1 b./~ ; _3 b./~ ; _15 b./~) d       NB. отрицательные индексы
+---+---+---+
|1 1|1 1|0 0|
|1 1|0 1|0 1|
+---+---+---+

   (<"2) 2 0 1 |: 7 8 1 15 b./~ d         NB. аргументы в виде массивов
+---+---+---+---+
|0 1|1 0|0 0|1 1|
|1 1|0 0|0 1|1 1|
+---+---+---+---+

   12345 (17 b.) 67890                    NB. побитовое и
48
   f=: (32#2)&#: { '.x'"_
   f 12345 67890 48
..................xx......xxx..x
...............x....x..x..xx..x.
..........................xx....

   _12345 (23 b.) 67890                   NB. побитовое или
_12297
   f _12345 67890 _12297
xxxxxxxxxxxxxxxxxx..xxxxxx...xxx
...............x....x..x..xx..x.
xxxxxxxxxxxxxxxxxx..xxxxxxxx.xxx

   20 b./~ i.10                           NB. таблица побитового меньше
0 1 2 3 4 5 6 7 8 9
0 0 2 2 4 4 6 6 8 8
0 1 0 1 4 5 4 5 8 9
0 0 0 0 4 4 4 4 8 8
0 1 2 3 0 1 2 3 8 9
0 0 2 2 0 0 2 2 8 8
0 1 0 1 0 1 0 1 8 9
0 0 0 0 0 0 0 0 8 8
0 1 2 3 4 5 6 7 0 1
0 0 2 2 4 4 6 6 0 0

   23 b./\ 2^i.10                         NB. побитовое или с накоплением
1 3 7 15 31 63 127 255 511 1023

   _5 (33 b.) 12345                       NB. сдвиг
385
   f 12345 385   
..................xx......xxx..x
.......................xx......x

   _5 (33 b.) _12345                      NB. сдвиг
134217342
   f _12345 134217342
xxxxxxxxxxxxxxxxxx..xxxxxx...xxx
.....xxxxxxxxxxxxxxxxxx..xxxxxx.

   _5 (34 b.) _12345                      NB. сдвиг с учетом знака
_386
   f _12345 _386
xxxxxxxxxxxxxxxxxx..xxxxxx...xxx
xxxxxxxxxxxxxxxxxxxxxxx..xxxxxx.


>>  <<  Ркв  Ввд  JfC  LJ  Фрз  Слв  Изм  Рзг  !:  Помощь  Словарь