Техника - молодёжи 1994-04, страница 62

Техника - молодёжи 1994-04, страница 62

HELP

Software

...Enterprise просто потрясает своими потенциальными возможностями! Обычная, казалось бы, бытовая машина нашпигована поддержкой огромного количества периферийных и встроенных устройств. Взять хотя бы локальную сеть с групповой и индивидуальной пересылкой сообщений и файлов. Довольно необычна концепция ка-налъно-ориентированной операционной системы. Руководство по BASIC'y написано легко, с юмором и читается как приключенческий роман... Но информации не хватает. Меня интересуют аппаратное обеспечение, описание системы, программы-отладчики, ассемблеры, редакторы, языки программирования...

Дмитрий Платонов, г. О м с к

Считаю, что «ТМ» должна больше внимания уделять Enterprise. Хотя бы одна страничка в номере! Ведь мы, владельцы «Энтера», будто на необитаемом острове. Машина мощная, но как использовать все ее «изюминки»?

Алекс Чернявский, Беларусь, г. Крупки

Письма и звонки читателей убеждают: редакция поступила правильно, расширив рубрику HELP и посвятив изрядную часть ее компьютеру Enterprise. В «ТМ» № 2 и 3 за этот год мы привели разводку основных его разъемов. Теперь с hardware («железа») временно переключимся на software (матобеспечение). Начнем с языков программирования. Об одном из них — широко известном среди профессионалов Форте — рассказывает по нашей просьбе инженер-программист Дмитрий ИВАЩЕНКО.

«ЧЕТВЕРТЫМ БУДЕШЬ?» Форт был создан в начале 70-х американцем Чарлзом Муром для управления радиотелескопом и обработки полученных данных. Существующие языки исследователя не удовлетворили, и Мур написал свой собственный — быстрый, компактный, гибкий и наращиваемый язык «четвертого поколения». Почему и назвал свое детище «Fourih» (по-англииски «четвертый»). Но так как система управления файлами, с которой работал Мур, допускала имена лишь из 5 букв, название было сокращено: «Forth».

У всякого языка есть свое слабое место. Ассемблер отличается высоким быстродействием, но может быть применен только на одном типе процессора, труден в изучении и требует близкого знакомства с аппаратной частью. Бейсик, напротив, легко изучить, и он используется большинством компьютерных систем, но работает слишком медленно и к тому же имеет много диалектов. Форг удачно соединил быстроту машинно-ориентированного и простоту и наглядность языка высокого уровня.

После нескольких модификации расширенная версия Forth-83 была принята как Форт стандарта ANSI. Практически все компьютерные системы обзавелись собственным Форгом. Программисты фирмы Intelligent Software Ltd, разработавшие базовое системное обеспечение ПК Enterprise, создали версию IS-FORTH, которая соответствует стандарту Forth-83, но дополнительно содержит свыше ста слов, добавленных специально для использования уникальных возможностей аппаратной части и операционной системы данного компьютера.

Фор г включает в себя компилятор, интерпретатор, язык ассемблера, операционную систему. Неотъемлемая принадлежность Форта — особая концепция разработки программного обеспечения. Производительность программ на этом языке составляет примерно половину производительности программ, написанных на ассемблере, и в скомпилированном виде они занимают мало места в запоминающем устройстве компьютера. Поэтому Форт весьма привлекателен для машин со сравнительно небольшой памятью — особенно в области управления процессами, сбора и обработки данных в реальном масштабе времени, создания игр, графических программ, а также в учебных целях — для развития нетрадиционного программистского мышления.

Главная идея Форга состоит в том, чтобы обеспечить пользователя некоторым количеством основных команд, так называемых слов, которые можно комбинировать для производства более мощных. Основываясь на них, можно образовать еще более сложные, и так до тех пор, пока не будет получено такое слово, которое осуществит требуемую функцию. При определении новых слов происходит их компиляция и занесение в словарь. Наряду с этим команды могут быть определены и на уровне мнемоники ассемблера с помощью ассемблера Форта. Чтобы исполнить любое слово, достаточно набрать его на клавиатуре. Результат появится немедленно.

Для выполнения арифметических действий в Форте применяется стек и постфиксная запись, называемая гак потому, что знак операции располагается после чисел, например, 5 плюс 4 записывается 5 4 + . Такой способ записи несколько необычен, но бояться тут нечего. Если у вас есть программируемый калькулятор, то постфиксная запись вам уже хорошо знакома Используя стек, можно записать математическое выражение любой сложности.

Еще одна характерная черта Форга — краткость основных слов. Например, вывод на экран обозначается одной точкой, начало определения нового слова — двоеточием. Но слова, используемые сравнительно редко, обозначаются полным именем.

Для обеспечения компактности и быстродействия программ в стандартном Форге исключены арифметические операции с плавающей точкой. Но такие вычисления необходимы лишь для достаточно узкого круга задач, обычно бывает достаточно целых чисел. При необходимости в Форге применяются команды масштабирования, с помощью которых можно производить

ч

вычисление дробных величин. Числа в Форте могут быть в любой системе счисления.

Форт, помимо основной, располагает собственной операционной системой, которая позволяет записывать текст программы в отдельные блоки и затем загружать их по мере необходимости в произвольном порядке. В IS-FORTH максимальный объем текста программы в дисковой версии может достигать 254 Кбайт!

