Трансляторы могут быть компилирующего типа – компиляторы и интерпретирующего типа – интерпретаторы
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

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

Интерпретатор (простой интерпретатор) сразу производит анализ, перевод (в машинный код) и выполнение программы строка за строкой. Поэтому интерпретатор должен находиться в оперативной памяти в течение всего времени выполнения программы пользователя. При интерпретации скорость выполнения программы существенно снижается и интерпретируемая программа не может выполняться отдельно от программы-интерпретатора , однако весь процесс прохождения программы на ЭВМ упрощается и имеется возможность организации диалогового (интерактивного ) режима отладки и выполнения программы. Пример, язык Лисп, Бэйсик, Питон.

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

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

 

Разработать язык – это создать транслятор для него.



Типы языков программирования

1. процедурные (императивные, указывают порядок выполнения операторов) (Паскаль ,Си)

2. логические (декларативные, основаны на мат. Логике) (Лисп, Пролог),

Языки запросов ( SQL )

Среди 1. – можно выделить 3 направления

Фортран-ориентированные (Фортран, Кобол, Visual Basic )

Паскаль-ориентированные ( Borland Pascal , Turbo - Pascal , Delphi, Ада, Zonnon )

3. Си-ориентированные (Си, С++, Java, C#, Borland C ++, Turbo C ++, Visual C ++ )

Гибридные (Python) или специализированные (PHP)

 

Алгол         1958        Швейцария международный коллектив для записи алгоритмов

Алгол 60 1960        Питер Наур и др.           Международный.

 

Фортран      1957(54)  США     Джон Бэкус (группа IBM) 

История создания языка Паскаль 1970 год.

Автор – Никлаус Вирт – профессор, директор Института информатики Швейцарской высшей политехнической школы.

Назван – в честь французского математика Блеза Паскаля, в 1641 г. сконструировал суммирующую машину

Цель – для обучения программированию

 

Турбо – Паскаль

Автор француз Филип Кан Ученик Вирта Курил Aple 2 и написал компилятор для Паскаля в Калифорнии, имея 2000 дол.. Один из создателей фирмы Borland В 1984 за 1 месяц заработал 150 тыс. дол.

Среда Delphi 1995 , язык Object Pascal

C 2008 г Embarcadero®

2014 год Embarcadero® RAD Studio XE7

2015 год Embarcadero® RAD Studio XE8

Текущая версия Embarcadero RAD Studio 10.2 Токио (март 2017г)

 

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

объединяет Delphi XE10 и C++ Builder XE10 в единую интегрированную среду разработки и добавлена поддержка Android 6.0.

 

После добавления Linux, разработчики RAD Studio получили возможность кросс-компиляции на все главные платформы — Windows, Linux, macOS, iOS и Android — получая надежность и быстродействие, типичные для скомпилированных нативных приложений.

 

Содержит:  Delphi®, C++Builder®, Embarcadero Prism™ и HTML5 Builder.

С RAD Studio XE8 существует  встроенная поддержка для SQL Server, Oracle, Sybase, DB2, InterBase, SQL Anywhere, SQLite, MySQL и облачными сервисами, включая Windows Azure и Amazon.

 


C

С — один из первых языков программирования, ставших популярными и используемыми до сих пор. Создан Деннисом Ритчи в 1972 году в Bell labs и стал основой для других языков: C++, Java, C#, JavaScript и Perl.

90% ядра системы UNIX написано на С

Автор Деннис Ритчи программист лаборатории американской корпорации AT&T (Американ телефон и телеграф) .

Цель: язык системного программирования

Преимущества: язык высокого уровня; имеет низкоуровневые средства.

C++

Язык С был хорош, но ему не хватало объектно-ориентированности. В 1983 году был создан более мощный язык C++, который часто называют объектно-ориентированной версией C. C++ — самый используемый императивный язык в мире. Его используют для создания удивительных приложений; браузеры Google Chrome, Mozilla Firefox, музыкальный проигрыватель Winamp и продукты Adobe написаны на языке C++.

C++ также используется для создания игр для смартфонов и приложений. На рынке труда C++ разработчики очень востребованы и число вакансий постоянно растёт.


 

 

Cхема алгоритма поиска максимального и минимального элементов одномерного массива и замена первого элемента их суммой.

 

 

 

 


 

Текст программы использования одномерного массива на С++

 

#include <stdio.h>

#include <conio.h>

int main()

{

clrscr();

int i;

float x[10], max, min;

/*Ввод элементов массива*/

for (i=0;i<10;i++)

 {

 printf("x[%d]=",i+1);

 scanf( "%f",&x[i]);

 }

/*Поиск максимального элемента и его номера*/

max=x[0];

min=x[0];

for(i=1;i<10;i++)

 {

if (x[i]>max) max = x[i];

if (x[i]<min) min=x[i];

 }

/*замена частным первого элемента массива*/

x[0] = max+min;

/*Вывод элементов массива*/

printf("\nmax=%f ",max);

printf("\nmin=%f \n",min);

for(i=0;i<10;i++)

 printf("\nx[%d]=%f ",i+1,x[i]);

getch();

return 0;

}

 

Нажимаем клавиши CTRL+F9 для компиляции и запуска на выполнение программы. Получаем результат:






Java

Java сочетает в себе С и С++ и является наиболее мощным языком для создания кроссплатформенных приложений. Java, отметивший недавно 20-летие, стал первым полностью объектно-ориентированным языком программирования, который работает по принципу «Write Once, Run Anywhere». Вы можете скомпилировать исходный код Java однажды и запускать его на любом устройстве с установленной JVM (виртуальной машиной Java)

Java является одним из самых популярных языков для бэкэнд-разработки современных корпоративных веб-приложений. С Java и основанными на нём фреймворками разработчики могут создавать масштабируемые веб-приложения для широкого круга пользователей. Java — также основной язык, используемый для разработки родных Android-приложений для смартфонов и планшетов.

C#

C# — представитель семьи языков программирования Microsoft. Он был создан в 2000 году как часть платформы Microsoft .Net framework. В использовании C# очень близок к Java, хотя говорили, что C# сочетает надёжность C++ с продвинутыми характеристиками Java. На языке C# можно создать практически все типы приложений для большинства платформ.

Фреймворк (англ. framework — каркас, структура) — программная платформа, определяющая структуру программной системы; программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта.

PHP

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

Язык PHP наряду с базами данных (например, MySQL) является важным инструментом для создания современных веб-приложений. На PHP разработано большинство сайтов, ориентированных на большой объём данных.

Objective C

Бред Кокс и Том Лав создали Objective C в 1983 году, стремясь исправить недостатки C. Этот язык является основным для создания приложений для iOS и OS X. Objective C-программисты в основном задействованы в разработке под эти крайне популярные платформы, что гарантируют востребованность на рынке труда и высокую зарплату.

 

HTML

HTML (от англ. HyperText Markup Language — «язык гипертекстовой разметки») — стандартный язык разметки документов во Всемирной паутине. Большинство веб-страниц содержат описание разметки на языке HTML (или XHTML).

<html> 

<head> 

<title>

   Пример 2

</title> 

</head> 

<body> 

<H1 ALIGN=CENTER>

   Привет!

</H1> 

<H2>

Это пример HTML-документа

   </H2> 

<P>Теперь мы знаем, что абзац можно выравнивать не только влево,

</P> 

<P ALIGN=CENTER>но и по центру

   </P> <P ALIGN=RIGHT>или по правому краю.

</P> 

</body> 

</html>

 

 



JavaScript

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

Каждый современный сайт использует JavaScript. Это ключевой язык для создания интерактивности сайта или построения пользовательских интерфейсов с одним из десятка популярных JavaScript-фреймворков.

Браузер, когда видит <script>:

· Начинает отображать страницу, показывает часть документа до script

· Встретив тег script, переключается в JavaScript-режим и не показывает, а исполняет его содержимое.

· Закончив выполнение, возвращается обратно в HTML-режим и только тогда отображает оставшуюся часть документа.

 



Python

Гвидо ван Россум создал Python в 1991 году. Это ещё один высокоуровневый язык программирования и одновременно самый простой для изучения благодаря минимализму, читабельности и понятному синтаксису. Google развивал Python около 10 лет и всё ещё запускает проекты с использованием этого скриптового языка.

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

Пример Определить, сколько в введенном пользователем числе четных цифр, а сколько нечетных.

 

a = input()

a = int(a)

even = 0

odd = 0

while a > 0:

if a % 2 == 0:

    even += 1    

else:          

     odd += 1

     a = a // 10

print("Even: %d, odd: %d" % (even, odd))

Примерный результат:

65439 Even: 2, odd: 3

 

SQL

SQL — аббревиатура от Structured Query Language. Это язык запросов к базам данных, который предоставляет формальный способ взаимодействия с базой данных приложения. SQL очень прост в изучении и близок к английскому языку по синтаксису.

 

 

Штефан Цукерман, программист:

«Если вы умеете правильно организовывать данные, совершенно не важно, каким языком вы владеете. Есть три тесно связанные вещи, которые вам нужно знать:

1. Основные структуры данных и алгоритмы (связные списки, хеш-таблицы, сбалансированные и другие деревья поиска, очереди и кучи);

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

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





Дата: 2018-12-21, просмотров: 502.