Скачать программа кодировка игры на компьютер. Большая энциклопедия нефти и газа. Пакетная обработка файлов

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

«До чего дошел прогресс: видеомагнитофон с телевизором умещаются на ладони», — такие слова мы нередко слышим от людей старшего поколения. Результаты миниатюризации сейчас можно увидеть во всем, что иметь отношение к сфере развлечений и связи.

Кодирование музыки

Мобильные устройства с возможностью воспроизведения мультимедийного контента — традиционная область применения новейших технологий. Поэтому, как ни крути, о каждой сфере развлечений нужно получить хотя бы минимум знаний. Даже для прослушивания музыки теперь недостаточно ориентироваться в названиях альбомов и композиций — желательно также знать размер музыкального трека, который зависит от битрейта (чем он выше, тем больше «весит» файл при той же длительности композиции). Кроме того, стоит обратить внимание и на качество звучания, на которое, в свою очередь, влияет тип кодека (алгоритм кодирования).

Кодирование фильмов

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

Видео кодеки

Почему же нельзя просто взять имеющийся файл и воспроизвести его на своем мобильном устройстве? Причиной «забастовки» плеера может стать отсутствие нужного кодека, а также слишком высокое разрешение или битрейт фильма, из-за которых устройство не может обработать предложенное видео. Это напрямую относится к устройствам, оснащенным процессорами с тактовой частотой 300-400 МГц. Более мощные модели (520 — 624 МГц) способны справиться с большинством фильмов без перекодирования даже при размере экрана 640х480 точек.

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

XviD4PSP

Условия распространения: бесплатно. XviD4PSP является мультиформатным конвертером. Эта программа создана на движке AviSynth и разрешает создавать файлы для Хbох 360, PSP, PS3, iPhone, iPod, iPod Touch, PC, Hardware DVD, Apple TV. Кроме этого, допустимо импортирование 26 форматов, а экспортировать данные разрешается в 19 форматов. Для того чтобы избежать вероятных проблем, советуем вначале поставить пакет К-Lite Codec Pack, а затем уже XviD4PSP.

Программа разрешает кодировать как отдельные файлы, так и несколько подряд. Кроме того, можно соединить в один фильм несколько видеороликов, выбрав в верхнем меню «Файл — присоединить файл». Разрешение и битрейт всех фрагментов должны быть одинаковыми.

Изменить размер кадра

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

Интерфейс программы довольно легок и понятен. Широкие возможности и обилие настроек вызывают уважение. Но чтобы воспользоваться всем этим, требуются глубокие познания в области специфики видеокодирования — а значит, советовать XviD4PSP неопытным пользователям нельзя. На наш взгляд, программа больше ориентирована на кодирование видео с высоким качеством для просмотра на домашних бытовых плеерах, но при этом разрешает преобразовывать контент и для его воспроизведения на портативных устройствах, что подтверждает ее универсальность.

PocketDivXEncoder

Условия распространения: бесплатно. PocketDivXEncoder — настоящая находка для обладателей КПК и портативных плееров, поддерживающих воспроизведение видео в формате AVI. Она разрешает конвертировать файлы OGM или AVI в DivX, адаптированный под экраны смартфонов (220×164точек) и КПК (от QVGA, 320х240 точек, до VGA, 640х480 точек).

При кодировании совершается оптимизация файла в соответствии с возможностями процессора мобильного устройства. Также можно усилить яркость изображения и нормализовать звучание аудиодорожки.

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

PocketDivXEncoder не нуждается в инсталляции. Запустить программу можно из той директории, в которую она была скопирована. Сначала откроется панель выбора устройства, для которого нужно перекодировать фильм, а затем главное окно PocketDivXEncoder. Пункты меню пронумерованы — запутаться в них невозможно. Первоначально следует выбрать объект кодирования, а затем директорию и указать название итогового файла. Прочие пункты предлагают дополнительные настройки. В частности, изменить видео- и аудиопараметры конечного файла можно, передвигая ползунки и регулируя таким образом, качество материала. Также PocketDivXEncoder позволяет видоизменять яркость, насыщенность, контраст и уровень звука. Кнопка «Изменить» открывает дополнительное окно, в котором будет показано ваше устройство (например, КПК), а на его экране — избранное вами видео. Причем все вносимые изменения будут наглядно воссоздаваться и на нем.

