GeoSELECT.ru



Программирование / Реферат: Синтез речи (Программирование)

Космонавтика
Уфология
Авиация
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Аудит
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника
Бухгалтерский учет
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Инвестиции
Иностранные языки
Информатика
Искусство и культура
Исторические личности
История
Кибернетика
Коммуникации и связь
Компьютеры
Косметология
Криминалистика
Криминология
Криптология
Кулинария
Культурология
Литература
Литература : зарубежная
Литература : русская
Логика
Логистика
Маркетинг
Масс-медиа и реклама
Математика
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Мифология
Москвоведение
Музыка
Муниципальное право
Налоги
Начертательная геометрия
Оккультизм
Педагогика
Полиграфия
Политология
Право
Предпринимательство
Программирование
Психология
Радиоэлектроника
Религия
Риторика
Сельское хозяйство
Социология
Спорт
Статистика
Страхование
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Физика
Физкультура
Философия
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
   

Реферат: Синтез речи (Программирование)


Синтез речи.

1 Ограничения на синтез речи.
Cуществуют различные методы синтеза речи. Выбор того или иного метода
определяется различными ограничениями. Рассмотрим те 4 вида ограничений,
которые влияют на выбор метода синтеза.
. Задача.
Возможности синтезированной речи зависят от того, в какой области она будет
применятся. Когда необходимо произносить ограниченное число фраз ( и их
произнесение линейно не меняется ), необходимый речевой материал просто
записывается на пленку. С другой стороны, если задача состоит в
стимулировании познавательного процесса при чтении вслух, используется
совершенно другой ряд методик.
. Голосовой аппарат человека.
Все системы синтеза речи должны производить на выходе какую-то речевую
волну, но это не произвольный сигнал. Чтобы получить речевую волну
определенного качества, сигнал должен пройти путь от источника в речевом
тракте, который возбуждает действие артикуляторных органов, которые
действуют как изменяющиеся во времени фильтры. Артикуляторные органы также
накладывают ограничения на скорость изменения сигнала. Они также имеют
функцию сглаживания: гладкого сцепления отдельных базовых фонетических
единиц в сложный речевой поток.
. Структура языка.
Ряд возможных звуковых сочетаний опредляется природой той или иной языковой
структуры. Было обнаружено, что еденицы и структуры, используемые
лингвистами для описания и объяснения языка, могут также использоваться
для характеристики и построения речевой волны. Таким образом, при
построении выходной речевой волны используются основные фонологические
законы, правила ударения, морфологические и синтаксические структуры,
фонотактические ограничения.
. Технология.
Возможности успешно моделировать и создавать устройства для синтеза речи в
сильной степени зависят от состояния технико-технологической стороны дела.
Речевая наука сделала большой шаг вперед благодаря появлению различных
технолоний, в том числе: рентгенография, кинематография, теория фильтров и
спектров, а главным образом - цифровые компьютеры. С приходом интегральных
сетевых технологий с постоянно возрастающими возможностями стало возсожно
построение мощных, компактных, недорогих устройств, действующих в реальном
времени. Этот факт, вместе с основательными знаниями алгоритмов синтеза
речи, стимулировал дальнейшее развитие систем синтеза речи и переход их в
практическую жизнь, где они находят широкое применение.

2 Методы синтеза.
Различные подходы могут быть сгруппированы по областям их применения, по
сложности их воплощения.
Синтезаторы делят на два типа: с ограниченным и неограниченным словарем. В
устройствах с ограниченным словарем речь хранится в виде слов и
предложений, которые выводятся в определенной последовательности при
синтезе речевого сообщения. Речевые единицы, используемые в синтезаторах
подобного типа, произносятся диктором заранее, а затем преобразуются в
цифровую форму, что достигается с помощью различных методов кодирования,
позволяющих компрессировать речевую информацию и хранить ее в памяти
синтезирующего устройства. Существует несколько методов записи и компоновки
речи.

