Forth
http://fforum.winglion.ru/

[RuF09] Согласование стандарта на команды для ФП и ВФМ
http://fforum.winglion.ru/viewtopic.php?f=36&t=1919
Страница 1 из 1

Автор:  WingLion [ Пн фев 02, 2009 23:46 ]
Заголовок сообщения:  [RuF09] Согласование стандарта на команды для ФП и ВФМ

[RuF09] Согласование стандарта на команды и для форт процессора, и для виртуальной форт машины.

Итак, согласованными считаются следующие 17 команд:


?BRANCH
LIT
CALL
RET

DUP
DROP
SWAP
OVER

AND
OR
XOR
ADD
2/

@ = FETCH
! = STORE

AR>
A>R



----
исправлен топик и внесена его полная расшифровка в начало поста.

Автор:  mOleg [ Пн фев 02, 2009 23:53 ]
Заголовок сообщения: 

только не форт-процессора, а ВМ
иными словами и форт-процессора тоже :)

Автор:  вопрос [ Вт фев 03, 2009 00:50 ]
Заголовок сообщения: 

Что-то я не пойму. арифметика элементарная и логика не полностью?
Где NOT? или INVERSE

Автор:  Pretorian [ Вт фев 03, 2009 06:51 ]
Заголовок сообщения: 

А почему 2/ , а не более функциональное слово с указанным количеством сдвига?

Автор:  WingLion [ Вт фев 03, 2009 08:27 ]
Заголовок сообщения: 

Речь в данном случае о "минимальном" ("сокращенном") наборе команд для ФП или ВФМ (но не минимальном наборе языка Форт!), из которого можно получить остальные слова.

Получены они в ходе дискуссии и дополняться могут только необязательными для ФП или ФВМ словами. Необязательность подтверждается возможностью их выражения через минимальный набор.

При этом, выражение должно быть на языке Форт с использованием стандартных (в смысле "понятных всем") определяющих и управляющих конструкций.

вопрос писал(а):
Что-то я не пойму. арифметика элементарная и логика не полностью?
Где NOT? или INVERSE

Код:
: INVERSE -1 XOR ;

: TRUE -1 ; : FALSE 0 ;

: NOT  IF  FALSE ELSE TRUE THEN ;



Pretorian писал(а):
А почему 2/ , а не более функциональное слово с указанным количеством сдвига?

Код:
: 2* DUP ADD ;

: LSHIFT 0 DO 2/ LOOP ; : RSHIFT 0 DO 2* LOOP ;

: SHIFT DUP 0= IF EXIT THEN DUP 0> IF LSHIFT ELSE NEG RSHIFT THEN ;

Автор:  WingLion [ Вт фев 03, 2009 08:29 ]
Заголовок сообщения: 

mOleg писал(а):
только не форт-процессора, а ВМ
иными словами и форт-процессора тоже Smile


короче, и ВФМ, и ФП. Сейчас внесу в название темы, чтобы не звучало однобоко.

Автор:  Hishnik [ Вт фев 03, 2009 19:23 ]
Заголовок сообщения: 

WingLion писал(а):
: LSHIFT 0 DO 2/ LOOP ; : RSHIFT 0 DO 2* LOOP ;

Наоборот.

Автор:  WingLion [ Вт фев 03, 2009 19:46 ]
Заголовок сообщения: 

Хищник писал(а):
Наоборот.

упс... с детства лево и право путаю...

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/