Кстати, программа разрешает обрезать фильм в начале и в конце — например, удалить титры, чтобы уменьшить объем конечного файла. Это особенно полезно при кодировании сериалов.

Пакетная обработка файлов

Еще одной особенностью PocketDivXEncoder является поддержка пакетной обработки файлов.

Из минусов стоит обозначить невозможность работы с форматом DVD. Кроме того, PocketDivXEncoder, к сожалению, не умеет склеивать видеоролики. В остальном эта программа является отличным инструментом для быстрого перекодирования «тяжелых» AVI-файлов и их оптимизации под конкретное мобильное устройство. С ней справится даже ленивый пользователь, которому понадобится всего три клика мышью, чтобы желаемый фильм без проблем воссоздавался на коммуникаторе или смартфоне. Кроме того, программа распространяется бесплатно, а ее интерфейс полностью русифицирован.

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

Скажем, нет разочарованиям, которые мы испытываем при получении писем от родных друзей и коллег, содержащих в себе только набор непонятных символов. Оставим в прошлом проблемы связанные с прочтением старых, но очень важных текстов. А может Ваш ICQ опять прислал вам неразбериху. И тут Ваше отчаяние достигло апогея?

Вам повезло. Эта скромная по размеру программа решит все Ваши проблемы связанные с перекодировкой текста в формат, на котором работает ваша машина! Всё что вам нужно, это скачать программу и установить её.

Данная программа является свободно распространяемой (Freeware). То есть, не будет стоить вам ни копейки. Ну, разве что, пару рублей за трафик, если он у Вас не безлимитный:)

Интерфейс программы

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

Вам будут доступен огромный выбор русских кодировок: Win-1251, KOI-8r, DOS, ISO-8859-5, MAC и др.


Штирлиц может работать с текстами в транслитерации в форматах Quoted Printable, UTF-7, UTF-8, RTF, закодированными с помощью uuencode, xxencode, base64, binhex, BtoA текстами и файлами со смешанным кодом, а также HTML. Все эти форматы программа способна привести к самой популярной русской кодировке Windows-1251.

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

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

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

Выводы

Из недостатков следует отметить то, что данный программный продукт уже достаточно старый и, по всей видимости, уже давно не обновляется и не поддерживается автором. Но задачи связанные с несовместимостью кодировок актуальны по сей день, поэтому иметь программу перекодировки текста Штирлиц, обязан иметь на своём ПК каждый.

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Артёма Рошко.

Все операции в ЭВМ выполняются над электрическими сигналами, закодированными двоичной цифрой 0 или 1. Поэтому перед занесением в память данные и команды должны быть вручную или аппаратно преобразованы в двоичную форму. Однако при написании программы команды могут быть записаны в любой другой форме (например, мнемонической, как в табл. 1). В общем случае программа может кодироваться четырьмя способами: в двоичной, восьмеричной, шестнадцатеричной и символической или мнемонической форме.

Двоичная форма команды . Эта форма является единственной, которую понимает машина. Каждой ЭВМ присуща система команд в двоичном коде, которая понятна ей. Регистр команд, куда помещается команда из памяти, связан электрическими цепями с устройством управления ЭВМ, где производится декодирование команды и инициируются сигналы по реализации команды. В табл. 2 приведено содержимое части памяти ЭВМ, где хранятся программа и данные для суммирования двух чисел из примера параграфа 2.1. Левый столбец - это адреса ячеек в двоичной форме. Правый столбец представляет содержимое ячеек в двоичной форме. Адрес имеет 11 разрядов (память ЭВМ состоит из 2048 = 2 11 ячеек), а каждая из ячеек - по 16 разрядов. Для удобства чтения двоичных чисел и их перевода в шестнадцатеричную систему они разбиты на тетрады .