. Волновой метод кодирования.
Самый легкий путь - просто записать материал на пленку и по необходимости
проигрывать. Этот способ обеспечивает высокое качество синтезируемой речи,
т.к. позволяет воспроизводить форму естественного речевого сигнала. Однако
этот путь синтеза не позволяет реализовать построение новой фразы, т.к. не
предусматривает обращение к различным ячейкам памяти и вызов из памяти
нужных слов. В зависимости от используемой технологии этот способ может
представлять задержки в доступе и иметь ограничения, связанные с
возможностями записи. Никаких знаний об устройстве речевого тракта и
структуре языка не требуется. Единственно серьезное ограничение в данном
случае имеет объем памяти. Существуют способы кодирования речевого сигнала
в цифровой форме, позволяющие в несколько раз уплотнять информацию: простая
модуляция данных, импульсно-кодовая модуляция, адаптивная дельтовая
модуляция, адаптивное предиктивное кодирование. Данные способы могут
уменьшить скорость передачи данных от 50кбит/сек (нормальный вариант) до
10кбит/сек, в то время как качество речи сохраняется. Естественно,
сложность операций кодирования и декодирования увеличивается со снижением
числа бит в секунду. Такие системы хороши, когда словарь сообщений
небольшой и фиксированный. В случае же, когда требуется соединить сообщения
в более длинное, сгенерировть высококачественную речь трудно, т.к. значения
параметров речевой волны нельзя изменить, а они могут не подойти в новом
контексте. Во всех системах синтеза речи устанавливается некоторый
компромисс между качеством речи и гибкостью системы. Увеличение гибкости
неизбежно ведет к усложнению вычислений.
. Параметрическое представление.
С целью дальнейшего уменьшения требуемой памяти для хранения и обеспечения
необходимой гибкости было разработано несколько способов, которые
абстрагируются от речевой волны как таковой, а представляют ее в виде
набора параметров. Эти параметры отражают наиболее характерную информацию
либо во временной, либо в частотной области. Например, речевая волна может
быть сформирована сложением отдельных гармоник заданной высоты и заданными
спектральными выступами на данной частоте. Альтернативный путь состоит в
том, чтобы форму речевого тракта описать в терминах акустики и
искусственным путем создать набор резонансов. Этот метод синтеза
экономичнее волнового, т.к. требует значительно меньшего объема памяти, но
при этом он требует больше вычислений, чтобы воспроизвести исходный речевой
сигнал. Данный способ дает возможность манипулировать теми параметрами,
которые отвечают за качество речи (значение формант, ширина полос, частота
основного тона, амплитуда сигнала). Это дает возможность склеивать сигналы,
так что переходы на границах совершенно не заметны. Изменения таких
параметров как частота основного тона на протяжении всего сообщения дают
возможность существенно изменять интонацию и временные характеристики
сообщения. Наиболее популярным в наст.вр. методами кодирования в
устройствах, использующих параметрическое представление сигналов, является
метод, основанный на формантных резонансах и метод линейного предсказания
(LPC - linear predictive coding). Для синтеза используются единицы речи
различной длины: параграфы, предложения, фразы, слова, слоги, полуслоги,
дифоны. Чем меньше единица синтеза, тем меньшее их количество требуется для
синтеза. При этом, требуется больше вычислений, и возникают трудности
коартикуляции на стыках. Преимущества этого метода: гибкость, немного
памяти для хранения исходного материала, сохранение индивидуальных
характеристик диктора. Требуется соответствующая цифровая техника и знание
моделей речеобразования, при этом, лингвистическая структура языка не
используется.
. Синтез по правилам.
Описанные выше методы синтеза ориентированы на такие речевые единицы, как
слова, предварительно введенные в устройство с голоса диктора. Данный
принцип лежит в основе функционирования синтезаторов с ограниченным
словарем. В синтезаторах с неограниченным словарем элементами речи являются
фонемы или слоги , поэтому в них применяется метод синтеза по правилам, а
не простая компоновка. Данный метод весьма перспективен, т.к. обеспечивает
работу с любым необходимым словарем, однако качество речи значительно ниже,
чем при использовании метода компоновки.
При синтезе речи по правилам также используются волновой и параметрический
методы кодирования, но уже на уровне слогов.
Метод параметрического представления требует компромисса между качеством
речи и возможностью изменять параметры. Исследователи обнаружили, что для
синтеза речи высокого качества необходимо иметь несколько различных
произношений единицы синтеза (например, слога), что ведет к увеличению
словаря исходных единиц без каких бы то ни было сведений о контекстной
ситуации, оправдывающей тот или иной выбор. По этой причине процесс
синтеза получает еще более абстрактный характер и переходит от
параметрического представления к разработке набора правил, по которым
вычисляются необходимые параметры на основе вводного фонетического
описания.Это вводное представление содержит само по себе мало информации.
Это обычно имена фонетических сегментов ( напр, гласные и согласные) со
знаками ударения, обозначениями тона и временных характеристик. Таким
образом, метод синтеза по правилам использует малоинформационное описание
на входе ( менее 100 бит/сек). Этот метод дает полную свободу моделирования
параметров, но необходимо подчеркнуть, что правила моделирования
несовеншенны. Синтезированная речь хуже натуральной, тем не менее, она
удовлетворяет тестам по разборчивости и понятности. На уровне предложения и
параграфа правила предоставляют необходимую степень свободы для создания
плавного речевого потока.

