Основы программирования

 

Общие положения

 

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

Соответственно этим двум целям в программировании выделяют два направления: прикладное программирование и системное программирование.

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

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

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

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

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

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

Способ представления числа в памяти ЭВМ определяется в языках программирования типом числа или типом переменной, которая представлена этим числом.

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

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

Имя переменной однозначно идентифицирует переменную (т.е. определяет её) и поэтому называется идентификатором переменной.

Все переменные можно условно разделить на типы следующим образом:

 
 

Логическая переменная может принимать одно из двух допустимых значений:

True (истина) =1 и False (ложь) = 0

Символьная переменная (или строковая переменная) может состоять из комбинации любых символов, имеющихся в алфавите языка программирования, заключенных в кавычки (для указания границ), причем количество символов должно быть <=255.

Числовая переменная. Значением числовой переменной является число, ав ЭВМ используются два способа представления чисел: с фиксированной точкой и с плавающей точкой.

Представление с фиксированной точкой: пусть слово имеет длину 4 байта = 32 бита, старший разряд содержит знак (+ или - в виде 0 или 1), остальные (31 разряд) содержат двоичные цифры, соответствующие абсолютной величине числа. Максимально возможное (по абсолютной величине) число соответствует значению 1 в каждом из 31 разряда. Представление с плавающей точкой соответствует записи числа с порядком. Например,

38000 = 0.38*10 ,

0.00012 = 0.12*10 и т. д. (обратите внимание, что целая часть отделяется от дробной части десятичной точкой.

Числовая переменная, в свою очередь, может быть целого типа или вещественного типа (одинарной или двойной точности.

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

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: