Файл: Классификация языков программирования высокого уровня (УСТРОЙСТВО ПЕРСОНАЛЬНОГОКОМПЬЮТЕРА).pdf
Добавлен: 30.03.2023
Просмотров: 244
Скачиваний: 2
СОДЕРЖАНИЕ
1 УСТРОЙСТВО ПЕРСОНАЛЬНОГОКОМПЬЮТЕРА
1.1 Принципы устройства компьютера
1.2 Аппаратный уровень компьютера
1.3 Логический уровень компьютера
2 РАЗВИТИЕ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ
2.1 Поколения языков программирования
3 ОСНОВНЫЕ АЛГОРИТМИЧЕСКИЕ КОНСТРУКЦИИ
3.1 От интуитивного программирования к научному подходу
<идентификатор> := <выражение>
Оператор присваивания (:=) дает исполнителю команду вычислить значение выражения, указанного в правой части оператора и присвоить это значение переменной, идентификатор которой указан слева от знака присваивания.
К простым командам относят также и операторы ввода и вывода информации. При помощи этих операторов происходит получение программой данных от пользователя и предоставление пользователю результатов выполнения алгоритма.
В языке программирования PascalABC оператором ввода информации служит команда read() и ее модификации, оператором вывода write() и ее разновидности:
read (a,n); / Ввод значений a,n
writeln(‘a = ‘,a); / Вывод значения переменной a
Простую команду при графическом способе представления алгоритма показывают в виде функционального блока с одним входом и одним выходом. Пример представлен на рисунке 16.
Рисунок 16 – Простая команда
3.3 Составные команды
Составная команда строится из последовательности команд, идущих одна за другой.
При выполнении алгоритма записанные команды по очереди в естественном порядке их записи.
Общий вид команды следования:
начало
<команда 1> ;
<команда 2> ;
… ;
<команда N>
конец;
Такой порядок записи операторов определяет базовую алгоритмическую структуру следование и соответствует линейному алгоритму.
Блок-схема линейного алгоритма представлена на рисунке 17.
Рисунок 17 – Линейный алгоритм
Ветвление (разветвляющийся алгоритм) представляет собой альтернативу с возможностью выбора одного из двух путей. Выбор при этом зависит от истинности определенного условия:
если < условие >
то < команда 1 >
иначе <команда 2 >
все
Блок-схема разветвляющегося алгоритма представлена на рисунке 18.
Рисунок 18 – Разветвляющийся алгоритм
Ветвление используется также и в неполной форме, когда действие предусмотрено только в случае выполнения условия. Блок-схема неполной формы ветвления представлена на рисунке 19.
Рисунок 19 – Неполная форма ветвления
Повторение (циклический алгоритм) используется для записи многократно повторяемых действий.
Составная команда цикла, которую также называют командой повторения, содержит в той или иной форме сформулированное условие, значение которого определяет количество повторений.
В программировании используются несколько видов цикла.
В отдельных случаях возникает необходимость в использовании бесконечного цикла:
повторять
< команда >;
Блок-схема бесконечного цикла представлена на рисунке 20.
Рисунок 20 – Бесконечный цикл
Традиционной в программировании выделяют три вида цикла:
- цикл с предусловием;
- цикл с постусловием;
- цикл с параметром.
В цикле с предусловием повторять заданное действие требуется до тех пор, пока верно некоторое условие:
пока < условие > повторять
< команда >;
Блок-схема цикла с предусловием представлена на рисунке 21.
Рисунок 21 – Цикл с предусловием
В цикле с постусловием повторять заданное действие требуется до тех пор, пока исходное условие выполняется, но условие задается после тела цикла.
В отличие от цикла с предусловием, цикл с постусловием (цикл – до) предусматривает выполнение команды как минимум один раз:
повторять
< команда >
до < условие >;
Блок-схема цикла с предусловием представлена на рисунке 22.
Рисунок 22 – Цикл с постусловием
На практике очень часто используется третий вид цикла – цикл с параметрами. При использовании такого цикла количество повторений тела цикла определено заранее.
Цикл с параметром используется в различных модификациях:
для всякого элемента х принадлежащего М выполнить
< команда >;
для х принадлежащего М пока < условие > повторять
< команда >;
для х от m до n повторять
< команда >;
для х от m до n шаг h повторять
< команда >;
Блок-схема цикла с предусловием представлена на рисунке 23.
Рисунок 23 – Цикл с параметрами
Базовые алгоритмические структуры служат основной разработки любого алгоритма. Программа – это комбинация в произвольном порядке основных алгоритмических структур. При этом одна алгоритмическая структура может быть элементом другой.
3.4 Языки программирования XXI века
Новейший язык программирования математических вычислений Julia был представлен пользователям в 2012 году. С тех пор популярность этого языка программирования среди разработчиков постоянно растет, а темп роста его поклонников, согласно статистике, удваивается каждые девять месяцев. Интересен тот факт, что владение языком программирования Julia позиционируется сегодня как один из наиболее высокооплачиваемых навыков в отрасли IT-технологий.
Основным назначением языка программирования Julia являются математические расчеты и моделирование, но он также эффективен для разработки программ общего назначения. Это ставит его в один ряд с такими мощными высокоуровневыми языками программирования, как MatLab, Scilab или Octave. Язык программирования Julia поддерживает технологию распределенных вычислений, что очень актуально в настоящее время, так как позволяет существенно экономить ресурс времени при реализации сложных и громоздких вычислений.
Язык программирования Julia привлекателен тем, что он обеспечивает разработчику простой (часто интуитивно понятный) синтаксис команд.
Базовая концепция языка программирования Julia заключается в том, что, находясь в границах одного языка, допускается решать как проблемы прототипирования, так и глубокой оптимизации кода, в том числе:
- просмотр ассемблерного кода;
- поддержку параллельных и распределенных вычислений.
Большим достоинством языка Julia является то, что он распространяется бесплатно. В пользу нового языка также свидетельствует то, что в самых престижных высших учебных заведениях по всему миру преподается более 35 обучающих курсов языка Julia.
Иерархия числовых типов языка программирования Julia представлена на рисунке 24.
Рисунок 24 Иерархия числовых типов языка Julia
Из рисунка видно, что разнообразие возможных числовых данных удовлетворит даже самого придирчивого специалиста.
В то же время язык защищен от несанкционированной замены типов – в нем исключено автоматическое преобразование типов. А явное предобразование типов, сознательно реализуемое программистом, выполняется очень просто, к примеру:
Int64(’a’) # из символа в целое
Julia поддерживает такие сложные типы данных, как:
- кортежи;
- массивы;
- составные типы;
- словари;
- строки.
Имеется множество встроенных функций, предназначенных для работы с различными типами данных.
Особенно ярко представлена палитра функций для выполнения действий над матрицами.
В языке программирования Julia реализованы все основные алгоритмические структуры – следование, ветвление и цикл.
В состав среды Julia включены пакеты Gadfly, Winston и PyPlot для построения графиков. Пример графиков представлен на рисунке 25.
Рисунок 25 – Построение графических моделей в Julia
Разработчики языка предлагают Julia ученым как альтернативу C.
В настоящее время многие специалисты отдают предпочтение этому новому языку программирования, считая его главным недостатком дефицит готовых библиотек. Но этот недостаток легко компенсируется возможностью использовать библиотеки C.
ЗАКЛЮЧЕНИЕ
Современный человек в большинстве вопросов и задач, касающихся обработки информации, полагается на компьютерную технику. При этом непосредственно помимо компьютера используются и другие виды микропроцессорных устройств - принтеры, сканеры, сетевые устройства, мобильные телефоны и т.п. Активно развивается мир вещей, подключенных к глобальной вычислительной сети – Интернет вещей. И вместе с технологиями развиваются языки программирования.
Знакомство с языками разработки компьютерных программ позволяет специалисту лучше понять процессы, происходящие в компьютере во время выполнения того или иного алгоритма. Разрабатывая программы, человек учится точно структурировать решаемую задачу, разбивать ее на подзадачи, грамотно формулировать действия, необходимые для выполнения решения. Занятия программированием дисциплинируют процесс интеллектуальной деятельности, помогают продуктивнее организовать использование времени, способствуют формированию алгоритмического мышления.
Выбор языка программирования для изучения достаточно сложен. Сегодня разработчикам предлагается на выбор множество языков программирования высокого уровня и удобных сред разработки программ. Актуален и тот факт, что языки программирования не являются застывшими объектами, они постоянно развиваются, совершенствуются, подстраиваются под современные требования к разработке программного обеспечения.
Возникают новые задачи в программировании, у компьютеров появляются новые технические возможности. Все это дает толчок к появлению все новых и новых языков программирования высокого уровня.
Цель курсовой работы реализована, задачи выполнены.