Васин Д.Ю. - Язык программирования Си. Курс лекций - 2003. Руководство для начинающих. М. Мир, 1988г. 512 с. Трой Д. Программирование на языке Си для персонального компьютера ibm pc Пер с англ. М. Радио и связь, 1991г. 432 с
Скачать 1.1 Mb.
|
Пользование компиляторомКомпилятор представляет собой системную программу, которая преобразует некоторый «язык высокого уровня» в язык компьютера язык ассемблера или машинный язык. Интерпретатору Бейсика этого не требуется, поскольку он непосредственно исполняет каждый оператор. Интерпретаторы хороши при написании небольших программ, не требующих многократного исполнения. Компиляторы более удобны для разработки больших программ, которые должны исполняться много раз. Это обусловлено тем, что интерпретация программы осуществляется намного медленнее исполнения на компьютере ранее откомпилированной программы. По сравнению с интерпретатором при работе с компилятором требуется выполнить несколько дополнительных операций (рис.1). Рисунок 1 Программа готовится с помощью текстового редактора или программы обработки текста. Она запоминается в исходном файле, который преобразуется компилятором в объектный файл. Затем объектный файл, возможно, вместе с другими объектными файлами, полученными ранее (может быть с помощью других компиляторов), преобразуется в исполняемый файл программой, называемой загрузчиком или редактором связей. Этот файл может быть исполнен непосредственно компьютером. Внутренняя структура программы на языке Си для IBM PC (альтернативные модели распределения памяти)Исполняемая программа на языке Си состоит из четырех частей: областей команд, стека, статических и динамических данных. Область команд содержит машинные команды. Стек используется для временного хранения данных и адресов возврата при вызовах подпрограмм. Область статических данных обеспечивает хранение значений переменных программы, а в области динамических данных размещаются уже при исполнении программы дополнительные данные, которые могут понадобиться в процессе ее работы. Современные компиляторы языка Си обеспечивают реализацию нескольких моделей распределения памяти. Под областью данных в табл.1 подразумевается область динамических данных модели распределения памяти, используемой в программе на языке Си. Размер области статических данных во всех моделях обычно не превышает 64 Кб, аналогично размер области стека также не превышает 64 Кб. Таблица 1 Альтернативные модели распределения памяти
Модель распределения памяти задается на стадии компиляции путем указания соответствующих параметров при вызове компилятора языка Си. Каждое значение параметра, задающего модель распределения памяти, заставляет компилятор генерировать несколько иные машинные коды. Для большинства компиляторов это влечет за собой требование, чтобы при раздельной компиляции программ на языке Си задавалась одна и та же модель памяти. Выбор модели зависит от требуемого приложения. Рекомендуется выбирать наименьшую возможную модель, которая удовлетворяет Вашим требованиям, поскольку применение больших моделей влечет за собой увеличение размера области команд и замедление работы программы. Интегрированная среда Borland C2.1 Основные компоненты интегрированной среды Borland CДля создания ваших программ вы можете использовать любой текстовый редактор ASCII. Затем можно использовать компилятор командной строки (файл TCC.exe) для компиляции и последующего запуска на выполнение программ из командной строки DOS. Все же такой путь может показаться неудобным, и вы можете использовать интегрированную среду разработки Borland C (файл TC.exe). Интегрированная среда Borland C это более чем просто быстрый Сикомпилятор. Когда Вы запускаете программу Borland C, то весь комплекс инструментальных средств, необходимых Вам для написания, редактирования, компиляции, компоновки и отладки Ваших программ, оказывается у Вас под рукой. Весь этот комплекс возможностей заключен в Интегрированной Среде Разработки. Кроме того, среда разработки программ системы Borland C предоставляет следующие дополнительные возможности, которые еще больше упрощают процесс написания программ: Возможность присутствия на экране монитора значительного числа окон, которые можно перемещать по экрану и размеры которых можно изменять; Наличие поддержки мыши; Наличие блоков диалога; Наличие команд отсечения и вклейки (при этом допускается копирование из окна Help (Подсказка) и между окнами редактора); Возможность быстрого перехода к другим программам, например, к программе TASM Турбо Ассемблеру и обратного возврата; Наличие в редакторе макроязыка. |