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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 42 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Форт-ассемблер
СообщениеДобавлено: Ср мар 22, 2017 22:11 
Не в сети

Зарегистрирован: Пт янв 06, 2017 14:57
Сообщения: 365
Благодарил (а): 17 раз.
Поблагодарили: 1 раз.
Здраствуйте уважаемые фортеры! Подскажете пожалуйста, как понять "внутренности" какого-нибудь форт-ассемблера?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Ср мар 22, 2017 22:17 
_KROL писал(а):
Здраствуйте уважаемые фортеры! Подскажете пожалуйста, как понять "внутренности" какого-нибудь форт-ассемблера?


Очевидно, для этого нужно зайти на FORTH-форум - http://gudleifr.forum2x2.ru/t29-topic


Последний раз редактировалось gudleifr Чт июн 29, 2017 10:50, всего редактировалось 2 раз(а).

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Чт мар 23, 2017 04:41 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
_KROL писал(а):
Здраствуйте уважаемые фортеры! Подскажете пожалуйста, как понять "внутренности" какого-нибудь форт-ассемблера?

Статья: Как написать свой ассемблер viewtopic.php?f=34&t=1569



За это сообщение автора KPG поблагодарил: _KROL
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Чт мар 23, 2017 09:17 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1287
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Можно написать свой форт-ассемблер
Имея справочник по архитектуре под рукой, или какую-то толковую книжку по оп.кодам ассемблера, но это ещё надо поискать.
Справочник более оптимистичный вариант, пусть и на буржуйском

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Чт мар 23, 2017 13:22 
Не в сети

Зарегистрирован: Ср май 10, 2006 13:51
Сообщения: 202
Благодарил (а): 3 раз.
Поблагодарили: 4 раз.
KPG писал(а):
Статья: Как написать свой ассемблер viewtopic.php?f=34&t=1569


Плюсую, отличная статья!


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Чт мар 23, 2017 22:30 
Не в сети

Зарегистрирован: Пт янв 06, 2017 14:57
Сообщения: 365
Благодарил (а): 17 раз.
Поблагодарили: 1 раз.
Спасибо!


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Пт мар 24, 2017 14:56 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Ассемблеры в целом бывают разные. Для Форта тоже можно реализовать несколько основных подходов - либо "классический" вида mov eax, ebx, либо чисто постфиксный, максимально использующий встроенные возможности Форта по разбору текста. Зависит от общих целей. Постфикс хорош, если надо сделать "прямо сейчас", но опасен именно своими богатыми возможностями - кто-то другой может придумать и другой синтаксис.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Пт мар 24, 2017 15:12 
Hishnik писал(а):
Для Форта тоже можно реализовать несколько основных подходов...
Точнее, по уму, не нужно реализовывать ни один. Нужно, просто, записывать в удобной (краткой, понятной) форме те кодовые слова, которые встречаются в программе - т.е. нужен набор удобных макросов для часто встречающихся комбинаций.
Идея здесь простая - если вы хорошо знаете машинный язык, вы и в кодах напишите, а для незнающего машинный язык множить это незнание на соглашения красивого ассемблера - никакого резона. Окупается только для очень простых процессоров - уровня 80-го. Тем более, что строк, для которых критично время исполнения, в программе обычно бывает порядка десятка.

С точки зрения FORTH нужно знать всего три вещи:
1. Где лежит слово (точка входа) создания словарной статьи - ENTRY , (CREATE) или еще как.
2. Какие нужны начальные-конечные коды для кодового слова в используемом шитом коде.
3. Что есть такое слово "запятая" (для леняев - "C-запятая").


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Пт мар 24, 2017 15:37 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Ср дек 06, 2006 09:23
Сообщения: 660
Благодарил (а): 7 раз.
Поблагодарили: 25 раз.
могу скинуть свой асм для avr32 ) в теории с комментариями)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Пт мар 24, 2017 22:21 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
diver писал(а):
могу скинуть свой асм для avr32 ) в теории с комментариями)

По материалам данной статьи? viewtopic.php?f=34&t=396&start=0


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Сб мар 25, 2017 01:52 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
viewtopic.php?f=34&t=373 - в основном x86
viewtopic.php?f=39&t=2271 - для МК, но можно рассматривать как вариант общего подхода к ассемблерам


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Сб мар 25, 2017 09:17 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Ср дек 06, 2006 09:23
Сообщения: 660
Благодарил (а): 7 раз.
Поблагодарили: 25 раз.
KPG писал(а):
diver писал(а):
могу скинуть свой асм для avr32 ) в теории с комментариями)

По материалам данной статьи? viewtopic.php?f=34&t=396&start=0


Он самый.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Сб мар 25, 2017 10:44 
Hishnik писал(а):
http://fforum.winglion.ru/viewtopic.php?f=34&t=373 - в основном x86
Хороший пример того, о чем я говорил - ненужности FORTH-ассемблера.
Рассмотрим, например команду ADD общего вида (32-разрядная адресация). Уже байт команды даст нам 4 опкода для разных вариатов (размера данных и направления операции), затем, следует байт адресации (256 вариантов опкодов). 4 * 256 = 1024. Отбросим 8 вариантов байта - специальную комбинацию, требующую дополнительного байта адресации и добавим еще 256 вариантов за новый байт:

4 * (248 + 8 * 256) = 9184 нуль-операндных команд только на простое сложение.

Конечно, коллега Хищник прав, они обычно нафиг не нужны. Будет использоваться только пара другая - для частого или оптимизированного использования. Но, ведь, это и есть отрицание самой идеи ассемблера - возможности получения полного доступа к железу. Так что, игра не стоит свеч. Например, в FOBOS я засунул разработанный по молодости ассемблер (только 16-разрядные операции выкинул). Кстати, ассемблер, хоть и почти FORTH-традиционный, но очень неудобный - пользоваться им могу я один и то, только когда перечитаю исходник. И что? 300 строк - около 10% всей программы. Причем, 10-20 строк до определения этого ассемблера уже пришлось написать честно в кодах. А в дальнейшем используются примерно те же коды, которые коллега ввел, как нуль-операндные. Ради пары другой исключений держать полный ассемблер?

P.S. Моя страничка, кто заметил, сейчас недоступна. Сбой хостинга. Возможно, последний и окончательный...


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Пн мар 27, 2017 22:47 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
gudleifr писал(а):
Хороший пример того, о чем я говорил - ненужности FORTH-ассемблера.

Точно так можно сказать о ненужности чисел в Форте, но не сказали, а ввели преобразование
любой лексемы числа в соответствующий код.
В Форте без проблем можно использовать аналогичный подход к формированию опкодов ассемблера.

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт-ассемблер
СообщениеДобавлено: Пн мар 27, 2017 23:04 
chess писал(а):
Точно так можно сказать о ненужности чисел в Форте, но не сказали
Почему же, сказали.
Например, mOleg (да простит он мне эту ссылку на него) рассматривает их как обычные слова.
А я, наоборот, предпочитаю рассматривать как частный случай регулярных выражений.

chess писал(а):
В Форте без проблем можно использовать аналогичный подход к формированию опкодов ассемблера.
В чем Вы видите "аналогичность"?
Ненужность универсального ассемблера - это просто отказ от никому не нужной работы. Это как добавление asm-скобочек в некоторые кастрированные версии C-компиляторов.


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

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


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

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


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

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