Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 23:58

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: amForth v3.4 Как забыть слово или все слова?
СообщениеДобавлено: Вт июн 23, 2009 12:07 
Не в сети

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Добрый день!

Я тут "игрался-игрался" с Фортом, да так что по команде words "два экрана текста" выходило, а потом мусор посыпался и система умерла....

Заново Forth залил и теперь он чистенький, опрятный...

Бывают такие ситуации когда слово было неправильно составлено и надо бы его поменять, а получается "повтор" этого слова и Система имеет 10 слов типа "prog1", а используется только первое...

Ворпосы:
1. Каким образом лучше реализовать FORGET_ALL ( забыть всё до системного словаря )
2. FORGET_FROM_WORD ( забыть всё начиная с этого слова )
3. FORGET_THIS_WORD ( забыть только это слово ) \ Возможно-ли?

Всем огромное спасибо заранее...
П.С. паралелльно читаю Броуди...


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

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
Без разбора реализации Форта, в конкретном случае, ( amForth для AVR? )
так просто не получится:) ( если нет требуемой функциональности )

P.S. А как Форт для ARM? ( hfarm )


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 23, 2009 12:27 
Цитата:
Система имеет 10 слов типа "prog1", а используется только первое...

Система не имеет 10 слов, а имеет только одно - последнее(так как доступа к первым 9-ти словам нет),
а слово WORDS можно доработать, чтобы не показывало лишние слова.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 23, 2009 12:38 
Не в сети

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Anonymous писал(а):
Цитата:
Система имеет 10 слов типа "prog1", а используется только первое...

Система не имеет 10 слов, а имеет только одно - последнее(так как доступа к первым 9-ти словам нет),
а слово WORDS можно доработать, чтобы не показывало лишние слова.


т.е мусора в системе не остаётся? Я это имел в виду.

Kopa писал(а):
P.S. А как Форт для ARM? ( hfarm )
Умер, так как поставщик не смог быстро предоатавить борд, так что теперь amForth для AT90CAN128 (борд: DVK90CAN1-1.1)


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

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Тут аля просмотра стека (очень мне помогает в "отладке") написал слово:
Код:
: s3 dup ."  TOS: " . cr over ." TOS-1 " . cr rot dup ." TOS-2 " . cr -rot ;

показывает содержание 3-х верхних ячеек на стеке...


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

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
iv_ru писал(а):
Тут аля просмотра стека (очень мне помогает в "отладке") написал слово:
Код:
: s3 dup ."  TOS: " . cr over ." TOS-1 " . cr rot dup ." TOS-2 " . cr -rot ;

показывает содержание 3-х верхних ячеек на стеке...


правильнее писать так:
Код:
: s3 ( -- ) dup ."  TOS: " . cr over ." TOS-1 " . cr rot dup ." TOS-2 " . cr -rot ;


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

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
iv_ru писал(а):
Kopa писал(а):
P.S. А как Форт для ARM? ( hfarm )
Умер, так как поставщик не смог быстро предоатавить борд, так что теперь amForth для AT90CAN128 (борд: DVK90CAN1-1.1)


Может тогда стоит попробовать и другие возможные Форт системы для AVR
( например FF303 ссылки можно найти в разделе железа Фортов для контроллеров )


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

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Kopa писал(а):
iv_ru писал(а):
Kopa писал(а):
P.S. А как Форт для ARM? ( hfarm )
Умер, так как поставщик не смог быстро предоатавить борд, так что теперь amForth для AT90CAN128 (борд: DVK90CAN1-1.1)


Может тогда стоит попробовать и другие возможные Форт системы для AVR
( например FF303 ссылки можно найти в разделе железа Фортов для контроллеров )


Поздно т.к. адаптер-боард уже разработан и заказан. Так что только AT90CAN128...


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

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
iv_ru писал(а):
Тут аля просмотра стека (очень мне помогает в "отладке") написал слово:
Код:
: s3 dup ."  TOS: " . cr over ." TOS-1 " . cr rot dup ." TOS-2 " . cr -rot ;

показывает содержание 3-х верхних ячеек на стеке...


Можно и так:
Код:
: s3 >R >R  DUP .  R> DUP .  R> DUP . ;


P.S. FF303 можно настроить на любой тип AVR контроллера, а асм или Форт
недостающие реализации можно брать из других систем ( например и из amForth )


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

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Kopa писал(а):
iv_ru писал(а):
Тут аля просмотра стека (очень мне помогает в "отладке") написал слово:
Код:
: s3 dup ."  TOS: " . cr over ." TOS-1 " . cr rot dup ." TOS-2 " . cr -rot ;

показывает содержание 3-х верхних ячеек на стеке...


Можно и так:
Код:
: s3 >R >R  DUP .  R> DUP .  R> DUP . ;


P.S. FF303 можно настроить на любой тип AVR контроллера, а асм или Форт
недостающие реализации можно брать из других систем ( например и из amForth )


помимо всего прочего мне необходимо 2 поеледовательных порта и CAN... И, как уже сказано, я специально для этого борда разработал адаптер, так что теперь с ними и работать, т.к. время на дипломную отведено не бесконечно...


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

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
iv_ru писал(а):
Поздно т.к. адаптер-боард уже разработан и заказан. Так что только AT90CAN128...


Описание будет похоже например, на isopod VM~3.5Мб архив
разработки newmicros?

P.S. И что есть адаптер?
т.к. AVR контроллеры можно заливать по SPI через парралельный порт.:)


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

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Kopa писал(а):
iv_ru писал(а):
Поздно т.к. адаптер-боард уже разработан и заказан. Так что только AT90CAN128...


Описание будет похоже например, на isopod VM~3.5Мб архив
разработки newmicros?

P.S. И что есть адаптер?
т.к. AVR контроллеры можно заливать по SPI через парралельный порт.:)


Адаптер есть печатная плата со всякими безделушками типа реле, диоды, трансисторы... предусмотрены разъёмы на которые будет посажен DVK90CAN потом средствами форта буду содержимое тех или иных регистров передавать на адаптер...


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

Зарегистрирован: Ср май 13, 2009 18:35
Сообщения: 35
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
всё, опять весь словарь замусорил... :shuffle;


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

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
iv_ru писал(а):
т.е мусора в системе не остаётся? Я это имел в виду.

остается .
FORGET в современных системах не делают - отказались от него 8( но в общем зависит от системы
на смену ему в 94 стандарте есть слово MARKER (на мой взгляд очень неудобное) многие системы его поддерживают,
но смысл в обоих словах есть только на больших машинах, а на микроконтроллерах обычно стараются не переопределять слова.
вообще удаление слова из словаря возможно только, если его никто не использует, но даже в этом случае толку от
удаления слова из словаря будет мало(так как память распределяется по стековому принципу) - останется дырка в памяти, которую
использовать для чего-то полезного будет неудобно.

а для распечатки стека обычно в системе есть слово .S

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 23, 2009 14:56 
iv_ru писал(а):
всё, опять весь словарь замусорил... :shuffle;


И что код дописывается во Flash и нет возможности исполнения из ОЗУ?

P.S. В скриптовом движке слово DEFER или MARKER полезно ввести.


Вернуться к началу
  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу 1, 2  След.

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


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

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


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

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