Библиотека стандартных подпрограмм

СРЕДСТВА СОЗДАНИЯ КОМПЬЮТЕРНЫХ ПРОГРАММ

 

Контрольная работа по информатике за 1 курс

 

Миасс


 

СРЕДСТВА СОЗДАНИЯ КОМПЬЮТЕРНЫХ ПРОГРАММ

Те́кстовый реда́ктор — самостоятельная компьютерная программа или компонент программного комплекса, предназначенная для создания и изменения текстовых данных вообще и текстовых файлов в частности.

Компиля́тор —программа, предназначенная для проведения трансляции машинной программы с проблемно-ориентированного языка на машинно-ориентированный язык.

Компоновщик (также реда́ктор свя́зей, линкер)— программа, которая производит компоновку: принимает на вход один или несколько объектных модулей и собирает по нимисполнимый модуль.

Библиотека стандартных подпрограмм - совокупность подпрограмм, составленных на одном из языков программирования и удовлетворяющих единым требованиям к структуре, организации их входов и выходов и описаниям подпрограмм.

 


 

1.Те́кстовый реда́ктор

Условно выделяют два типа редакторов.

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

Общие принципы работы текстовых редакторов

§ ввод текста;

§ редактирование;

§ форматирование.

Редактирование - это внесение изменений, исправлений и дополнений в текст.

Обычно действия с текстом документа, которые изменяют шрифт символов, положение текста на странице, а также расстояние между строками и так далее, называют форматированием.

Другими словами, форматирование - изменение внешнего вида текста.

Создание любого текстового документа можно условно разделить на три этапа.

Первый этап - ввод текста документа, второй - форматирование документа, третий - сохранение и вывод на печать.

В любой момент можно прервать создание или редактирование документа, предварительно сохранив сделанные в нем изменения на жестком диске компьютера, и вернуться к работе над документом позже.

Основные возможности текстовых редакторов

§ создание таблиц;

§ вставка в текст рисунков и других объектов: видеоклипов, звука;

§ создание схем и чертежей;

§ вставка символов и формул;

§ создание списков (нумерованных, маркированных, многоуровневых);

§ создание колонок;

§ выполнение обтекания рисунков

§ и другое

Текстовые процессоры обеспечивают пользователя ПК средствами создания, обра­ботки и хранения документов различной степени сложности. Они позволяют не только набирать текст, но и оформлять его: произвольно размещать на странице, выделять шрифтами, цветом, вставлять рисунки, давать звуковое сопровождение и т.д. В качестве примеров текстовых процес­соров назовем Microsoft Word, Word Perfect, Лексикон.[1]

Компиляторы.

Компиляторы — это программы, которые преобразуют исходные тексты программ, написанные на языке программирования высокого уровня, в программу на машинном языке, «понятную» компьютеру. Полученный код, называемый исполняемой программой, можно устанавливать и запускать на нужном компьютере без дополнительных преобразований.

Причиной вновь вспыхнувшего интереса к компиляторам стало появление быстрых и сложных 64-разрядных микропроцессоров, типичным представителем которых можно считать Intel Itanium. Все усовершенствования в архитектуре процессоров, такие как распараллеливание и предсказание ветвления, а также возможность резкого увеличения производительности, окажутся бесполезны до тех пор, пока программисты не начнут их реально использовать.

Забота о создании кода, ориентированного на эффективную параллельную обработку, серьезно усложняет и без того непростую задачу современного программирования. В итоге ответственность за увеличение производительности, на которое потенциально способны будущие 64-разрядные процессоры, ложится на компиляторы нового поколения.

Компиляторы, которым предстоит обеспечить значительное увеличение скорости вычислений, уже создаются в исследовательских лабораториях ряда компаний — Hewlett-Packard, Intel, MetaWare, Microsoft и других. В феврале прошлого года компания Silicon Graphics объявила о том, что ее оптимизированные компиляторы позволяют увеличить на 30-100% по сравнению с существующими продуктами производительность программ, работающих накомпьютерах с процессорами Itanium и операционной системой Linux.

