Forth
http://fforum.winglion.ru/

A+ ADROP ADUP и иже с ними...
http://fforum.winglion.ru/viewtopic.php?f=4&t=1094
Страница 1 из 1

Автор:  K`[f [ Пн дек 31, 2007 15:20 ]
Заголовок сообщения:  A+ ADROP ADUP и иже с ними...

Сорри, лажу, лажу по темам где сам же писал, а вот автора постов (как и самих постов), использующих ADROP и т.п. на целочисленном стеке найти не могу. :(

В общем, у меня к вам вопрос... Я вот всё голову ломаю - а если у вас на одном стеке лежат и числа и адреса и, при этом, адрес может занимать несколько ячеек, то что вы делаете, если необходимо сделать PICK или ROLL, а на стеке адреса и числа вперемешку?

Автор:  mrack [ Вт янв 01, 2008 18:03 ]
Заголовок сообщения: 

вопрос както виснет в пространстве, прям таки загадка свинкса, какой стек, какие адреса, в каком форте ?

Автор:  chess [ Вт янв 01, 2008 18:49 ]
Заголовок сообщения: 

mrack
mrack. Не позорь урал. Пиши правильно. Уральские горцы тебе не простят.

Автор:  K`[f [ Вт янв 01, 2008 20:55 ]
Заголовок сообщения: 

mrack писал(а):
вопрос както виснет в пространстве, прям таки загадка свинкса, какой стек, какие адреса, в каком форте ?


О - праздник удался! :)

Это я про обсуждение в "осторожно, флуд", а может быть "как можно эффективно использовать Форт". Ну целочисленный стек в Форте - он же и основной, а Форт, я так понимаю, имелся в иду любой. :) Собственно, речь шла о способе сокрыть разрядность адреса с помощью введения специального набора A-слов.

Автор:  mOleg [ Ср янв 02, 2008 22:48 ]
Заголовок сообщения: 

K`[f писал(а):
В общем, у меня к вам вопрос... Я вот всё голову ломаю - а если у вас на одном стеке лежат и числа и адреса и, при этом, адрес может занимать несколько ячеек, то что вы делаете, если необходимо сделать PICK или ROLL, а на стеке адреса и числа вперемешку?

гм, во-первых, про PICK & ROLL надо сразу забыть, как об очень ужастной вещи.
во-вторых, похожий вопрос обсуждался у Гассанаенко, правда по поводу стека возвратов, ищи RR@ >RR RR> RRDROP там некоторая теория имеется.
в-третьих, есть готовый вариант в языке Postscript, но там однозначно динамическая типизация ( так что в топку )
в-четвертых, не стоит проектировать фортов, в которых адресное пространство адресуется более широкими, чем CELL числами, тогда ADROP и не понадобится.

отдельные A@ A! могут иметь немного другой смысл, например, позволять работать с относительными адресами, то есть иметь другое поведение, нежели @ !

Автор:  K`[f [ Ср янв 02, 2008 22:52 ]
Заголовок сообщения: 

mOleg писал(а):
отдельные A@ A! могут иметь немного другой смысл, например, позволять работать с относительными адресами, то есть иметь другое поведение, нежели @ !


В общем, проблему не решают... :(

Автор:  mOleg [ Ср янв 02, 2008 22:56 ]
Заголовок сообщения: 

K`[f писал(а):
В общем, проблему не решают...

вопрос в том, а есть ли проблема?

Автор:  mrack [ Ср янв 02, 2008 23:24 ]
Заголовок сообщения: 

chess ну звиняйте, грамотность не мой конёк :)

K`[f дайте пажалуста стековую нотацию для ADROP ADUP,
а также что считается адресом и чем оно отличается от обычных чисел,
и как на стеке если что отличить адрес от не адреса
для общей ясности и более глубокого познания мной дао адреса :)

Автор:  K`[f [ Чт янв 03, 2008 09:30 ]
Заголовок сообщения: 

mrack писал(а):

K`[f дайте пажалуста стековую нотацию для ADROP ADUP,
а также что считается адресом и чем оно отличается от обычных чисел,
и как на стеке если что отличить адрес от не адреса
для общей ясности и более глубокого познания мной дао адреса Smile


Вы не обратили внимание, что я примерно этим же и интересовался? :)

Автор:  mOleg [ Чт янв 03, 2008 14:24 ]
Заголовок сообщения: 

mrack писал(а):
K`[f дайте пажалуста стековую нотацию для ADROP ADUP,

собственно, тут надо смотреть разные форты.
Сейчас этот вопрос не очень актуален, но под ДОСом были форты(например F-PC), у которых адресная ссылка занимала 2-а CELL-а. Кроме того, возможны варианты, когда адресация некоторым образом ассоциативная, то есть адрес представляет собой пару id-блока памяти + смещение внутри блока памяти (могут быть и другие варианты).
Кроме того от типа шитого кода зависит как выглядят адреса возвратов на стеке возвратов:
http://www.complang.tuwien.ac.at/anton/ ... nko98b.pdf

Вопрос существует, но проблема по сути достаточно некритична, чтобы для ее решения выделять, например, отдельный стек.

Автор:  forth@km.ru [ Чт янв 03, 2008 14:34 ]
Заголовок сообщения: 

насколько помню в великом SMAL32 было подмножество A-слов для работы с абсолютными физ.адресами памяти (обычные слова использовали алиасную пару 32-битных сегментов кода и данных i386 под экстендером PMODE)

Автор:  mOleg [ Чт янв 03, 2008 14:38 ]
Заголовок сообщения: 

forth@km.ru писал(а):
насколько помню в великом SMAL32 было подмножество A-слов для работы с абсолютными физ.адресами памяти (обычные слова использовали алиасную пару 32-битных сегментов кода и данных i386 под экстендером PMODE)

да, верно, но в СМАЛ32 у этих слов было конкретное, ограниченное назначение, и ими не пользовались для представления всех адресов внутри системы.

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