Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Компиляция, компоновка и выполнение проекта




 

Компиляция (compilation)– это преобразование программы или ее отдельного модуля, текст которых составлен на языке программирования высокого уровня (исходная программа, исходный модуль – это файл с расширением.срр) в программу или модуль на машинном языке или на языке, близком к машинному (получают объектный модуль – файл с расширением.obj). Компиляцию осуществляет специальная программа – компилятор (compiler), которая является неотъемлемой частью системы программирования. На вход компилятора поступает исходный модуль (файл.срр), который после компиляции преобразуется в объектный модуль (файл.obj) Объектный модуль не может быть исполнен, его местоположение в оперативной памяти еще не известно (не определено). Компилятор вырабатывает только относительные адреса связи с другими модулями. В дальнейшем их предстоит заменить конкретными адресами (абсолютными адресами) той части оперативной памяти, в которой этот модуль будет выполняться.   Результат компиляции – это промежуточная форма программных модулей, к которым впоследствии необходимо присоединить библиотечные модули, содержащие стандартные подпрограммы и процедуры, а если нужно, то можно добавить любые другие модули, написанные самим пользователем, и скомпилированные в объектные модули, возможно даже с других языков высокого уровня. Существуют различные виды компиляторов: · интерпретирующие (пошаговые), осуществляющие последовательную независимую компиляцию каждой отдельной инструкции исходной программы; · оптимизирующие, осуществляющие повышение эффективности объектных модулей, например, за счет вынесения из циклов последовательности команд, результаты действий которых не меняются при повторении циклов; · отладочные, облегчающие пользователю отладку программ.

 

Компоновка, редактирование связей (linking, linking editing)– это процесс сборки загрузочного модуля (исполняемого файла) из полученных в результате раздельной компиляции объектных модулей с одновременным автоматическим поиском и присоединением библиотечных подпрограмм и процедур. В процессе компоновки программа собирается в единое целое непосредственно в оперативной памяти в файл, готовый к работе (загрузочный модуль - файл с расширением.ехе). Работу по компоновке программы выполняет программа компоновщик (linker).Эта программа выполняет следующие основные функции: · распределяет пространство оперативной памяти для программы; · связывает вместе части программы, представленные отдельными объектными модулями (файлами.obj); · настраивает адреса подготовленной программы, заменяя все относительные адреса, выработанные компилятором, соответствующими абсолютными адресами фактически распределенной памяти. Компоновщики бывают в двух реализациях: · компоновщики, которые готовят загрузочный файл; этот файл при необходимости может быть загружен в оперативную память для исполнения; · компоновщики, которые готовят загрузочный файл, сразу физически размещают подготовленную версию машинного кода программы в памяти и передают управление на первую команду программы для непосредственного исполнения.

 

Эти операции могут быть выполнены с помощью меню Build.

 

Краткое описание основных команд этого меню:

· Сompile – компиляция выбранного файла, результат компиляции отображаются в окнах Task List и Output.

· Build - компоновка проекта. Компилируются все файлы, в которых произошли изменения с момента последней компоновки. После компиляции происходит сборка всех объектных модулей, включая библиотечные, в результирующий исполняемый файл. Сообщения об ошибках компоновки выводятся в окна Task List и Output. Если обе фазы компоновки завершились без ошибок, то созданный исполняемый файл с расширением.ехе может быть запущен. Запуск этого файла не осуществляется.

· Rebuild – делается то же, что и в команде Build, но при выполнении этой команды компилируются все файлы проекта независимо от того, были ли в них изменения.

Эти операции могут быть выполнены и с помощью меню Debug, его команд Start или Start Without Debugging. Эти две команды делают все то же, что и команда Build, сразу же запуская файл с расширением.ехе.

8. Запустите ваш проект, выполнив команду Start меню Debug. Появляется выпадающее диалоговое окно, в котором нам задается вопрос: Would you like to build them? Вопрос задается вам, так как вы не выполняли отдельно процедуру компоновки программы Build, а ее необходимо выполнить. Согласитесь на ее выполнение, ответив «Да». Так как программа, которую вы скопировали, не имеет ошибок, то появляется черное консольное окно [run], в котором начинает работать ваша программа.

Введите два числа – первое обязательно целое, второе любое. Получите результат.

9. Сверните главное окно Microsoft Visual Studio.Net и разверните свое окно. В вашей папке появилась новая папка Debug. В этой папке появились новые файлы, среди них файл MyFirstProject.exe (исполняемый файл). Запустите его, щелкнув по его пиктограмме.

10. Разверните снова главное окно Microsoft Visual Studio.Net. Закройте свой проект, выбрав в меню File команду Close Solution. Закрыть проект можно просто, закрыв главное окно.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...