Редактирование: Палитра Каллисто
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 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 рег! ; | ||
: recurse ?comp last name> , ; immediate | : recurse ?comp last name> , ; immediate | ||