Как и их предшественники, оптимизированные компиляторы преобразуют программы на высокоуровневом языке в машинный код. Однако помимо этого они гарантируют максимально эффективное использование памяти (и в первую очередь процессорного кэша и механизма распараллеливания).

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

Одна из возможных методик состоит в объединении часто используемых команд в группы, которые процессор может обрабатывать одновременно.Оптимизированные компиляторы также максимально используют свободные такты процессора за счет предсказания ветвления, пытаясь заранее определить результат команд наподобие GOTO и тем самым уберечь процессор от необходимости искать требуемые данные по всей программе. Метод спекулятивных вычислений предполагает, что оптимизированный компилятор загружает команды с некоторым упреждением.

Заранее скомпилированное программное обеспечение работает быстрее, чем интерпретируемые программы, поэтому скомпилированные программы предпочтительны для крупных и устоявшихся приложений. За это приходится расплачиваться зависимостью исполняемого кода от конкретной аппаратной платформы. Но такой подход не всегда оправдывает себя в случае с Internet-апплетами, для которых нельзя сказать априори, в какой именно среде они будут работать.

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

 

Создание инструментальных средств разработки
Инструментарий Что нового Цели
Оптимизированные компиляторы Обеспечивают высокую производительность процессорной обработки за счет распараллеливания, предсказания ветвлений и спекулятивных вычислений Помогают реализовать потенциал 64-разрядных процессоров
JIT-компиляторы В реальном времени компилируют код Увеличивают производительность интерпретируемых языков, таких как Java
"Выборочные" компиляторы Компилируют только часто используемый код Увеличивают производительность, не тратя понапрасну дорогостоящие ресурсы памяти

 

[2]

Компоновщик

Компоновщик собирает исполнимый модуль из нескольких.

Для связывания модулей компоновщик использует таблицы символов, созданные компилятором в каждом из объектных модулей. Эти таблицы могут содержать символы следующих типов:

 

· Определённые или экспортируемые имена — функции и переменные, определённые в данном модуле и предоставляемые для использования другим модулям;

· Неопределённые или импортируемые имена — функции и переменные, на которые ссылается модуль, но не определяет их внутри себя;

· Локальные — могут использоваться внутри объектного файла для упрощения процесса настройки адресов [en].

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

Компоновщик может извлекать объектные файлы из специальных коллекций, называемых библиотеками. Если не все символы, на которые ссылаются пользовательские объектные файлы, определены, то компоновщик ищет их определения в библиотеках, которые пользователь подал ему на вход. Обычно, одна или несколько системных библиотек используются компоновщиком по умолчанию. Когда объектный файл, в котором содержится определение какого-либо искомого символа, найден, компоновщик может включить его в исполнимый модуль (в случае статической компоновки) или отложить это до момента запуска программы (в случае динамической компоновки).

Работа компоновщика заключается в том, чтобы в каждом модуле определить и связать ссылки на неопределённые имена. Для каждого импортируемого имени находится его определение в других модулях, упоминание имени заменяется на его адрес.

Компоновщик обычно не выполняет проверку типов и количества параметров процедур и функций. Если надо объединить объектные модули программ, написанные на языках со строгой типизацией, то необходимые проверки должны быть выполнены дополнительной утилитой перед запуском редактора связей.[3]

Библиотека стандартных подпрограмм.

Стандартные подпрограммы имеют единую форму обращения, что обеспечивает простоту и удобство настройки параметров подпрограммы на решение конкретной задачи.

В качестве примера можно привести библиотеку стандартных подпрограмм по численным математическим методам решения уравнений, вычисления интегралов, нахождения экстремумов и т.п[4]

Вывод:

 

 


[1]. http://3ys.ru/prikladnye-programmnye-sredstva/naznachenie-i-klassifikatsiya-kompyuternykh-programm-dlya-raboty-s-tekstami.html

[2]http://www.osp.ru/cw/2001/06/9339/

[3] http://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%BE%D0%B2%D1%89%D0%B8%D0%BA

[4] http://book.kbsu.ru/theory/chapter6/1_6_18.html


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: