Файл: Основы программирования на языке Pascal ( Машинный язык ).pdf
Добавлен: 01.04.2023
Просмотров: 105
Скачиваний: 2
СОДЕРЖАНИЕ
Глава 1. Классификация языков программирования
1.2. Машинно-ориентированные языки
1.3. Машинно-независимые языки
1.4.Языки символического кодирования
Глава 2. Линейные списочные структуры
2.1. Однонаправленный и двунаправленный список
Глава 3. Операции над списочными структурами
3.2. Представления списков через списочные ячейки
3.3 .Представления списков через точечную пару
3.4. Списочная ячейка и базовые функции
Введение
Множество языков программирования, они предназначены, для написания программ. Программа – алгоритм, который представляет собой язык, который понимает система операционной системы для исполнения. В набор языков программирования входит лексический, синтаксический, семантический эти правила используются для создания компьютерной программы. Всё это помогает определить, то что будет срабатывать, каким образом будут сохраняться и передаваться данные, так же, будет обратить внимание на действия, что будет выполнять написанная программа.
С того дня когда была создана первая программируемая машина, программисты написали более 8,5 тысяч языков программирования, но на этом точку никто не ставит, число языков программирования только растёт. Существуют языки, которыми могут пользоваться исключительно люди которыми он был написан, но многие языки программирования становятся знаменитыми на весь мир. Профессионалы примерно используют от 2 до 5 языков программирования.
Сам язык программирования предназначен для – написания программ, они предназначены для передачи определённому компьютеру какой либо инструкции к выполнению какого либо процесса или для управления отдельным устройством или оборудованием.
Задачи для языков программирования бывают различными, язык программирования от естественного отличается лишь тем, что он предназначен для передачи какой либо команды вычислительной машине от человека, а естественные язык люди используют только для передачи какого либо сообщения или общения. То есть, язык программирования осуществляет передачу информации, команды, или какого либо действия от человека к ЭВМ, в то время как человеческий язык служит для того чтобы обменяться информацией.
Исполнение языков программирования использует специальные конструкции для манипулирования, определения структур данных, а так же управление процессом вычислительных действий.
Первые языки программирования, были очень примитивны, они ни чем не отличались от обычных единиц и нулей, которые может разобрать компьютер. Использование таких языков программирования, было крайне не удобно, так как программисту приходилось знать машинный код каждой ЭВМ и умело расставить команды, для того чтобы компьютер смог воспроизвести его. Первым языком, который помог облегчить работу программистам был Ассемблер. В этом языке, то что раньше отображалось цифрами, отображалось символами. То есть числа просто на просто, заменили на символы, их на много проще запомнить и работать с ними. Язык Фортран был одним из первых языков программирования, его написали в 50-х годах, и до сих пор он является одним из самых распространённых языков программирования. Этот язык, больше использовали люди работа которых сводилась, к инженерии, строительству, решение задач по физике и многих других наук, где работа велась с вычислением.
Так же для работы с экономическими проблемами был создан язык, под названием Кобол. Был объявлен конкурс в 1968 г. на лучший язык программирования. Язык программирования названый Алгол-68 победил в этом конкурсе, но большой популярностью так он и пользовался. После чего, Никлаус Вирт, это создатель языка Паскаль, создал более простой и быстрый язык программирования. В данное время этот язык является одним из самых распространённых языков программирования.
Для школ был создан ещё более простой язык, с которым можно было вести целый диалог его назвали Бэйсик, на текущее время, его используют для ознакомления с языками программирования. Когда человек вступил на новую ступень программирования, это потребовало написание более сложных программ, которые могли бы управлять работой ЭВМ, что привело к написанию языка программирования Си, он появился в начале 70-х годов. Этот язык является самым универсальным языком программирования. Про язык Си можно сказать одно – он самый простой и универсальный язык для написания программ, программы которые написаны на этом языке по скорости ни чем не уступают программ написанным на языке программирования Ассемблер.
Есть всего пару подходов для определения языка программирования.
Часто используемые языки программирования: Денудационного (математического), Деривационного (аксиоматического), Операционного.
Когда описывается операционный подход исполняется языки программирования с помощью которых интерпретация воображаемых ЭВМ.
Последствие Деривационной семантики можно описать как конструкцию языка с помощью логики. В то время как Денудационная семантика типична для математических исчислений
Актуальность темы исследования заключается в том, что для повышения эффективности программы ссылочный тип данных необходим при работе с данными различного размера и структуры.
Объект исследования – структуры данных языка программирования Паскаль. Предмет исследования – ссылочный тип данных языка программирования Паскаль.
Цель курсовой работы заключается в расширении и систематизации теоретических знаний по теме: «Создание ссылочных типов в языке программирования Паскаль».
Задач исследования:
- изучение классификацию языков программирования;
- рассмотреть линейные списочные структуры;
- исследовать операции над списочными структурами;
- рассмотреть использование разрушающих функций.
Глава 1. Классификация языков программирования
Представление языков программирования может быть в виде набора спецификаций которые определяет их по синтаксису и семантику.
Для языков программирования, которые пользуются большим спросом создаются стандарты. Эти организации проводят, проверки, обновления и публикации специальных и формальных видов языка. [2, с.27]
Сами языки программирования могут строиться только по той или иной модели вычислений программирования.
Множество языков программирования больше всего уделяют внимание на императивную модель вычислений, но так же существуют и множество других подходов. Существуют языки со стековой вычислительной моделью, а так же логические и функциональные языки программирования, которые ввёл ещё советский математик Марков А.А.
В данный момент развитие берёт проблемно – ориентированные и визуальные языки программирования.
В рамки эти организаций так же входят разработки и модернизации, поддержка языков программирования которые в этом нуждаются.
1.1. Машинный язык
У каждого компьютера имеется свой машинный язык, который является индивидуальным, машинные языки являются командными. Но бывают такие виды компьютеров такие как «IMB, 370, EC ЭВМ» имеют единый язык для компьютеров у которых мощность отличается друг от друга. [14, с.27]
Подразделение языков программирование может быть компилируемыми и интерпретируемыми.
На самом компилируемом языке специальная программа под названием «компилятор» преобразует действие под машинный код, после чего записывается в исполнимый модуль, так же он может быть запущен совершенно отдельно. Одним словом, компилятор осуществляет перевод с языка высокого уровня на язык который распознаёт двоичный процессор.
Если же программа написана на языке под названием «интерпретатор», то перевод осуществлён не будет, а сразу перейдёт к выполнению. Но при этом без запуска интерпретатора программу нельзя будет запустить. Сам процессор компьютера, по сути и есть интерпретатор машинного кода.
Говоря о компиляторе, то он по сути просто переводит исходный текс программы на машинный либо сразу, либо целиком, но при этом создаётся совершенно отдельная программа, а потом уже интерпретатор будет выполнять свою работу во время выполнения процесса.
Само разделение языков на «Компилируемые» и «Интерпретируемые» называется условным. Например для языка «Паскаль» будет возможно написать интерпретатор, так как язык считает традиционным в направлении программирования. Современные интерпретаторы например не посредственно не выполняют условия языка, происходит компиляция в промежуточное время. [1, с.7]
Язык который является интерпретируемым уже может быть скомпилирован, пример можно привести на языке «Лисп», с момента создания, он был интерпретируемым, и у него нет ограничений по компиляции.
При компиляции создаётся код, который во время исполнения может динамически меняться во время исполнения программного хода.
Обычно программы, которые прошли компилятор, работают на много лучше, нежели программы не прошедшие его. Такие программы не требуют дополнительных программ для улучшения работоспособности, так как они уже переведены на машинный язык.
Если при написании программы, будет изменена хоть одна буква, символ или знак, то программа будет нуждаться в повторной компиляции, это обычные трудности при создании программ. Скомпилированная программа может работать в той же системе, в который была скомпилирована, и под той же производительностью компьютера. Но для того чтобы создать новый код, придётся заново компилировать программу.
Некоторые интерпретируемые языки обладают хорошими возможностями, то есть программу которую вы пишите можно запустить, для просмотра ваших ошибок, что облегчает работу. Программа, которая прошла интерпретацию может быть запущена на любом компьютере и на любой операционной системе, без как либо дополнительных действий.
Интерпретируемые программы по работоспособности уступают программам прошедшим компилятор, да и без дополнительных программ они могут вообще не работать. [5, с.2]
Такие языки как: Java и С#, они стоят между интерпретируемым и компилируемым языком. То есть эти языки компилируются не в машинный язык, а в независимый машинный код низкого уровня (байт-код). После (байт-код ) чего он проходит виртуальную машину. Для того чтобы получить байт-код нужно пройти интерпретацию, хотя некоторые его части могут быть интерпретированы в машинный код сразу во время выполнения работы для её ускорения, это всё происходит по теории компиляции «на лету».
Такой подход помогает использовать плюсы как интерпретатора так и компилятора. Имеется язык под название «Форт» он имеет и интерпретатор и компилятор. Но вот уже компьютеры нового поколения, имеют на много больше способностей чтения языков программирования.
1.2. Машинно-ориентированные языки
Машинно-ориентированные языки – это язык у которого набор операторов будет работать в зависимости от того какова производительность компьютера.
Языки программирования, рассчитаны на использование всех символов ASCII, это необходимо для написания любого языка. Управляющие символы могут использоваться в ограниченном порядке, имеются исключения для следующих символов символ CR, для возврата «Каретки», горизонтальная табуляция HT, перевод строки CF.
Языка возникшие в эпоху 6-битных символов очень ограниченный набор символов. Так называемый алфавит Фортрана имеет всего 49 символов. Исключение имеет лишь язык APL, в нём имеется множество символов специализирующих какую либо функцию.
От реализации зависит использование кода на языках «Юникод», KOI8-R, это разрешается только в комментариях, строковых константах, символьных. Во время СССР был написан язык, в котором все символы состояли из русских букв, но особого признания такой язык не получил, единственное исключение для встроенного языка 1C:Предприятие.
Так как проекты по написанию языков сдерживаются международным стандартом, этим и задерживается число используемых символов. Если бы каждый писал свой код, на своём языке было бы очень сложно писать программы. [6, с.27]
Это самый лучший язык программирования, при котором задействуются все способности компьютера и его параметры:
Машинно-ориентированные языки подразделяются на классы.
1.3. Машинно-независимые языки
Машино-независимые языки – служит для описания алгоритмов, решение задач, которые подлежат обработке. Эти языки программирования не требуют особых знаний и навыков, то есть доступны для широкого круга пользователей.
Языки подобные этому получили название «Высокоуровневых языков» программирования. Программы написанные на этом языке выполняются последовательностью оператора, согласно написанным языком. Т о есть система будет выполнять те действия которые описаны в программе для трансляции.
Последовательность команд часто используется в машинных программах, которые используются операторами в «высокоуровневых языка». Тем самым программисты теперь могут не задерживаться и не расписывать по строчно процесс который он выполнял для машинных команд, а начать работу именно в особенности алгоритма.
1.4.Языки символического кодирования
Язык символического кодирования, так же относится к командным языкам. Коды представляют собой либо двоичную либо восьмеричную систему исчисления, эти коды используются для написания программ. Индикаторы заменены на коды, что помогает и облегчает написание программ, да и после легко запомнить смысл операции. [7, с.52]