Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Топ:
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Интересное:
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
2017-12-09 | 373 |
5.00
из
|
Заказать работу |
|
|
В § 2 приведен пример программы. Если читатель уделил ему достаточно внимания, то он, конечно, заметил, что задача, для которой составлена программа, очень проста, а работа по составлению программы довольно кропотлива и утомительна. Какова же трудность программирования в тех случаях, когда приходится составлять тысячи команд?!
Поэтому вполне естественно появилась идея некоторую и, возможно, большую часть работы по программированию делать с помощью самой ЭВМ. После довольно длительного периода проб и экспериментов сложился определенный метод программирования, основанный на изложенной идее. Были разработаны различные языки, на которых гораздо легче составлять алгоритмы, чем непосредственно программы. В практике в данное время получили широкое распространение такие входные языки программирования, как фортран, алгол, кобол и некоторые так называемые автокоды. Это формальные языки, имеющие очень простую и четкую грамматику. Автокодами называют формальные языки, очень близкие к языкам машины, но значительно более простые для применения человеком.
Обычно в автокодах всевозможные величины обозначаются не их адресами, как это делается в программах, а буквами или недлинными сочетаниями букв. Операции обозначаются не сочетаниями цифр, а либо обычными знаками действий, либо краткими словами, которые лзгко можно запомнить. Мы знаем, что адреса бывают нужны не только для указания данных, но и для указания команд (например, при переходах — условном или безусловном). Для этой цели в автокоде применяют так называемые метки (метками являются целые числа).
Программа на автокоде по-прежнему состоит из приказов. Но метки ставятся не перед каждым приказом, а только перед теми приказами, к которым производится переход. Программирование обычно производится на бланках, состоящих из нескольких вертикальных граф.
|
Приведем пример программы решения уже известного нам квадратного уравнения, составленной на одном из столь простых автокодов, что читатель ее поймет даже без пояснений (а мы все же сделаем некоторые пояснения). Такая программа приведена в табл. 5.
В автокоде, пример которого мы рассмотрели, каждый приказ занимает одну или несколько (ввод и печать) строк. Приказ состоит из метки и команды или только из команды (если метка не нужна). Знак действия «на» означает переход (условный, если за «на» следуют две метки, и безусловный, если — одна). Остальное в примере понятно. Автокод такого типа, как приведенный в примере, каждый приказ которого соответствует одному определенному приказу программы, называется автокодом 1:1. Программировать на таком автокоде легче, чем на языке программ, но все же трудно.
Более сложные автокоды позволяют записывать в виде формул целые цепочки операций. Приведем пример той же программы и на более сложном автокоде (табл. 6). Подобные автокоды называют автокодами 1: несколько (1 приказ автокода — несколько приказов программы). Программы для них тоже пишут на бланках, но уже состоящих только из двух граф (для метки и для команды).
Чем проще запись алгоритма на таком автокоде, тем более сложной должна быть заранее составленная программа, по которой алгоритм, заданный на автокоде, будет преобразован в программе для решения задачи на ЭВМ. Специально созданные программы, предназначенные для выполнения перевода с языка программирования на язык машины, называются трансляторами.
Если мы хотим программировать на автокоде, нам необходим соответствующий транслятор.
Составив программу на автокоде, переносим ее на перфокарты с помощью специальных технических устройств, имеющих клавиатуру, затем вводим в центральный процессор программу-транслятор, а колоду перфокарт устанавливаем в устройстве ввода. Далее" все идет автоматически.
|
Было бы очень хорошо, если бы программисты не совершали всевозможных ошибок. Эти ошибки приходится «вылавливать», производя очень тщательную проверку программы.
Чаще всего допускаемые программистом ошибки получаются в результате описок. При этом появляются нарушения грамматических правил автокода. Такие нарушения может выявлять сама ЭВМ. Для этой цели в состав транслятора включают подпрограмму синтаксического контроля. Вместо проверки программы, составленной на автокоде, путем ее прочитывания и сопоставления ее смысла с нашим замыслом, делают синтаксический контроль, да еще с помощью самой ЭВМ.
Автокоды относятся к так называемым машинно-ориентированным входным языкам программирования.
Указанные ранее языки фортран, алгол и кобол принадлежат к группе так называемых машинно-независимых языков.
Эти языки еще более удобны для программиста, чем автокоды, еще более экономят человеческий труд. Трансляторы с этих языков значительно сложнее, чем с автокодов. Но, в общих чертах, программирование на машинно-независимых входных языках сходно с программированием на автокоде.
Мы не будем даже пытаться познакомить читателя с этими языками, так как не располагаем для этого возможностями. Желающих изучить машинно-независимые языки программирования и конкретные автокоды отсылаем к специальной литературе[22].
|
|
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!