Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт мар 29, 2024 11:15

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Локальный стек
СообщениеДобавлено: Пт янв 02, 2009 01:49 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Заведен вспомогательный стек размером 1024 ячеек. Ячейки 8-байтные, целые числа занимают там младшие 4 байта (таким образом, можно укладывать попеременно целые и float числа). Слова для работы такие:
Код:
>L L> F>L L>F LOCALDEPTH


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 02, 2009 10:42 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
это вместо использования стека возвратов?

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 02, 2009 12:00 
Не в сети
Аватара пользователя

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
вопрос писал(а):
это вместо использования стека возвратов?

А зачем вместо? В дополнение :)
Хищник
А на сайте когда будет?

_________________
Cтоимость сопровождения программного обеспечения пропорциональна квадрату творческих способностей программиста.
Роберт Д. Блисc


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 02, 2009 17:25 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
VoidVolker писал(а):
вопрос писал(а):
это вместо использования стека возвратов?

А зачем вместо? В дополнение

Действительно, в дополнение. Я старательно избегаю использовать стек возвратов для временного хранения чисел со стека данных - в том числе и по "форт-процессорным" соображениям (с целью экономии ресурсов стек возвратов обычно имеет разрядность, равную разрядности адреса, а это меньше 32).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 02, 2009 21:20 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
использование стека возвратов для хранения данных было осмысленно только для экономии, когда ресурсов системы было мало, теперь это имеет смысл только для обнаружения ошибок в балансе стеков :)

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 02, 2009 21:45 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
разве что что-нибудь в таком духе
Код:

:  WORD_A (  x y -- x y  )
   2DUP * 144 < ( что-то в пределах 12 квадрат )
   R> SWAP >R >R
   ;
    ( end: WORD_A )
   
   
: WORD_B  (  x y - --  )
   WORD_A (  убедились, что в переделах  )
   R> IF SWAP . . ELSE * . THEN CR
   ;
    ( end: WORD_B )

т.е. для дополнительной передачи параметров "обратно"

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB