Редактирование: Палитра Каллисто

Перейти к навигации Перейти к поиску
Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы войдёте или создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.

Текущая версия Ваш текст
Строка 4: Строка 4:
== Константы ==
== Константы ==
  2 Constant cell
  2 Constant cell
0 Constant false
-1 Constant true
  8 Constant 8
  8 Constant 8
  10 Constant 10
  10 Constant 10
Строка 25: Строка 27:


== Арифметика ==
== Арифметика ==
: 2-  ( a -- a-2 )  body> ;
  : <=  ( a,b -- a <= b )  ↔  <  0= ;
  : <=  ( a,b -- a <= b )  ↔  <  0= ;
  : ≥    ( a,b -- a ≥ b )    ↔  >  0= ;
  : ≥    ( a,b -- a ≥ b )    ↔  >  0= ;
  : ≠    ( a,b -- a ≠ b  )  =  0= ;
  : ≠    ( a,b -- a ≠ b  )  =  0= ;
  : 0≠  ( a -- a ≠ 0 )    0=  0= ;
  : 0≠  ( a -- a ≠ 0 )    0=  0= ;
: not  ( a -- b )  inverse ;
  : under+  ( a b c -- a+c b )  rot  +  ↔ ;
  : under+  ( a b c -- a+c b )  rot  +  ↔ ;
  : within  ( n lo hi+1 -- ? )
  : within  ( n lo hi+1 -- ? )
       >r  1- over <  ↔ r>  < and ;
       >r  1- over <  ↔ r>  < and ;


== Работа с памятью ==
== Работа с памятью ==
: 0!  ( a -- )    0 ↔ ! ;
  : 1+! ( a -- )    1 ↔ +! ;
  : 1+! ( a -- )    1 ↔ +! ;
  : 1-! ( a -- )  -1 ↔ +! ;
  : 1-! ( a -- )  -1 ↔ +! ;
Строка 39: Строка 45:
  : 2!  ( bb a -- )  ↑ >r ! r> 2+ ! ;
  : 2!  ( bb a -- )  ↑ >r ! r> 2+ ! ;
  : compile, ( a --) , ;
  : compile, ( a --) , ;


== Числа двойной длины ==
== Числа двойной длины ==
Строка 61: Строка 68:


== Работа с внешней памятью ==
== Работа с внешней памятью ==
: thru  ( n1,n2 -- Интерпретировать экраны)
          (        от n1 до n2 включительно)
  1+ over - for ↑ load 1+ next drop ;
  : sclr ( n -- )    ." S# " s. ." Clear ? <Y/CR> "
  : sclr ( n -- )    ." S# " s. ." Clear ? <Y/CR> "
     key 'Y' = IF buffer b/buf blank update flush then ;
     key 'Y' = IF buffer b/buf blank update flush then ;
  : .line  (line) type ;
  : .line  (line) type ;


== Отладка ==
== Отладка ==
: ?    ( a -- )    @ . ;
  : c?    ( a -- )    c@ . ;
  : c?    ( a -- )    c@ . ;
  : рег?  ( u -- )    ип . ;
  : рег?  ( u -- )    рег@ . ;
  : s.    ( a -- a )  ↑ . ;
  : s.    ( a -- a )  ↑ . ;
  : h.    ( a -- a )  base @ hex over i. base ! ;
  : h.    ( a -- a )  base @ hex over i. base ! ;
  : b.    ( -- )      base @ ↑  decimal i.  base ! ;
  : b.    ( -- )      base @ ↑  decimal i.  base ! ;
  : prs  ( n -- )    depth 1- min for i 1- pick . next ;
  : prs  ( n -- )    depth 1- min for i 1- pick . next ;
: free  ( -- n )    rp@ pad - ;
  : Дfree ( -- n )    sp@ Дhere - ;
  : Дfree ( -- n )    sp@ Дhere - ;


Строка 78: Строка 91:
  : octal    8 base ! ;
  : octal    8 base ! ;
  : grads    2 9045 рег! ;
  : grads    2 9045 рег! ;
: cells    2× ;
: cell+    2+ ;
  : recurse  ?comp  last name> , ; immediate
  : recurse  ?comp  last name> , ; immediate
: defer! ( xt2 xt1 -- )  >body ! ;
: defer@ ( xt1 -- xt2 )  >body @ ;




Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. Pmkwiki:Авторские права). НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:

Отменить Справка по редактированию (в новом окне)