3 Конвертация текста в речь.
Синтез по правилам требует детального фонетического транскрибирования на
входе. Хотя для запоминания этой информации требуется мало памяти, чтобы
извлечь из нее необходимые параметры, необходимы знания эксперта. Для
конвертации неограниченного английского текста в речь необходимо сначала
проанализировать его с целью получения транскрипции, которая затем
синтезируется в выходную речевую волну. Анализ текста по своей природе
задача лингвистическая и включает в себя определение базовых фонетических,
слоговых, морфемных и синтакисическмих форм, плюс - вычленение
семантической и прагматической информации. Системы конвертации текста в
речь являются наиболее комплексными системами синтеза речи, включающие в
себя знания об устройстве речевого аппарата человека, лингвистической
структуре языка, а также которые должны учитывать ограничения,
накладываемые областью применения системы, технико-технологической базой.
Необходимо заметить, что и текст и речь являются поверхностными
представлениями базовых лингвистических форм, поэтому задача преобразования
текста в речь состоит в выявлении этих базовых форм, а затем в воплощении
их в речи.

4 Система преобразования текста в речь MITalk.
На примере этой системы проиллюстрируем сильные и слабые стороны
коммерческих версий. Разработка системы началась в конце 60-х гг.
Изначально предполагалось разработать читающую машину для слепых, но
система MITalk может применяться в любых ситуациях, где необходимо
преобразовать текст в речь. Система имеет блок морфологического анализа,
правила преобразования буква-звук, правила лексического ударения,
просодический и фонематический синтез.

