Главная страница

Основные вопросы. Лекции 11. Методология объектноориентированного программирования. Основные вопросы Компилятор


Скачать 18.9 Kb.
НазваниеЛекции 11. Методология объектноориентированного программирования. Основные вопросы Компилятор
Дата04.05.2021
Размер18.9 Kb.
Формат файлаdocx
Имя файлаОсновные вопросы.docx
ТипЛекции
#201441

Тема лекции №11. Методология объектно-ориентированного программирования .

Основные вопросы:

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

3.      Отладчики

1.Компиля́ция — сборка программы, включающая:

  1. трансляцию всех модулей программы, написанных на одном или нескольких исходных языках программирования высокого уровня и/или языке ассемблера, в эквивалентные программные модули на низкоуровневом языке, близком машинному коду (абсолютный кодобъектный модуль, иногда на язык ассемблера)[2][3][4] или непосредственно на машинном языке или ином двоичнокодовом низкоуровневом командном языке

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

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

Входная информация для компилятора есть:

  1. на фазе трансляции: исходный код программы, являющийся описанием алгоритма или программы на предметно-ориентированном языке программирования;

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

На выходе компилятора — эквивалентное описание алгоритма на машинно-ориентированном языке (объектный код[5], байт-код).

Компили́ровать — проводить сборку машинной программы, включая:

  1. трансляцию с предметно-ориентированного языка на машинно-ориентированный язык.

  2. компоновка исполняемой машинно-ориентированной программы из сгенерированных на фазе трансляции объектных модулей — модулей, содержащих части кода программы на машинно-ориентированного кода программы.

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

2 Отла́дка — этап разработки компьютерной программы, на котором обнаруживают, локализуют и устраняют ошибки. Чтобы понять, где возникла ошибка, приходится:

  • узнавать текущие значения переменных;

  • выяснять, по какому пути выполнялась программа.

Запись в журнале компьютера из Марк II, с мотыльком, приклеенным к странице

Существуют две взаимодополняющие технологии отладки.

  • Использование отладчиков — программ, которые включают в себя пользовательский интерфейс для пошагового выполнения программы: оператор за оператором, функция за функцией, с остановками на некоторых строках исходного кода или при достижении определённого условия.

  • Вывод текущего состояния программы с помощью расположенных в критических точках программы операторов вывода — на экран, принтер, громкоговоритель или в файл. Вывод отладочных сведений в файл называется журналированием.


написать администратору сайта