Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
товый к выполнению файл, записанный на машинном языке, можно запускать на исполнение многократно. Достоинством компиляторов является большая скорость выполнения программы, а недостатком — трудоемкость отладки, так как невозможно пошаговое выполнение программы.
Современные системы программирования, и в том числе Visual Basic, позволяют работать в режиме как интерпретатора, так и компилятора. На этапе разработки и отладки программы используется режим интерпретатора, а для получения готовой исполняемой программы — режим компилятора.
Процесс выполнения программы. Рассмотрим процесс выполнения программы на примере рассмотренной выше программы (проект «Переменные»), написанной на языке программирования Visual Basic.
Ввод текста программы в оперативную память. Текст программы вводится в оперативную память с помощью клавиатуры или считывается из внешней памяти. Текст программы займет в памяти определенное количество ячеек (например, с ячейки номер / по ячейку I+K).
Перевод программы на машинный язык. Наша программа будет записана в памяти во внутреннем представлении языка программирования Visual Basic, который процессор «не понимает». Для перевода программы на машинный язык, понятный процессору, в памяти должна находиться программа-транслятор языка Visual Basic. Программа-транслятор после считывания в оперативную память из внешней памяти будет занимать в памяти определенное количество ячеек (например, с ячейки номер N по ячейку N+M).
Выполнение программы. После запуска программы на выполнение процессор последовательно будет считывать из памяти операторы и их выполнять.
В процессе выполнения оператора объявления переменных Dim в оперативной памяти для их хранения отводится необходимое количество ячееек: для целочисленных переменных intA, intB — по две ячейки, для неотрицательной целочисленной переменной bytC — одна ячейка, для переменной одинарной точности sngD — четыре ячейки, для переменной двойной точности dblE — восемь ячеек, для строковых переменных strA и strB количество ячеек, равное количеству символов, составляющих их значения, для логических переменных ЫпА, ЫпВ, ЫпС — по две ячейки. Таким образом, в памяти для хранения данных (значений переменных) будет отведено определенное количество ячеек, например ячейки с 1-й по 39-ю (рис. 4.17).
Глава 4
Далее, в процессе выполнения операторов присваивания в отведенные переменным области оперативной памяти записываются их значения. Если в правой части оператора присваивания находятся арифметические выражения, то предварительно вычисляются их значения.
Затем с помощью метода Print производится вывод значений переменных на форму, реализующую графический интерфейс программы. В этом процессе значения переменных считываются из памяти и высвечиваются на экране монитора.
Имена переменных
mtA intB bytC sngD dblE strA strB blnA blnB blnC
Оперативная память | |
ячейки | значение |
1-2 | |
3-4 | |
6-9 | 0,6666667 |
10-17 | 0,666666686534882 |
18-22 | форма |
23-33 | информатика |
34-35 | True |
36-37 | False |
38-39 | False |
/ | программный код |
l + K | |
N | транслятор языка программирования |
N + M | |
Рис. 4.17. Программа и данные в оперативной памяти
Вопросы для размышления
1. Какую функцию выполняют трансляторы языков программирования?
2. В чем состоит различие между интерпретаторами и компиляторами?
Основы алгоритмизации и программирования
4.15. Какое количество ячеек памяти было бы занято переменными в проекте «Переменные», если бы переменные не были объявлены?
Дата публикования: 2014-10-30; Прочитано: 442 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!