5 Анализ текста
. Преобразование символов в стандартную форму.
В самых различных текстах можно обнаружить символы и аббревиатуры, которые
не принадлежат к категории " правильно образованных слов". Такие символы
как "%" и "&", аббревиатуры типа "Mr" и "Nov" должны быть преобразованы в
нормальную форму. Были разработаны подробные руководства по
транскрибированию чисел, дат, сум денег. Иногда возникают двусмысленные
ситуации, такие как, например, использование знака дефиса в конце строки.
Человек в таких случаях, чтобы определить подходящее произношение,
обращается к контексту и к практическим знаниям, которые не поддаются
алгоритмизации.
. Морфологический анализ
В вводном тексте границы слов легко определяются. Можно хранить
произношение всех английских слов. Размер словаря будет большим, но в таком
подходе есть несколько привлекательных сторон. Во-первых, в любом случае
необходим словарь слов, произношение которых является исключением из общих
правил. Такими являются, например, заимствованные слова ( parfait,
tortilla). Более того, все механизмы преобразования цепочки букв в
фонетические значки допускают ошибки. Интересный класс исключений
составляют часто употребительные слова. Например, звук /th/ в начале слова
произносится как глухой фрикативный в большинстве слов (thin, thesis,
thimble). Но в наиболее частотных, таких как короткие функциональные слова
the, this, there, these, those, etc. начальный звук произносится как
звонкий. Также /f/ всегда произносится глухо, за исключением слова "of".
Другой пример. В словах типа "shave", "behave" конечный /e/ удлиняет
предшествующий гласный, но в таком частом слове как "have" это правило не
действует. Наконец, конечный /s/ в "atlas", "canvas" глухой, но в
функциональных словах is, was, has он произносится звонко. Таким образом,
приходим к выводу, что все системы должны иметь такой словарь исключений.
Что касается нормальных слов, то здесь имеется два варианта. Первый крайний
случай состоит в том, чтобы составить полный словарь. Хотя число слов
ограничено, составить абсолютно полный словарь невозможно, т.к. постоянно
появляются новые слова. Кроме того, в словарь необходимо будет внести все
изменяемые формы слова. Другой крайний подход состоит в установлении ряда
правил, которые бы преобразовывали цепочки букв в фонетические значки. Хотя
эти правила очень продуктивны, нельзя избежать ошибок, что ведет к созданию
словаря исключений. Чтобы правильно определить фонетическую транскрипцию
слова, нужно правильно разбить слово на структурные составляющие. Было
обнаружено, что важную роль в определении произношения играет морфема,
минимальная синтаксическая единица языка. Система MITalk использует
морфемный лексикон, что может рассматриваться как некоторый компромиссный
подход между двумя крайними, упомянутыми выше. Многие английские слова
можно расчленить на последовательность морфов, таких как префиксы, корни,
суффиксы. Так слово "snowplows" имеет два корня и окончание, "relearn"
имеет приставку и корень. Такие морфы являются атомными составляющими слова
и они относительно стабильны в языке, новые морфы формируются в языке очень
редко. Эффективный лексикон может иметь не более 10,000 морфов. Морфемный
словарь действует вместе с процедурами анализа. Этот подход эффективен и
экономичен, т.к. хранение морфемного словаря не занимает много места, а
хранить все изменяемые формы слова не нужно. Так как морфы являются
основными составляющими слова, проиллюстрируем их полезность при
определении произношения. При соединении морфов они часто меняют свое
произношение. Например, при образовании множественного числа
существительных "dog" и "cat" конечный /s/ будет звонким в первом случае и
глухим во втором. Это пример морфофонемного правила, касающегося реализации
морфемы множественного числа в различных окружениях. Становится очевидным,
что для эффективного и легкого определения произношения нужно распознать
составляющие морфемы слова и обозначить их границы. Еще один плюс
морфемного анализа - обеспечение подходящей базы для использования правил
преобразования буква-звук. Большинство таких правил рассматривают слово как
неструктурированную последовательность букв, используя окно сканирования
для нахождения согласных и гласных кластеров, которые преобразуются в
фонетические значки. Буквы "t" и "h" в большинстве случаев выступают как
единый согласный кластер, но в слове "hothouse" кластер /th/ разрывается
границей двух разных морфем. Гласный кластер /ea/ представляет много
трудностей для алгоритмов буква-звук, но в слове changeable он явно
разрывается. В системе MITalk морфемный анализ всегда проводится перед
правилами преобразования букв в звуки. Лежащие в основе слова морфы не
всегда очевидны. Например, некоторые морфы множественного числа не всегда
легко определить: mice, fish. Подобные формы заносятся в словарь. При
помощи морфемного лексикона и соответствующего алгоритма анализа 95-98%
слов анализируется удовлетворительно. В результате им приписывается
фонетическая транскрипция и часть речи.
. Правила "буква-звук" и лексическое ударение
В системе MITalk нормализованный вводный текст подвергается
морфологическому анализу. Может быть, что целое слово есть в словаре
морфов, как, например, слово "snow". С другой стороны, слово может быть
проанализировано как последовательность соединенных морфов. В английском
языке среднее число морфов в слове, примерно два. В случае, если ни целое
слово не может быть найдено в словаре морфов, ни проанализировано как
последовательность морфов, в этом случае применяются правила преобразования
"буква-звук". Важно подчеркнуть, что этот метод никогда не применяется,
если морфемный анализ удался. Конвертация последовательности букв в
последовательность звуков при помощи этих правил проходит в три этапа.
Первый этап - отделение префиксов и суффиксов. Возможность отделения
аффиксов не такая сильная, как в морфемном анализе, но действует
удовлетворительно. Предполагается, что после отделения префиксов и
суффиксов остается одна центральная часть слова, которая состоит из одного
морфа, подвергаемого затем правилам преобразования.
Второй этап состоит в преобразовании согласных в фонетические значки,
начиная с наиболее длинного согласного кластера до тех пор, пока все
отдельные согласные не будут преобразованы. Последний этап - оставшиеся
гласные преобразуются при помощи контекстов. Гласные преобразуются
последними, потому что это наиболее трудная задача, зависящая от контекста.
Например, гласный кластер /ea/ имеет 14 разных произносительных контекстов
и несколько произношений (reach, tear, steak, leather).
В системе MITalk правила преобразования букв в звуки действуют в паре с
широким набором правил расстановки лексического ударения. Еще 25 лет назад
лингвистам не удавалось обнаружить никакой системы расстановки ударений в
английских словах. В Настоящее время разработан ряд правил, эффективно
справляющихся с этой задачей. Ударения зависят от синтаксической роли
слова, например, прилагательное "invalid" отличается от существительного.
Таких слов немного, но учитывать их необходимо. Кроме того, на некоторые
суффиксы автоматически падают ударения в словах, как, например, в
"engineer". Но бывают более сложные случаи, которые разрешаются применением
циклических правил.
В системе MITalk разработаны несколько наборов таких правил, некоторые из
которых включают в себя до 600 правил. Конечно, большинство из них
употребляются довольно редко. Подразумеваются, что все сильные и
неправильные формы преобразуются на стадии морфологического анализа.
Правила же "буква-звук" используются для преобразования новых и неправильно
написанных слов. Например, слово "recieved" получает правильную
транскрипцию, благодаря этим правилам преобразования.
. Парсинг.
Каждая схема преобразования неограниченного текста в речь должна включать
синтаксический анализ. Необходимо определить синтаксическую роль слова,
т.к. она часто влияет на произношение и ударение. Кроме того синтаксический
анализ важен для определения правильного тонального контура и временных
характеристик. Просодические характеристики важны для синтеза речи, чтобы
она звучала живо и естественно. К сожалению, полный синтаксический анализ
на уровне сложного предложения (clause-level parsing) осуществить нельзя.
Тем не менее, возможно провести синтаксический анализ на уровне фразы
(phrase-level parsing), в результате которого определяется большая часть
необходимой для синтеза речи структуры, хотя в некоторых ситуациях
неизбежны ошибки из-за отсутсвия анализа целого предложения. Встречается
множество синтаксически двусмысленных предложений, таких как "he saw the
man in the park with a telescope", для которых фразовый анализ достаточен.
В английском языке существует ряд синтагматических маркеров, по которым
можно формально разграничить фразы: это вспомогательные глаголы,
детерминативы в номинативных фразах. Система MITalk широко использует это и
проводит высокоточный грамматический анализ (augmented-transition-network
grammas). Фразовый анализ показал удовлетворительные результаты, хотя
эффективный анализатор предложений несомненно улучшил бы работу системы.
Пока анализаторы предложений сталкиваются со значительными трудностями,
когда встречают неполное или синтаксически омонимичное предложение. По
завершении деятельности блока синтаксического анализа система приписывает
словам маркеры функциональных частей речи, отмечает синтаксические паузы
как основу для дальнейшего уточнения произношения, временных харатеристик,
частоты основного тона.
. Модификация ударения и фонологические уточнения.
Последняя фаза анализа состоит в некоторых незначительных поправках к
имеющейся уже фонетической транскрипции на основе анализа контекстного
окружения. Простой пример определения произношения артикля "the", которое
зависит от начального звука последующего слова. Кроме того, на этом этапе
используются некоторые эвристические методы проверки правильного
соотношения общего контура предложения с контурами отдельных слов. На этом
этапе заканчивается подготовка исходного текста собственно к самому
процессу синтеза.

