Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Сб апр 20, 2024 07:34

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 103 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.
Автор Сообщение
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 16:17 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Цитата:
Но as в отличие от fasm'а имеет "непривычный" AT&T синтаксис, лично я же более привык к MASM/TASM/NASM-овскому.

Мне кажется. что синтаксис там переусланавливается опционально


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 16:47 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
вопрос писал(а):
Цитата:
Но as в отличие от fasm'а имеет "непривычный" AT&T синтаксис, лично я же более привык к MASM/TASM/NASM-овскому.

Мне кажется. что синтаксис там переусланавливается опционально


Еще не разбирался, возможно.
Зато прошла успешная сборка на fasm'е: :)
Код:
format ELF64

section '.text' executable

public _start

_start:
   mov   edx,len
   mov   rsi,msg
   mov   edi,1
   mov   rax,4
   mov   r10,rcx
   syscall
   mov   edi,0
   mov   rax,1
   mov   r10,rcx
   syscall
   
section '.data' writeable

   msg db "hello, world",10,0
   len = $-msg


Не уверен что все идеально правильно, но, "hello, world!" печатает и в кору не улетает :)

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 16:48 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Majestic писал(а):
Не уверен что все идеально правильно, но, "hello, world!" печатает и в кору не улетает

А там OpenGL нету, случайно?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 16:53 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
Хищник писал(а):
Majestic писал(а):
Не уверен что все идеально правильно, но, "hello, world!" печатает и в кору не улетает

А там OpenGL нету, случайно?


Упссс... где "там"?

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 17:09 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Majestic писал(а):
Сейчас поставил себе задачу разобраться, как написать свою реализацию Форта, которая в будущем сможет компилить в исполняемый код.

там все очень просто. Всякий раз, когда вы пишете
: name bla bla bla ;
вы включаете процесс компиляции кода. То есть, после выполнения ; (точки с запятой), у вас в памяти уже находится скомпилированный код определения name .

Сохранение образа получается тоже обычно просто, а именно: весь наработанный код сохраняется в исполнимый файл (без каких либо изменений, правится только заголовок). Другие варианты существуют, но они сложнее, поэтому менее популярны.

Majestic писал(а):
Как его использовать из командной строки, как он расширяется ... я не могу разобраться. Такое ощущение, что это чисто скриптовая поддержка исключительно процесса загрузки.

расширяется как обычно через создание новых определений, возможно ли сохранить не в текстовом виде наработанный код не знаю. Впрочем, если он грузится до того, как загрузится ядро, то скорее всего действительно не поможет.
Majestic писал(а):
Возможно я что-то путаю ... Вот пример, nnCron.exe - это виндовый исполняемый файл. Написан же на Форте? А как экзешник был получен? Вот нечто подобное я хочу под Фрю.

Сохранен образ системы целиком, т.е. с кодом исходной Форт-системы.

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



За это сообщение автора mOleg поблагодарил: Majestio
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 17:15 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
mOleg писал(а):
Majestic писал(а):
Возможно я что-то путаю ... Вот пример, nnCron.exe - это виндовый исполняемый файл. Написан же на Форте? А как экзешник был получен? Вот нечто подобное я хочу под Фрю.

Сохранен образ системы целиком, т.е. с кодом исходной Форт-системы.

А можно поподробнее про этот процесс?

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 17:30 
Не в сети
Administrator
Administrator
Аватара пользователя

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

Упссс... где "там"?

В FreeBSD. Чтобы fasm мог ей воспользоваться.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 17:54 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
Хищник писал(а):
Majestic писал(а):
А там OpenGL нету, случайно?

Упссс... где "там"?

В FreeBSD. Чтобы fasm мог ей воспользоваться.


Чисто концептуально, на уровне размышлений: во Фре, как и в Линаксе, используется Xorg - свободная открытая реализация оконной системы X11. Данная оконная система использует DRI (Direct Rendering Infrastucture). При отсутствии каких бы то ни было драйверов - используется софтовый рендеринг. При наличии "драйверов" типа libgl-dri (свободная реализация DRI OpenGL), естественно используется рендеринг OpenGL. Разные конторы, типа ATI, NVidia могут поставлять свои libGL для X-ов.

Как их (графические функции) вызывать, я пока не знаю. Да и вопрос этот для меня второй. Первый и более интересный - наладить вызовы Qt/KDE из fasm'а. Увы, в примерах только видел под GTK. И еще ... вопрос использования Qt/KDE все же более правильный, ибо не зря же настроили программных "прослоек" в иксах, и игнорировать их и использовать более низкоуровневые возможности - не совсем корректно. Имхо.

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 18:01 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
Majestic писал(а):
Да нет, это не ограничение - это цель. Написал на Форте, скомпилил - получил исполняемый модуль.


Какая проблема вызвать ассемблер с линковщиком? Можно их вызвать из форт-системы.
Если очень надо все работу возложить на форт-систему, то все-равно, сперва, лучше
реализовать версию с использованием промежуточного ассемблерного представления.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 18:03 
Не в сети
Moderator
Moderator
Аватара пользователя

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

у меня нет ни времени ни сил объяснять устройство всей системы, поэтому таки рекомендую взять СПФ (ну могу еще свой форк порекомендовать ;) ) и потихоньку разбираться в устройстве, потому что с наскоку Форт не так просто взять.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 18:07 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
Mihail писал(а):
Majestic писал(а):
Да нет, это не ограничение - это цель. Написал на Форте, скомпилил - получил исполняемый модуль.


Какая проблема вызвать ассемблер с линковщиком? Можно их вызвать из форт-системы.
Если очень надо все работу возложить на форт-систему, то все-равно, сперва, лучше
реализовать версию с использованием промежуточного ассемблерного представления.


Немного теряю нить разговора... :oops:
Для чего вызывать ассемблер с линковщиком из форт системы? Форт система будет генерить ассемблерный код?

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 18:09 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
mOleg писал(а):
Majestic писал(а):
А можно поподробнее про этот процесс?

у меня нет ни времени ни сил объяснять устройство всей системы, поэтому таки рекомендую взять СПФ (ну могу еще свой форк порекомендовать ;) ) и потихоньку разбираться в устройстве, потому что с наскоку Форт не так просто взять.


Вы правы, надо посмотреть работающее :D

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 18:10 
Не в сети
Moderator
Moderator
Аватара пользователя

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

В последнее время именно так и происходит, к тому же часто еще и с оптимизацией.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 18:13 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Majestic писал(а):
Как их (графические функции) вызывать, я пока не знаю. Да и вопрос этот для меня второй. Первый и более интересный - наладить вызовы Qt/KDE из fasm'а. Увы, в примерах только видел под GTK. И еще ... вопрос использования Qt/KDE все же более правильный, ибо не зря же настроили программных "прослоек" в иксах, и игнорировать их и использовать более низкоуровневые возможности - не совсем корректно. Имхо.

Может быть, в таком случае имеет смысл писать на gcc? У меня есть варианты Форта и на fasm (win), и на gcc (Qt, win/linux). Не могу сказать, что вариант на gcc оказался провальным по производительности, правда, итоговое приложение на Qt заняло мегабайты по сравнению с ~50 кб для fasm.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth под FreeBSD
СообщениеДобавлено: Вс окт 24, 2010 18:17 
Не в сети
Administrator
Administrator
Аватара пользователя

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

Да-да, даешь вербовку новичков! :)) Глядишь, появится бесплатная рабсила ;) А то объяснишь человеку (который сознался, что он программист), так он ведь напишет самостоятельный продукт под собственные нужды и для решения собственных задач... абыдна!


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

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


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

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


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

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