Восьмеричное и шестнадцатеричное кодирование . Из предыдущего примера ясно, что записывать программу в двоичном коде очень неудобно и утомительно, если учесть, что средняя по сложности программа состоит из нескольких сотен или тысяч нулей и единиц. Для сокращения записи целесообразно использовать систему счисления с основанием 2 3 = 8 или 2 4 = 16. Выбор для кодирования команд той или иной системы счисления в основном связан с форматом команд ЭВМ. В нашем случае удобнее шестнадцатеричная система, так как большинство полей в командах базовой ЭВМ (см. рис. 3) равно или кратно 4. В табл. 3 приведена та же программа, что и в табл. 1 и 2, только закодированная в шестнадцатеричной системе. Для программиста такое кодирование более удобно, чем двоичное.

Таблица 2 Таблица 3

Пример двоичного кодирования Пример шестнадцатеричного кодирования

содержимого памяти содержимого памяти

Мнемоническое (символическое) кодирование . Шестнадцатеричное (или восьмеричное) кодирование имеет очевидное преимущество перед двоичным. Однако для длинных программ и оно неудобно. Программист должен выучить наизусть шестнадцатеричные коды всех команд, использующихся в машине (в некоторых ЭВМ их более сотни). Чтобы упростить процесс написания, отладки и чтения программы, предложен мнемонический или символический код: каждая команда представляется простым двух-, трех- или четырехбуквенным мнемоническим символом. Мнемонические символы значительно легче связать с машинными операциями, так как их можно выбирать таким образом, чтобы они напоминали название команды. Большинство мнемонических кодов - это сокращения английских названий команд: SUB от SUB tract (вычесть), BR от Br anch (перейти), BPL от B ranch if Pl us (перейти по положительному числу) и т. п. Намного легче запомнить, что инвертирование аккумулятора (C oM plement A ccumulator) кодируется СМА, чем запомнить двоичный код 1111010000000000 или даже его шестнадцатеричный эквивалент F400. Пример символического кодирования программы был приведен в параграфе 1 (см. табл. 1).

Хотя символическое кодирование очень удобно для программиста, оно не может быть понято машиной. Единственным языком, понятным машине, является язык двоичных кодов. Следовательно, необходимо транслировать символическую программу в ее двоичный эквивалент. Это можно сделать вручную, используя таблицы соответствия (вида табл. 4). На практике трансляция осуществляется специальной машинной программой.

Классификация команд . ЭВМ способна понимать и выполнять определенный набор команд. При составлении программы программист ограничен этими командами. Количество и тип команд изменяются в зависимости от возможностей и назначения ЭВМ.

В зависимости от того, к каким блокам машины обращается команда или на какие блоки она ссылается, команды можно разделить на три группы: обращения к памяти (адресные команды); обращения к регистрам (регистровые или безадресные); ввода-вывода.

Команды обращения к памяти предписывают машине производить действия с содержимым ячейки памяти, адрес которой указан в адресной части команды. Например, команда ADD 20 из табл. 2.1 является командой обращения к памяти. Она предписывает машине обращение по адресу 20 и использование содержимого этой ячейки в качестве первого операнда. Второй операнд находится в аккумуляторе. Эти два операнда суммируются.

Безадресные команды выполняют различные действия без ссылок на ячейку памяти. Например, команда CLA из табл. 1 предписывает машине очистить аккумулятор. Эта команда имеет дело с операндом, расположенным в конкретном месте - в аккумуляторе. Другой пример безадресной команды - команда HLT из табл. 1.

Команды ввода-вывода осуществляют обмен данными между ЭВМ и внешними устройствами. В них задаются адрес (название) устройства ввода-вывода и код той операции, которую должно выполнить это устройство (приказ на ввод-вывод).

В табл. 4 дан перечень команд базовой ЭВМ. Подробно действия, выполняемые машиной по этим командам, рассмотрены в следующих параграфах. Поясним одно из описаний: (СК) + 1 => СК в командах ISZ и TSF. После выполнения этой операции счетчик команд будет указывать не на следующую команду программы, а на команду, расположенную за ней. Это произойдет потому, что после выборки команды ISZ или TSF содержимое счетчика команд уже было увеличеноавтоматически на единицу.

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

Форматы команд и способы адресации . Ранее рассматривались различные форматы (структуры) команд. Разработчики базовой ЭВМ выбрали три формата 16-битовых (однословных) команд с 4-битовым кодом операций (рис. 4).

Таблица 4.Система команд базовой ЭВМ

С помощью 4-битового числа можно закодировать не более чем 2 4 =16 различныхопераций. Разработчики отвели два кода (1110 и 1111) на команды ввода-вывода и безадресные команды, а так как в этих командах либо используется меньшая по длине адресная часть (8-битовый адрес устройства ввода-вывода на рис. 4, в), либо эта часть вообще отсутствует (рис. 4, б), то появилась возможность иметь до 2 4 = 16 команд ввода-вывода (4-битовый приказ на ввод-вывод) и до 2 12 = 4096 безадресных команд (12-битовое расширение кода операции).

В командах обращения к памяти на адрес отведено 11 бит, что позволяет осуществить прямое адресование всех 2048 (2 м) ячеек памяти базовой ЭВМ. Однако встречаются приложения, когда в команде целесообразнее размещать не сам адрес операнда (результата или перехода), а его указатель, т. е. адрес ячейки памяти, в которой сохраняется адрес операнда (результата или перехода). Такое косвенное адресование упрощает построение циклических программ, организацию работы с подпрограммами, а также создает условия для расширения адресуемого пространства (косвенное адресование 16-битовых ячеек базовой ЭВМ позволяет ей иметь память объемом до 2 16 = 65536 слов).

Для указания вида адресации в командах используется бит с номером 11 (рис. 4, а), в который при прямой адресации следует записывать 0, а при косвенной- 1. В мнемонических изображениях команд для указания косвенной адресации операнд помещается в скобки. Так, на рис. 5 команда ADD 25 или 4025 указывает, что из ячейки 25 должно быть взято число (53), которое нужно сложить с содержимым аккумулятора. Команда же ADD (25) или 4825 указывает, что из ячейки 25 должен быть взят адрес ячейки (53), в которой хранится число (47), которое и нужно сложить с содержимым аккумулятора. («А это веселая птица-синица, которая ловко ворует пшеницу, которая в темном чулане хранится в доме, который построил Джек.» Похоже?).

Бывает такая ситуация, что открываешь какой-то текст, а там вместо слов какие-то каракули или иероглифы. И чаще всего это происходит с текстами на русском языке. И это не удивительно, потому что кириллицу используют не так часто, как латиницу. К примеру, у меня возникли подобные проблемы при переходе с Windows 7 на Windows 8. Я решил открыть свои рабочие текстовые файлы, а там вместо слов, какие-то каракули. И я в начале растерялся, уже потом вспомнил, что нужно поменять кодировку. И после этого уже всё наладилось.

Есть ещё одна ситуация, когда вы, к примеру, создаёте или редактируете какой-то сайт или какую-то HTML-страничку, и там опять проблема с отображением кириллицы. И опять надо менять кодировку. Раньше эта проблема была очень частой, в особенности таких букв, как "ё", "ь" и "ъ"- знаки. Да и сейчас тот-же Google Chrome не очень любит подобные буквы. Но это его проблема.