6 Синтез.
Важно осознать, что в системе MITalk не используются готовые речевые волны
даже в параметрическом представлении. Система не хранит параметрические
представления множества морфов или слов. Вместо этого были разработаны
правила контроля параметров, так что можно реализовать любую желаемую
речевую волну на выходе.
. Просодическая рамка.
Первый шаг в создании выходной речевой волны - создание временного контура
и частоты основного тона ( основные корреляты интонации ), на основе
которых строится детальная артикуляция отдельных фонетических элементов.
Распределение ударения, которое было вычислено на стадии анализа, во многом
ответственно за контур временного распределения и тональный контур. Часто
интенсивность принимают за коррелят ударения, тогда как главными ключами
являются длительность и изменения в тональном контуре. Согласные мало
меняются по длительности, в то время как гласные более пластичны и могут
легко сжиматься или растягиваться. Существует также тенденция растягивать
слова на границе основных абзацев предложения, и наоборот, сжимать
интервалы на относительно невыделенных участках. Кроме того, на основе
временной рамки задается частота основного тона (или тональный контур). В
утвердительных предложениях обычно высота тона резко поднимается на первом
ударном слоге, затем плавно снижается до последнего ударного слога, где она
резко падает. Вопросительные и повелительные предложения имеют различные
тональные контуры. Кроме целостного контура предложения существуют еще
локальные ударения. Большее ударение получают слова, выражающие отрицание
или сомнение ( например, слово might ), значение частоты основного тона на
них возрастает; новая информация в предложении также больше выделяется
ударением. С другой стороны, высота тона используется в семантических и
эмоциональных целях, что не может быть выведено из письменного текста.
Необходимо лишний раз подчеркнуть важность составления правильного
просодического контура, т.к. неправильный просодический контур может
привести к трудностям в восприятии.
. Синтез фонетических сегментов.
Когда завершено создание просодической рамки, создаются параметры,
соответствующие модели речевого тракта. Обычно таких параметров 25, которые
изменяются с интервалом 5 - 10 мсек. В настоящее время используются около
100 контекстных правил описания траектории изменения параметров. Когда
значения параметров вычислены, они должны быть перенесены на
соответствующую модель речевого тракта (обычно это формантная модель или
LPC-модель). Выходная дискретная модель создается обычно на частоте 10 Кгц.

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




