Библиотека knigago >> Компьютеры: Языки и системы программирования >> Forth >> Инструкция по программированию на языке ForthLogic


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 2886, книга: Уж на сковородках
автор: Ревенцына

Ух ты! "Уж на сковородках" - это просто бомба! Ревенцын - гений, нет слов. В этой книге собраны пьесы, которые похожи на самые безумные и абсурдные истории из реальной жизни. Преступления, фарс и черный юмор смешиваются в адскую гремучую смесь. Персонажи - это просто нечто. Убийцы, наркоманы, проститутки - все с такими колоритными характерами, что их невозможно забыть. Они говорят и ведут себя так, как будто сошли со страниц уголовной хроники или дешевого бульвара. И самое крутое в...

Коллектив авторов - Инструкция по программированию на языке ForthLogic

Инструкция по программированию на языке ForthLogic
Книга - Инструкция по программированию на языке ForthLogic.   Коллектив авторов  - прочитать полностью в библиотеке КнигаГо
Название:
Инструкция по программированию на языке ForthLogic
Коллектив авторов

Жанр:

Современные издания стран бывшего СССР, Литература ХXI века (эпоха Глобализации экономики), Программирование: прочее, Forth

Изадано в серии:

неизвестно

Издательство:

неизвестно

Год издания:

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Инструкция по программированию на языке ForthLogic"

Язык программирования Форт (англ. forth вперед и одновременное сокращение от fourth четвертый), который лежит в основе языка ForthLogic™, появился в начале 1970-х гг. в США. Его изобретатель Чарльз Мур сначала применил его для разработки программного обеспечения микро-ЭВМ, которая управляла работой радиотелескопа. Преимущества работы с языком Форт были настолько большими, что вскоре его начали использовать и на других специализированных ЭВМ. Эффективность применения языка Форт подтверждается тем, что он используется наиболее известными грандами индустрии: корпорация Boeing использует встроенный интерпретатор языка Форт в системе авионики (бортового оборудования) самолета Boeing 777; корпорация Tektronix использует язык Форт для серии анализаторов сетевых протоколов K1297 и K1205; корпорация Lockheed Martin использует язык Форт в бортовом оборудовании наземной телеметрической системы SMART для баллистической ракеты Trident 2 D5; корпорация FedEx использует ручной считыватель штрих-кодов SuperTracker со встроенной системой Форт в своем программно-аппаратном комплексе электронного контроля посылок COSMOS II; корпорация General Electric использует язык Форт для серии SONET-коммутаторов JungleMUX; корпорация Europay использует язык Форт при создании программного обеспечения для универсальных кассовых терминалов/считывателей смарт-карт с архитектурой Open Terminal Architecture (OTA); корпорация Sun Microsystems с 1989 г. использует загрузчик OpenBoot (программа типа BIOS) со встроенным интерпретатором языка Форт в своих компьютерах SparcStation и серверах SPARCServer, а корпорация Apple Inc. использует аналогичный загрузчик Open Firmware в своих компьютерах Power Macintosh. Кроме того, язык Форт является стандартным языком управления оборудованием телескопов как на земле так и в космосе.

Читаем онлайн "Инструкция по программированию на языке ForthLogic". [Страница - 5]

F:A,B,A
F:B,C,A
F:B,A

Слово FDUP (от FLOAT DUPLICATE - дублировать) дублирует вершину
математического стека, добавляя в стек еще одно значение, равное тому, которое
было до этого верхним. Слово FDROP (сбросить) убирает верхнее значение. Слово
FOVER (через) дублирует значение, которое расположено на математическом стеке
непосредственно под верхним. Слово FROT (от FLOAT ROTATE - вращать)
циклический переставляет по часовой стрелке (если смотреть на диаграмму) три
верхних значения в математическом стеке. Наконец, слово FSWAP (обменять)
меняет местами два верхних значения.
Также можно работать с любым элементом математического стека с помощью слов:
FPICK
FROLL

F:An,An-1,...,Ao,n ---> F:An,An-1,...,Ao,An
F:An,An-1,...,Ao,n ---> F:An-1,...,Ao,An

Слово FPICK (взять) дублирует n-й элемент математического стека (считая от нуля),
так что 0 FPICK тождественно FDUP, а 1 FPICK тождественно FOVER. Слово FROLL

Версия 2.6

9

(повернуть) циклически переставляет n верхних элементов математического стека
(также считая от нуля) по часовой стрелке (если смотреть на диаграмму), так что 2
FROLL тождественно FROT, 1 FROLL тождественно FSWAP, а 0 FROLL является
пустой операцией.
Чтобы "увидеть" верхнее значение на математическом стеке, используются слова F.
(FLOAT - точка) или FE. (FLOAT ENGINEER — точка) которые снимают значение с
вершины математического стека и печатают его в выходном буфере и на
терминале. В первом случае число печатается с фиксированной запятой в
свободном формате с шестью знаками после запятой (то есть без ведущих нулей и
со знаком минус, если число негативно). Во втором случае число печатается в
инженерном/научном представлении с мантиссой, основой 10 и экспонентой
(например -1,234Е-02; 1,98Е+12). Точность представления чисел при распечатке (то
есть количество цифр после десятичной запятой) можно установить с помощью
системной переменной FPREC, которая, по умолчанию равна 6. Для записи нового
значения в системную переменную FPREC существует слово FPREC!, которое
работает следующим образом: с вершины стека данных снимается число (новое
значение переменной FPREC в диапазоне от 0 до 6) и присваивается этой
переменной. Точность равная 0 означает отсутствие десятичной запятой вообще,
что тождественно преобразованию к целому. Значение системной переменной
FPREC не сохраняется при выключении питания, поэтому при использовании иной,
чем по умолчанию, точности представления чисел при распечатке, эту переменную
следует инициализировать.
Как уже упоминалось, стек представляет собой структуру данных, которая
функционирует по принципу "последний зашел - первый вышел". Такая структура
может пригодится для построения некоторых алгоритмов обработки данных. Для
этого необходимо знать количество элементов данных на стеке, чтобы иметь
возможность выполнить цикл обработки этих данных определенное количество раз.
Для определения количества элементов на стеке данных и математическом стеке,
существуют слова DEPTH (глубина) и FDEPTH (FLOAT глубина), которые кладут на
вершину стека данных количество элементов на стеке данных и на математическом
стеке соответственно:
DEPTH

An,An-1,...,A1

---> An,An-1,...,A1,n

FDEPTH

F:An,An-1,...,A1

---> n
---> F:An,An-1,...,A1

Перечисленные выше слова работают со значениями, которые уже находятся в
стеке. А как занести значение в стек? Язык ForthLogic™ имеет следующее правило
по умолчанию: если введенное слово форт-системе не известно, то прежде чем
сообщать пользователю об ошибке, форт-система пытается понять это слово как
запись числа. Если слово-число состоит из одних цифр с возможным начальным
знаком минус, то ошибки нет: слово считается известным и его действие
заключается в том, что данное число кладется на вершину стека данных. Если
слово-число состоит из одних цифр разделенных десятичной запятой (в
действительности это буква . (точка)) с возможным начальным знаком минус и
возможным научным представлением экспоненты числа (с помощью букв е или Е и
возможным знаком экспоненты минус), то слово также считается известным и его
действие заключается в том, что данное число кладется на вершину
Версия 2.6

10

математического стека.
Для непосредственного переноса чисел из одного стека в другой существуют слова
D>F и F>D. Слово D>F снимает верхнее значение с вершины стека данных и
переносит на вершину математического стека с соответствующим превращением
представления числа. --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.