Непейвода Н.Н. Программирование. Раздел 1

Непейвода Н.Н. Программирование. Страница 29

языка FORTRANв точности соответствует представлению середины XX ве­ка о том, что нужно для реализации вычислительных алгоритмов и что можно реализовать на компьютерах фон Неймановского типа (тогда это был единственный тип компьютеров). Таким образом, это наиболее типичный представитель традиционных языков. Разработчики ранних версий языка FORTRANне принимали в расчет полезности независимого от системы про­граммирования определения языка. И его формальное определение, по суще­ству, задавалось транслятором. В результате случайные решения, принятые в ранних трансляторах, последующие разработчики вынуждены сохранять на многие годы. Для этого языка такое положение дел объяснимо и проститель­но. Удивительно, что и сегодня, в XXI веке появляются языки, зависимые от реализации, которые претендуют на универсальное применение.

2. Algol 60. Язык, сформировавшийся под давлением идеи осуществимо­сти одновременно понятного для компьютеров и для человека представления алгоритмов. Очень скоро утопичность идеи выяснилась, и Algol 60 (до него был еще Algol 58 — индексация по году публикации первой официальной версии, но лишь Algol 60 был утвержден в качестве стандарта и получил широкое распространение; Algol 60 часто называют в литературе просто Алгол) стал не просто более строгим, но и более многословным аналогом FORTRAN. В Алголе появились и принципиальные новшества, выгодно от­личающие его от предшественника. Это, прежде всего, определение языка, независящее от транслятора, структурность описания языка и определение действий абстрактного вычислителя на базе понятий из такого описания.

В Алголе предложена структурная организация контекстов выполнения конструкций, которая выводит вычислитель языка за рамки канона одно­родности и прямой произвольной индексной адресации памяти, — так на­зываемая блочная структура программы. Этой структуре отвечает опреде­ленная дисциплина распределения памяти в рабочих программах, которые получаются в результате трансляции алголовских текстов. Эта дисциплина, получившая название стековой, с тех пор используется повсеместно при реализации языков программирования. Стековая дисциплина распределения памяти является ограничением доступа к векторно организованной памяти, элементы которой могут указываться в произвольном порядке, но именно это ограничение дает возможность эффективно отображать блочную структуру. Более того, поскольку доступ к памяти регламентирован, можно говорить о внедрении этого регламента в систему команд компьютера, хотя бы для уменьшения адресности команд. И сегодня модернизации фон Нейманов­ской модели вычислений, связанные (в большей или меньшей степени) с таким регламентом, являются неотъемлемыми для современных вычисли­тельных архитектур. Можно сказать, что стековая дисциплина стала частью модернизированной фон Неймановской архитектуры компьютера.

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие "Крокодилы"

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

О ранее неизвестном виде динозавра, относящемуся к инфраотряду зауроподов, рассказали аргентинские п...

Реклама