Реферат на тему: Система Clipper
Система CLIPPER.

CLIPPER - это созданная фирмой Nantucket Corp. система
программирования приложений в среде БД, включающая в себя быстрый
компилятор программ, написанных на языке, близком к языку СУБД dBaseIII
PLUS, редактор связей, развитый интерактивный символический отладчик,
обладающий пользовательским интрефейсом в стиле меню, который можно
связать с разрабатываемой программой для облегчения ее отладки, большую
библиотеку объектных модулей системных функций, а также ряд служебных
программ (утилит).
Система Clipper представляет собой, по существу, СУБД компилирующего
типа с автонотным (self-contained) языком, в значительной мере
совместимую по входному языку программирования и организации базы данных с
СУБД dBaseIII PLUS. Основная цель разработки этого програмного
продукта - достижение более высокой производительности прикладных систем
по сравнению с созданными с помощью средств dBaseIII PLUS. Эта задачп
решается благодаря использованию на стадии исполнения заранее
скомпилированного кода вместо интерпретации исходных программ, а также за
счет более эффективных механизмов индексирования файлов БД.
Clipper работает в среде операционной системы MS DOS
версии 2.0 и выше. В результате компиляции текстов программ на исходном
языке он порождает загрузочные программные модули, не требующие каких-либо
системных срдств на стадии исполнения.
Тем самым разработанная п/п полностью "отчуждается" от
инструментальных средств его разработки, может распространяться независимо
от них, и пользователь такой п/п избавляестя от необходимости изучать этот
инструментарий.
Допускается декомпозиция программных модулей на составные
части, из которых на стадии редактирования можно сформировать модули
оверлейной структуры. Разработка крупных приложений значительно
облегчается благодаря технологии сепаратной компиляции их компонентов.
Clipper обеспечивает высокую скорость не только при исполнении
программ, но и на стадии их компиляции. Система польностью совместима
с системой dBaseIII PLUS по организации файлов БД. Однако индексные
файлы в системе Clipper имеют иную более эффективную организацию, что
наряду с компиляцией способствует существенному повышению
производительности программ на стадии исполнения. Индексные файлы dBaseIII
PLUS подменяются файлами системы Clipper аналогичного назначения
автоматически на стадии исполнения либо заблаговременно с помощью
специальной утилиты.
В языке программирования системы Clipper отсутствуют такие
полноэкранные команды языка dBase, как ASSIST, BROWSE, EDIT, имеются
ограничения на использование функции макроподстановки (&). Значением
сторковой переменной, к которой применяется эта функция, не может быть,
в частности, полная команда или фраза команды с ключевым словом, а также
список имен полей записи файла БД или других объектов языка с разделителями-
запятыми. Вместе с тем в язык введены многие расширения. К их числу (в
летней версии 1987 г.) относятся возможности работы с массивами
переменных, которые могут объявляться при необходитости глобальными
величинами, спецификации эункций, определяемых пользователем,
возможности обращения к функциям на языках Си и ассемблере с передачей им
параметров, средства программирования пользовательских интерфейсов,
построенных в стиле меню, сохранения и восстановления изображений,
показанных на экране, большое количество новых функций различного
назначения, в частности, для операцийнад строками.
В языке Clipper предусматриваются средства блокирования файлов и
записей файлов БД, необходимые для использования программ на этом языке
в мультипользовательской среде сетевых систем БД. Введены новые
синтаксические конструкщии, например циклы FOR...NEXT, новая фраза
VALID для верификации данных,
вводимых с помощью команды GET, и ряд других.
К пользовательской программе можно легко подключить процедуру
HELP, обеспечивающую глобальную и контекстно-зависимую помощь. Эта
процедура вызывается на стадии исполнения традиционным нажатием
функциональной клавиши F1. При этом ей автоматически передаются необходимые
параметры.
Clipper включает, как уже указывалось, весьма богатые системные
библиотеки функций различного характера, существенно обогащающих язык,
позволяющих значительно сокращать затраты времени на прикладное
программирование и уменьшать объем исходного кода. В летней версии 1987 г.
предусмотрено около ста различных функций для анализа состояния системы,
операций с массивами, для вычисления элементарных математических функций,
операций над строками, редактирования данных, для создания файлов DOS и
выполнения операций над ними, работы со значениями полей типа Memo в
записях фаийлов БД и для других целей.
Кроме того, пользователь имеет возможность создавать и использовать
собственные библиотеки функций.
Что касается системных библиотек, то Nantucket Corp. постоянно
расширяет их состав. В 1988 г. был дополнительно включен ряд новых
функций, кроме того, фирма начала поставлять пакет Clipper
предназначенного для использования совместно с системой Clipper. Пакет
содержит большую новую структуризованную библиотеку функций и расширенный
драйвер экранов и клавиатуры, призванный заменить имеющийся в системе
Clipper драйвер. Эти функции и драйвер могут вкючалься в приложение на
стадии редактирования.
Все функции библиотеки обладают высокой производительностью и
предъявляют минимальные требования к оперативной памяти. Они реализованиы
на языке ассемблера и оптимизированы. Библиотека пакета включает ряд
функций для конструирования многооконных пользовательских интерфейсов, для
непосредственной работы с оборудованием, подлюченным к последовательному
интерфейсу ПЭВМ, минуя BIOS и обращиния к DOS.
Предусмотрена большая группа строковых функций, функций для
преобразования числовых значений и битовых операций, операций над датами
и временем, установки системных переключателей и получения информации об
их состоянии, а также о характеристиках и состиянии операционной
обстановки, видеофункций, функций для работы с дисками, файлами БД и
принтером. Всего библиотека пакета включает более 270 различных функций.
Важным достоинством системы Clipper является возможность
использования дополнительной (свыше 640 Кбайт) памяти персонального
компьютера при исполнении разработанных его средствами п/п.
Вместе с тем система Clipper обладает и существенным недостатком -
порождаемые ею загрузочные модули довольно велики по объему. Один из
способов преодоления этого изъяна - придоставляемые пакетом возможности
конструирования программных модулей с оверлейной структурой. Однако
как "цельнотянутый" загрузочный модуль, так и корневой сегмент модуля с
оверлейной структурой не могут быть размером менее 110Кбайт, поскольку в
них включаются все необходимые элементы системной среды и функции стадии
исполнения.
К числу недостатков этого продукта следует, вероятно, отнести также
отсутствие комфортной среды для эффективной разработки и отладки Clipper-
программ. Имеется в виду среда подобная той, которой обладают, например,
Турбосистемы программирования фирмы Borland Int. Входящий в состав системы
Clipper симвалический отладчик является лишь одной из составных частей
такой среды.
Проблему сокращения объема требуемой оперативной памяти и уменьшения
размеров загрузочных модулей фирма Nantucket Corp. решила в новой версии
системы - Clipper 5.0. Для этой цели в состав нового программного
продукта включается динамический редактор связей - загрузчик,
основанный на механизмах
виртуальной памяти и тем самым вообще исключающий необходитость
использвания оверлейной структуры при создании больших программных
модулей.
Версия Clipper 5.0 обладает и другими важными достоинствами.
Пользователь (программист-разработчик прикладных
систем) может расширять язык новыми командами и благодаря этому формировать
множества команд, удобные для программирования специфических классов задач.
Предусматриваются новые типы переменных, а также многомерные массивы.
Разработана машино-ориентированная документация, к которой возможен доступ
в режиме on-line с помощью Guide to Clipper или Norton Guide.





