Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Языки программирования

Читайте также:
  1. DBASe-подобные реляционные языки
  2. Автоматные языки и грамматики. Задача трансляции автоматных языков.
  3. Базовые конструкции структурного программирования
  4. Базовые средства программирования
  5. Виды операций и стандартных функций в языке программирования Visual Basic 6.0, правила их записи и порядок выполнения. Примеры
  6. Встроенные командные языки
  7. Геометрическая интерпретация задачи линейного программирования
  8. Глава 2. Алгоритмизация и программирование. Технологии программирования
  9. Глава 3. Языки программирования
  10. Графические (схематичные) реляционные языки

Естественный язык – социальное средство хранения и передачи информации, одно из средств управления поведением человека. Он неразрывно связан с мышлением и существует в виде речи.

Кроме естественного языка существуют искусственные языки, целенаправленно сконструированные для

– международного общения (эсперанто, интерлингва);

– автоматической обработки информации с помощью ЭВМ (языки программирования);

– записи информации из определенной области науки и техники (информационные языки).

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

Слова могут объединяться в более сложные конструкции – предложения. Предложения строятся из слов и более простых предложений по определенным правилам. Совокупность правил, с помощью которых строятся правильные предложения, называется синтаксисом.

Каждому правильному предложению языка приписывается некоторый смысл. Совокупность правил, с помощью которых предложениям ставится в соответствие смысл, называется семантикой.

Естественный язык является универсальным в том смысле, что с его помощью может быть представлена любая информация. Однако он обладает особенностями, делающими его неудобным для записи алгоритмов. Эти особенности следующие:

– зависимость синтаксиса от семантики;

– многозначность смысла предложений;

– расплывчатость смысла предложений и возможность парадоксальных предложений.

Зависимость синтаксиса от семантики заключается в том, что способ построения предложения зависит от его смысла. Например, правильность предложения

"Кравченко пришел домой"

зависит от того, является ли Кравченко мужчиной или женщиной.

Зависимость синтаксиса от семантики означает, что для распознавания правильности предложения нужно знать его смысл.

Приведем пример многозначности естественного языка:

"Я вижу косу".

Здесь слово "коса" может означать сельскохозяйственное орудие, сплетение волос на голове или длинную узкую отмель, идущую вдоль берега.



Пример парадоксального предложения:

"Если у состава отцепить последний вагон,
то у состава не будет последнего вагона".

Искусственные языки, предназначенные для записи программ, называются языками программирования или алгоритмическими языками. Все языки программирования делятся на машинно-зависимые и машинно-независимые.

Машинно-зависимые языки зависят от типа компьютера. Каждый компьютер имеет свой собственный язык программирования – машинный язык и может исполнять программы, записанные только на этом языке. Машинный язык включает в себя набор команд, выполняемых процессором данной конкретной машины. Команды на машинном языке представляют собой набор двоичных знаков.

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

– языки символического кодирования (мнемокоды);

– макроязыки.

Мнемокод отличается от машинного языка заменой двоичных кодов операций и двоичных адресов операндов буквами или буквенно-цифровыми обозначениями. Перевод мнемокода на машинный язык выполняется с помощью специального типа транслятора, называемого ассемблером. Ассемблер заменяет каждую команду мнемокода соответствующей командой машинного языка. Мнемокод часто называют языком ассемблера.

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

Машинно-зависимые языки позволяют в наибольшей степени использовать возможности машины, однако требуют от программиста знания особенностей устройства машины. Эти языки используются для написания специального программного обеспечения.



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

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

При программировании на процедурно-ориентированных языках не требуется детального знания устройства компьютера.

Проблемно-ориентированные языки не требуют подробной записи алгоритма решения задачи. Пользователь должен лишь указать последовательность решения задач из ранее подготовленного набора, указать исходные данные и требуемую форму выдачи результата.

Структура вычислительной машины и принцип её работы

Обработка информации реализуется с помощью некоторой функции f, отображающей множество данных D во множество возможных результатов R (рис.5).

 

Рис. 5.Отображение множества данных в множество результатов.

Чтобы промоделировать f с помощью технического устройства необходимо располагать тремя физическими представлениями:

– физическим представлением множества данных D';

– физическим представлением множества результатов R';

– физическим представлением функции обработки f', таким, что применение f' к D' должно давать элемент R'.

Функция f' должна быть физически реализуемой, то есть должна вычисляться на некотором физическом устройстве.

Чтобы выполнить обработку информации и интерпретировать результат необходимо располагать кодами представления исходных данных и результатов (рис. 5):

– входным кодом j, представляющим элемент данных D с помощью физического элемента из D';

– выходным кодом y, интерпретирующим элемент из R' с помощью элемента из R.

 

Рис.6. Представление реального процесса с помощью
технического устройства.

Отображения j, y и f' выбираются так, чтобы выполнялось условие

f(x) = y( f'(j(x)))

ЭВМ позволяет получить указанные физические представления. Принципиально вычислительная машина состоит из двух частей (рис. 7):

– центрального процессора, позволяющего с помощью электронных устройств выполнять f';

– памяти, являющейся физической системой, представляющей D' и R'.

Рис. 7. Структура вычислительной машины.

Память есть физическая система с большим числом возможных состояний. Каждое состояние с помощью отображений j и y связывается с элементами множеств D и R. Практически используемые системы имеют конечное число состояний, то есть множества D и R представляются конечными множествами D' и R'.

Удобно представлять память состоящей из множества N одинаковых физических систем, каждая из которых имеет M состояний. Каждая такая физическая система называется словом. Обычно M = 28 = 256. Это позволяет поставить в соответствие каждому состоянию 8-разрядное двоичное число.

Наиболее просто строить память из физических элементов, имеющих два устойчивых состояния. Такой элемент называется бит. Тогда слово образуется комбинацией восьми таких элементов или битов и называется байтом.

Каждое из возможных состояний слова можно интерпретировать в зависимости от ситуации и используемых кодов как:

– целое натуральное число в диапазоне от 0 до 255;

– слово из букв обычного алфавита и т.д.

Отдельные слова могут объединяться в структуры, позволяющие представлять более сложные объекты, такие как вещественные числа, таблицы, списки и т.д.

Вычислительная машина должна выполнять конечное число физически реализуемых базовых операций над содержимым слов памяти. Современные однопроцессорные ЭВМ имеют архитектуру, предложенную фон Нейманом и называются фоннеймановскими машинами. Принцип организации их работы заключается в следующем.

1. Память машины представляет собой линейную последовательность пронумерованных слов или ячеек. Номер ячейки называется её адресом.

2. Одни и те же ячейки памяти могут содержать исходные данные, полученные результаты или команды машины.

3. Команды выполняются последовательно в соответствии с порядком, определяемым программой.

ЭВМ является универсальным преобразователем информации, способным реализовывать любые алгоритмы преобразования данных.

Центральный процессор состоит из двух частей – управ-ляющего устройства и арифметическо-логического устройства (АЛУ).

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

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

Преобразования j и y внешней формы данных D и результатов R во внутреннюю D' и R' выполняются с помощью периферийных устройств, связывающих компьютер с внешним миром. Различаются устройства ввода или чтения и устройства вывода или записи. Устройства ввода передают информацию в память машины, устройства вывода передают информацию из памяти машины на внешние устройства (экран дисплея, принтер, графопостроитель и пр.).

Память вычислительной машины подразделяется на оперативную и внешнюю. Оперативная память служит для временного хранения программ и данных непосредственно во время вычислений. Содержимое оперативной памяти сохраняется только во время работы компьютера. Внешняя память имеет значительно больший объём и служит для долговременного хранения программ и данных. Информация во внешней памяти хранится в виде файлов, являющихся последовательностями байтов. Для того чтобы программа могла быть выполнена, она должна быть загружена в оперативную память машины.

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

Рис. 8. Формат трехадресной команды.

 

На рис.8 избражен формат трехадресной команды. Здесь Коп – код выполняемой операции, Адрес 1и Адрес 2 – адреса ячеек памяти, содержащих операнды команды. Например, в операции сложения операндами будут слагаемые. Адрес 3 – адрес ячейки памяти, в которую будет помещен результат операции.

В зависимости от числа используемых адресов команды бывают трехадрес-ными, двухадресными, одноадресными и безадресными.

Типичный набор операций, выполняемых аппаратной вычислительной машиной состоит из следующих операций:

1. арифметические операции;

2. операции для проверки различных свойств элементов данных;

3. операции для доступа к различным частям элементов данных и их изменения;

4. операции управления устройствами ввода-вывода;

5. операции для управления последовательностью выполнения операций.

При выполнении программы вычислительная машина выполняет простой циклический алгоритм, изображенный на рис. 9.

Рис.9. Цикл выполнения программы.

Работа компьютера заключается в выборе слов данных из памяти в процессор, модификации их содержимого и записи обратно в память.


Дата добавления: 2015-01-01; просмотров: 69; Нарушение авторских прав


<== предыдущая лекция | следующая лекция ==>
Понятие алгоритма | Процесс выполнения программы на ЭВМ
lektsii.com - Лекции.Ком - 2014-2017 год. (0.188 сек.) Главная страница Случайная страница Контакты