Cтраница 3
Вывод данных и ввод их в машину осуществляются операторами LIBRARY OUT и LIBRARY IN соответственно. Выводятся те же данные, что распечатываются оператором Т &. Необходимо знать, что ввести в машину два файла с программами в языке Фокал невозможно, даже если у программ не совпадают номера строк, поэтому в рамках языка невозможна сшивка программ в ОЗУ. [31]
Для мини - ЭВМ объем ПО значительно меньше, ОС много проще. Из алгоритмических языков наиболее часто применяется Фортран, а также более простые языки Бейсик и Фокал. Область применения для каждой установленной мини - ЭВМ достаточно определенна и узка, поэтому разработка специализированного прикладного программного обеспечения ( ППО) ложится на пользователей. [32]
Еще одна директива позволяет вернуться из пускового монитора в Фокал. Эта директива приводит к перезапуску системы, и все содержимое ОЗУ будет уничтожено. Директива Т переводит в режим тестов и отладки из пускового монитора и соответствует оператору Р Т в Фокале. Далее необходимо перейти на заглавные русские буквы и набрать ТС. [33]
Язык Фокал БК0010 оперирует с переменными. Имя переменной может состоять из латинских заглавных букв и цифр. На первом месте может стоять только буква, причем не F. Фокал фиксирует переменные только по первым двум символам. Переменные, не начинающиеся с буквы А, могут использоваться в операторах в качестве номеров строк. Фокал отводит под переменную четыре слова ( 8 байт), из них одно - под два первых символа имени, одно - под два индекса, два - под значение. [34]
Кроме того, имеются функции обращения непосредственно к системной магистрали, что позволяет управлять любыми внешними устройствами, к ней подключенными. Фокал удобен для микроЭВМ с малым объемом памяти. Его называют системой программирования, потому что в ней для создания, отладки и выполнения программы пользователя применяются одни и те же средства. [35]
Основным языком БК0010 является язык Фокал. Вместе с тем существует возможность работы на этом компьютере и с другими языками, в частности с языком Бейсик. Эта возможность может быть реализована двумя различными способами. Для ЭВМ, имеющих только ПЗУ с интерпретатором языка Фокал, транслятор для Бейсика может быть загружен в оперативную память. Наилучшей, с нашей точки зрения, версией является транслятор Бейсик 87, занимающий около 9 кбайт в оперативной памяти. Транслятор позволяет воспользоваться весьма урезанным вариантом языка с возможностями, сходными с возможностями Фокала. Дополнительной возможностью является работа с текстовыми константами. В отличие от чистого интерпретатора Фокала транслятор Бейсика компилирует весь текст программы во внутренний формат Бейсик-системы, что приводит к значительному ускорению времени счета. Так, одна и та же задача по программе расчета брутто-формул потребовала 15 мин для решения Фокала и 41 с - на Бейсике. Богатейшими возможностями, но не очень высокой скоростью работы отличается версия языка Бейсик, поставляемая заводом в сменном ПЗУ. Эта версия близка к известному языку Бейсик-MSX. Имеется достаточно литературы по языку Бейсик, поэтому ограничимся кратким описанием версии. [36]
Авторы намеренно не приводят программ на языках микро - ЭВМ, соответствующих предлагаемым программам для ПМК. Используя описанные алгоритмы, читатель без труда может составить нужные ему программы, способные на микро - ЭВМ обрабатывать значительно большие массивы данных со значительно большей скоростью, ориентируясь на конкретный вариант задачи. Помимо ознакомления с алгоритмами, приведенными в первой части, читателю необходимо для этого овладеть и языком программирования микро - ЭВМ. Обычно для таких задач используют один из диалоговых языков - Бейсик или Фокал. [37]
Разумеется, все сказанное относится не только к нашему PROLAN / F: скажем, рекурсивные описания были разрешены в процедурном языке Алгол-60 ( 1960 г.) и их возможность стала после этого обязательным свойством для любого взрослого языка. Заметим во избежание казусов, что при ( полной) рекурсии необходимо выполнение в процедурных ( алгоритмических) языках двух требований. Хотя в таких языках, как, скажем, Фортран, Бейсик, Фокал, и возможно обращение из процедуры к ней самой ( в Фортране - с небольшой хитростью), однако вызванный экземпляр будет работать с теми же переменными, что и вызвавший. [38]
В различных языках он может иметь разную форму. В языке Алмир - это будет ВЫВОД, который может быть сокращен до ВЫВ. В языке Бейсик в качестве оператора вывода служит PRINT, а в языке Фокал TYPE. В той или иной форме, но оператор вывода результата обработки информации обязательно должен быть в каждой программе, иначе решение задачи не имеет смысла. [39]
Программы ФОНОМ и ФОСБОР написаны в позиционно-не-зависимом коде. Это означает, что при загрузке в память ЭВМ их можно сдвигать относительно адреса 36000 в заголовке файла. Это позволяет для удобства загрузить обе программы одновременно в ОЗУ при компоновке многосегментных программ и соответственно просто запускать то одну, то другую. Естественно, необходимо следить, чтобы программы не перекрылись между собой и не произошло наложения на текст рабочих программ на Фокале. [40]
Мы специально это сделали, чтобы подчеркнуть, что в книге использоваться различные версии этого языка. Словарь Н инонимов Бейсика, помещенный в конце книги, поможет в разобраться. В него добавлены служебные слова и из другого языка, распространенного на больших ЭВМ, - из Фортрана. Можно назвать еще ряд алгоритмических языков, применяемых для решения инженерных задач на ЭВМ: Фокал, Си, ПЛ, ЛИСП и др. В ряде случаев в инженерных расчетах очень эффективно применение программируемых микрокалькуляторов. [41]
Язык Фокал БК0010 оперирует с переменными. Имя переменной может состоять из латинских заглавных букв и цифр. На первом месте может стоять только буква, причем не F. Фокал фиксирует переменные только по первым двум символам. Переменные, не начинающиеся с буквы А, могут использоваться в операторах в качестве номеров строк. Фокал отводит под переменную четыре слова ( 8 байт), из них одно - под два первых символа имени, одно - под два индекса, два - под значение. [42]
Основным языком БК0010 является язык Фокал. Вместе с тем существует возможность работы на этом компьютере и с другими языками, в частности с языком Бейсик. Эта возможность может быть реализована двумя различными способами. Для ЭВМ, имеющих только ПЗУ с интерпретатором языка Фокал, транслятор для Бейсика может быть загружен в оперативную память. Наилучшей, с нашей точки зрения, версией является транслятор Бейсик 87, занимающий около 9 кбайт в оперативной памяти. Транслятор позволяет воспользоваться весьма урезанным вариантом языка с возможностями, сходными с возможностями Фокала. Дополнительной возможностью является работа с текстовыми константами. В отличие от чистого интерпретатора Фокала транслятор Бейсика компилирует весь текст программы во внутренний формат Бейсик-системы, что приводит к значительному ускорению времени счета. Так, одна и та же задача по программе расчета брутто-формул потребовала 15 мин для решения Фокала и 41 с - на Бейсике. Богатейшими возможностями, но не очень высокой скоростью работы отличается версия языка Бейсик, поставляемая заводом в сменном ПЗУ. Эта версия близка к известному языку Бейсик-MSX. Имеется достаточно литературы по языку Бейсик, поэтому ограничимся кратким описанием версии. [43]
В основе программных средств машинной графини использована c cieua программирования ФОКАЛ. Выбор этого языка был обусловлен рядом преимуществ по сравнению с языками ФОРТ, БЕЙСИК, ФОРТРЛН-1У. ФОКАЛ имеет простой синтаксис, легок в освоении. Наличие составного номера строки программы облегчает ее редактирование. Компактность программы интерпретатора, объем которой не превышает 4К слов позволяет записывать интерпретатор в одну микросхему ППЗУ. Главным преимуществом ФОКАЛа является то, что в язык включены средства для работы с графической информацией, реализованные с помоадю десяти встроенных аункций. [44]
Основным языком БК0010 является язык Фокал. Вместе с тем существует возможность работы на этом компьютере и с другими языками, в частности с языком Бейсик. Эта возможность может быть реализована двумя различными способами. Для ЭВМ, имеющих только ПЗУ с интерпретатором языка Фокал, транслятор для Бейсика может быть загружен в оперативную память. Наилучшей, с нашей точки зрения, версией является транслятор Бейсик 87, занимающий около 9 кбайт в оперативной памяти. Транслятор позволяет воспользоваться весьма урезанным вариантом языка с возможностями, сходными с возможностями Фокала. Дополнительной возможностью является работа с текстовыми константами. В отличие от чистого интерпретатора Фокала транслятор Бейсика компилирует весь текст программы во внутренний формат Бейсик-системы, что приводит к значительному ускорению времени счета. Так, одна и та же задача по программе расчета брутто-формул потребовала 15 мин для решения Фокала и 41 с - на Бейсике. Богатейшими возможностями, но не очень высокой скоростью работы отличается версия языка Бейсик, поставляемая заводом в сменном ПЗУ. Эта версия близка к известному языку Бейсик-MSX. Имеется достаточно литературы по языку Бейсик, поэтому ограничимся кратким описанием версии. [45]