Новинки рефератов ::

Реферат: Социальная работа с детьми инвалидами (Педагогика)


Реферат: Германия - инициатор двух мировых войн. Причины и последствия (Политология)


Реферат: Анализ методов оценки сцепления пригара на стальном литье (Металлургия)


Реферат: Структура файловой системы Linux и UNIX (Компьютеры)


Реферат: Природа в Философии (Философия)


Реферат: Борьба концепций в процессе становления и развития науки о свете (Естествознание)


Реферат: Доколумбовы цивилизации Америки (История)


Реферат: Философия Техники (Философия)


Реферат: Глобальные проблемы мирного освоения космоса (Авиация)


Реферат: Функции общения (Социология)


Реферат: Индивидуализация и дифференциация образовательного процесса как условие развития личности современного школьника (Педагогика)


Реферат: Летний сарафан (Технология)


Реферат: Вычислительные сети и телекоммуникации. Интернет провайдер: Magelan (Программирование)


Реферат: АПК России (Сельское хозяйство)


Реферат: Металлургические процессы при сварке (Технология)


Реферат: Ушаков Федор Федорович, русский флотоводец, адмирал (Исторические личности)


Реферат: Основные направления социальной защиты населения России (Социология)


Реферат: Контент-анализ "Городские новости радио "Европа плюс Шахты" (Социология)


Реферат: Памятники саргатской культуры как источник для реконструкции социально-экономических отношений и мировоззрения населения (Культурология)


Реферат: Долгосрочное финансовое планирование (Менеджмент)



Copyright © GeoRUS, Геологические сайты альтруист