ВУЗ:
Составители:
25
1.4. Ассемблирование и выполнение
После того, как текст программы на Ассемблере написан, его необходимо
транслировать в машинные коды, понятные процессору, перед тем, как заставить
программу выполняться. Процесс транслирования состоит из двух шагов:
создание объектного кода и компоновка объектного кода в исполняемые
машинные коды (первое и второе ассемблирование). Связано это с тем, что во
время
трансляции компилятор может встретить, например, команду перехода на
метку, находящуюся дальше, то есть в этот момент компилятор еще ничего не
знает об этой метке (это так называемая проблема опережающей ссылки).
Задача первого ассемблирования создать объектный код, в котором
содержатся, во-первых, машинные коды уже готовых команд, а во-вторых, список
всех
меток, переменных и т.п., встретившихся в тексте программы, их смещение
или значение.
При втором ассемблировании происходит вычисление и подстановка
необходимых значений для меток, переменных и т.п., формируя, таким образом,
готовый исполняемый машинный код программы.
25 1.4. Ассемблирование и выполнение После того, как текст программы на Ассемблере написан, его необходимо транслировать в машинные коды, понятные процессору, перед тем, как заставить программу выполняться. Процесс транслирования состоит из двух шагов: создание объектного кода и компоновка объектного кода в исполняемые машинные коды (первое и второе ассемблирование). Связано это с тем, что во время трансляции компилятор может встретить, например, команду перехода на метку, находящуюся дальше, то есть в этот момент компилятор еще ничего не знает об этой метке (это так называемая проблема опережающей ссылки). Задача первого ассемблирования создать объектный код, в котором содержатся, во-первых, машинные коды уже готовых команд, а во-вторых, список всех меток, переменных и т.п., встретившихся в тексте программы, их смещение или значение. При втором ассемблировании происходит вычисление и подстановка необходимых значений для меток, переменных и т.п., формируя, таким образом, готовый исполняемый машинный код программы.
Страницы
- « первая
- ‹ предыдущая
- …
- 23
- 24
- 25
- 26
- 27
- …
- следующая ›
- последняя »