[ЭКЗАМЕН 06] Выполнение программы. Машинный код. Исполняемые файлы. Язык ассемблера. - mRrvz/bmstu-asm GitHub Wiki
Выполнение программы
1. Определение формата файла (.COM или .EXE, в случае 8086)
2. Чтение и разбор заголовка
3. Считывание разделов исполняемого модуля (файла) в ОЗУ по необходимым адресам.
4. Подготовка к запуску, если требуется. (установка регистров; настройка окружения, загрузка библиотек (см. 1 ЛР, 2 часть))
5. Передача управления на точку входа.
Дальше выполняются инструкции заданные в самой программе.
Машинный код
Машинный код - набор команд, который напрямую интерпертируется процессором.
Каждая машинная инструкция выполняет определенное действие.
Исполняемые файлы
Исполняемый файл — файл, содержащий программу в виде, в котором она может быть исполнена компьютером.
Стадии получения: компиляция + линковка (компоновка).
Компилятор - программа для преобразования исходного текста другой программы на определенном ЯП в объектный модуль.
Линковщик (компоновщик) - связывает несколько объектных файлов в исполняемый файл
Язык ассемблера
Язык ассемблера - машинно-зависимый язык программирования низкого уровня, команды которого прямо соответствуют машинным командам.
Следующий вопрос: Классификация команд процессора x86.
Предыдущий вопрос: Процессор 8086. Шина адреса. Сегментная модель памяти.