Языки и системы программирования
Программа – это логически упорядоченная последовательность команд, необходимых для управления компьютером (выполнения им конкретных операций), поэтому программирование сводится к созданию последовательности команд, необходимой для решения определенной задачи.
Процессор компьютера – это большая интегральная микросхема. Все команды и данные он получает в виде электрических сигналов, которые можно представить как совокупность нулей и единиц. Поэтому реально программа, с которой работает процессор, представляет собой последовательность двоичных чисел, называемую машинным кодом. Самому написать программу в машинном коде весьма сложно, причем эта сложность резко возрастает с увеличением размера программы и трудоемкости решения нужной задачи. Поэтому сегодня практически все программы создаются с помощью языков программирования.
Однако с помощью языка программирования создается не готовая программа, а только ее текст (исходный код), описывающий ранее разработанный алгоритм. Чтобы получить работающую программу, надо этот текст с помощью специальных служебных приложений, называемых трансляторами, либо перевести в машинный код, либо исполнить.
Существуют трансляторы трех видов: компиляторы, интерпретаторы и ассемблеры.
Компиляторы полностью обрабатывают весь исходный код: просматривают его в поисках синтаксических ошибок (иногда несколько раз), выполняют определенный смысловой анализ и затем автоматически переводят (транслируют) на машинный язык – генерируют машинный код.
Интерпретатор берет очередной оператор языка исходного кода программы, анализирует его структуру и затем сразу исполняет оттранслированную команду. Только после того как текущий оператор успешно выполнен, интерпретатор перейдет к следующему причем, если один и тот же оператор должен выполняться в программе многократно, интерпретатор всякий раз будет выполнять его так, как будто встретил впервые. При этом исполняемый файл не создается. Разрабатывать интерпретаторы проще, чем компиляторы, но работает интерпретируемая программа, как правило, медленнее скомпилированной.
Ассемблеры предназначены для перевода программы, написанной на языке ассемблера, в машинный код.
Языки программирования – искусственные языки. От естественных они отличаются ограниченным числом «слов» и очень строгими правилами записи команд (операторов). Совокупность подобных требований образует синтаксис языка программирования, а смысл каждой команды и других конструкций языка – его семантику. Нарушение формы записи программы приводит к тому, что транслятор не может понять назначение оператора и выдает сообщение о синтаксической ошибке. Правильно написанное, но не отвечающее алгоритму использование команд языка, приводит к семантическим ошибкам, называемым еще логическими ошибками или ошибками времени выполнения.
Процесс поиска ошибок в программе называется тестированием, процесс устранения ошибок – отладкой.
Дата добавления: 2015-01-29; просмотров: 1453;