И теперь встаёт логический вопрос: "Как решить эти две проблемы?!" А тут есть такие простые и не очень простые решения:

  • заново перепрограммировать весь текст. Если вы программист и отлично разбираетесь в двоичной кодировке, то можете смело переписать нужный текст или нужную HTML-страничку. Однако, это очень долгий и кропотливый путь. Я не думаю, что сейчас найдётся очень много программистов, которые смогут это сделать.
  • использовать специальный онлайн сервис для конвертирования одних файлов в другие. Их пока ещё не очень много, и большинство из них работает с текстами на латинице, но всё же это перспективный вариант. То есть вам не нужно будет устанавливать на свой ПК какую-либо прогу, а просто зайти на нужный сайт, отправить владельцам необходимый текстовый файл для перекодировки и всё будет сделано. Минус подобных сервисов в том, что они поддерживают мало форматов и пока они ещё работают намного хуже следующего варианта.
  • использовать программу перекодировщик текста. Это отличный вариант. Вам нужно будет установить на свой комп специальную прогу и потом уже с помощью неё всё сделать. То есть поменять кодировку текста.

Теперь подробнее поговорим о последнем варианте. И он может реализовываться с помощью:

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

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

Программы перекодировщики текста

(просто нажмите на её название, чтобы перейти к анализу и затем её скачать):

Её ценят за отличные показатели перекодировки; за то, что не требует установки; за умение читать файлы vnt-формата; за выправление текстов, в которых намешано много разных кодировок; за умение перекодировать базы данных из latin1 в win125; за маленький размер; за отличную работу из года в год.

Планирование кодирования и тестирования программ

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

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

Возможны два "чистых" варианта, определяемых направлениями в иерархической схеме:

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

В каждой из этих моделей используется понятие "заглушка".
Заглушкой называется некоторый простой модуль, подменяющий настоящий модуль на время тестирования вызывающего его модуля и имитирующий в какой-либо мере его исполнение (например, поставляющий некоторые фиксированные данные или просто сообщающий о своем исполнении).

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

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

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

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

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

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

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

Структурирование программы

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

Структурирование программы - это ее разбиение на компоненты структурирования с определенными правилами их расположения в тексте программы и определенными правилами их взаимодействия при исполнении программы.

Компонентами структурирования в языке Турбо Паскаль являются модули, блоки, подпрограммы (функции и процедуры), составные операторы.

Программный модуль - программный компонент, содержащий определения ряда программных объектов. Модули являются носителями описаний программных объектов, которые, будучи описаны один раз, могут многократно использоваться в других модулях и программах. Стандартные (библиотечные) модули, входящие в состав системы Турбо Паскаль, играют очень важную роль, предоставляя всем пользовательским программам множество различных программных объектов. Кроме того, любой пользователь может сам ввести в употребление модули, содержащие такие объекты, которые будут необходимы в его программах.

Блок - понятие, играющее ключевую роль в понимании процесса исполнения программы, области существования программных объектов. Блок состоит из двух частей: описательной (определяющей объекты блока) и исполнительной (задающей их обработку). Блок может содержать в себе другие блоки.

Иерархический и рекурсивный характер описания алгоритмов реализуется в программе благодаря использованию механизма подпрограмм, который позволяет описывать параметризованные алгоритмы (тела которых описываются как блоки) и вызывать их для исполнения с указываемыми аргументами.

Подпрограмма - одно из базовых понятий программирования, не зависящее от языковых средств, определяющих его. В виде подпрограмм представляются программные объекты, реализующие некоторую операцию, алгоритм, способ обработки данных. Подпрограмма описывается как некоторая замкнутая программная конструкция, имеющая имя, параметры и тело подпрограммы. Тело подпрограммы обязательно содержит некоторые операторы обработки данных. Для их выполнения подпрограмма может содержать свои собственные (локализованные в ней) программные объекты.

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

Современна и продуктивна точка зрения на подпрограмму как на "самодостаточный" программный объект, текст которого является достаточным для понимания его назначения, реализуемого алгоритма и обрабатываемых данных. Такая точка зрения является хорошей предпосылкой создания надежных программ.

Составные операторы также служат целям структурирования программы, позволяя рассматривать некоторую совокупность операторов как единый оператор. Тем самым составные операторы наряду с другими "групповыми" операторами (например, операторами повторения и выбора) позволяют конструировать иерархическую вложенность операторов.

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

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




Top