Сравним скорость Форта и Бейсика на простом примере:

IS-BASIC IS-FORTH

10 FOR Х=0 ТО 9999 : TEST 9999 0 DO LOOP ;

20 NEXT X

Время выполнения соответственно 18 с и 1 с! Как более сложный пример приведем процедуру вывода на экран дампа памяти в шестнадцатеричном и символьном виде.

IS-BASIC 100 LET D$=«0123456789ABCDEF» 110 INPUT ADDR

120 FOR I=ADDR TO ADDR+63 STEP 8 130 PRINT SHES$(I);" "; 140 FOR J=0 TO 7 150 LET C$=SHES$(PEEK(I+J)) 160 PRINT C$(3:);" "; 170 NEXT J 180 FOR J=0 TO 7 190 LET C=PEEK(I+J) BAND 127 200 IF C<32 THEN LET C=32 210 PRINT CHR$(C), 220 NEXT J 230 PRINT 240 NEXT I

250 DEF SHES$(W)=D$(DIV(HI(W),16)+1) &D$((HI(W) BAND 15)+l)&D$(DIV(LO(W), 16)+l)&D$((LO(W) BAND 15)+1) 260 DEF DIV(X,Y)=INT(X/Y) 270 DEF HI(W)=ORD(WORD$(W)(2)) 280 DEF LO(W)=ORD(WORD$(W)(l))

IS-FORTH

HEX : DUMP CR

8 0 DO

DUP 0 <# # # # #S #> TYPE 2 SPACES DUF 8 0 DO

DUP C@ 0 (# # #S #> TYPE SPACE 1+ LOOP DROP 8 ODO

DUP C@ 7F AND DUP

20<IF

DROP 20

THEN

EMIT 1+

LOOP

CR

Время выполнения на IS-BASIC — 20 с, на IS-FORTH - 3 с.

ПРОГРАММЫ ДЛЯ КОМПЬЮТЕРОВ:

IBM-совместимые, МС-0511 (УКНЦ), БК»0010(01), БК-П(М), Контроллеры, ПЗУ. 189&10, Г.Ломоносов, а/я 649, А.В Молчанову (для получения каталога укажите на конверте тип ЭВМ и вложите конверт с марками).

Для удобства расчета стоимость предлагаемых ниже товаров и услуг приведена в долларах США. Оплата производится в рублях по курсу ЦБ РФ на момент покупки или отправления денежного перевода. КЛУБ ЭЛЕКТРОННЫХ ИГР (123481, Москва, а/я 82 «Техника - молодежи») ршшш

- ПРОДОЛЖАЕТ РАСПРОДАЖУ КОМПЬЮТЕРОВ АНГЛИЙСКОЙ СБОРКИ ENTERPRISE128 в комплекте с магнитофоном, картриджем с: интерпретатором JS-BASIC, демонстрационной и игровой кассетами. Стоимость комплекта -130$. Тел. (0951 285-16-87. 285-88-48;

- ПРЕДЛАГАЕТ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ ENTERPRISE 128 В ОТДЕЛЬНЫХ КАРТРИДЖАХ: графические редакторы, текстовый процессор PALEX, игровые картриджи, прикладной картридж PASMON с кассетными приложениями (игры, техническое описание операционной системы на русском языке и др.). Стоимость одного картриджа {без кассетных приложений) 10-15$. Тел. (095) 285-88-48;

- ПРЕДЛАГАЕТ ПРОГРАММЫ ДЛЯ ENTERPRISE 128 НА КОМПАКТ-КАССЕТАХ И ДИСКЕТАХ; игры; языки программирования (в том числе

LISP и FORTH с подробными описаниями на русском языке); прию"^ ные и системные программы (цветной эмулятор- конвертор Спект',. лум SP 2.1 с приложением игр, русификатор ABC для всех стандартны* сред Enterprise, многофункциональный текстовый процессор RED 1.4 и др.), а также справочник по iS-BASIC на руссчом языке. Тел. (095) 285-88-01

- ПРОИЗВОДИТ РЕМОНТ КОМПЬЮТЕРОВ ENTERPRISE. Тел. (095) 285-88-48;

Компьютеры, картриджи и кассетные приложения к ним можно приобрести в редакции по адресу: Москва, ул. Новодмитровская, 9-й этаж, к. 907Б; кассеты и дискеты с программным обеспечением - к. 903. Проезд до ст. метро «Дмитровская». Пересылка по почте не произ-II водится, eiiflll ■ Шшй&ШШъШШЁ'

~ ПРЕДЛАГАЕТСЯ НА ДИСКЕТАХ КОМПЬЮТЕРНОЕ ПРИЛОЖЕНИЕ К «та» «КАК ЗАЩИТИТЬ ИНФОРМАЦИЮ (пособие по борьбе с хакерами)»: дискета с текстом брошюры + дискета с программами и исходными текстами (для ПК, совместимых с IBM PC/XT/AT). Стоимость комплекта в редакции -1,3$. Для получения приложения необходимо отправить перевод на сумму (с учетом почтовых расходов'/: для жителей России - 1,4$, стран СНГ - 2,0$ - по адресу: 123481, Москва, а/я 82, ^.онюшкову А.А.

По этому же адресу принимаются заявки на объявления. К тексту приложите квитанцию почтового перевода из расчета 0,5$ за слово (для частных лиц) и 1$ за слово для организаций.

60