3502

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

Лекция

Информатика, кибернетика и программирование

Языки программирования Язык программирования – формальная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя (например, ЭВМ, т.е. компьютера). Язык программирования определяет набор лексических, си...

Русский

2012-11-02

22.84 KB

58 чел.

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

Язык программирования – формальная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя (например, ЭВМ, т.е. компьютера).

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

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

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

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

Эти спецификации обычно включают в себя описание:

  1.  типов и структур данных;
  2.  операционную семантику (алгоритм вычисления конструкций языка);
  3.  семантические конструкции языка;
  4.  библиотеки примитивов (например, команды ввода-вывода);
  5.  философии, назначения и возможностей языка.

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

Языки программирования принято делить на низкоуровневые и высокоуровневые. Такое разделение происходит в зависимости от степени детализации команд – чем меньше детализация, тем выше уровень языка.

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

Низкоуровневый язык программирования – язык программирования, близкий к программированию непосредственно в машинных кодах. Низкоуровневые языки, как правило, используют особенности конкретного семейства процессоров.

Низкоуровневым языком является язык ассемблера (от английского assembler - сборщик) - названия транслятора (компилятора) c языка ассемблера. Язык ассемблера, часто для краткости неверно называют "ассемблером".

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

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

Языки программирования высокого уровня

Высокоуровневый язык программирования – язык программирования, разработанный для быстроты и удобства использования программистом. Термин «высокоуровневый» здесь означает, что язык предназначен для решения абстрактных высокоуровневых задач и оперирует не инструкциями к оборудованию, а логическими понятиями и абстракцией данный. Это позволяет быстрее программировать сложные задачи и обеспечивает относительную независимость от оборудования. Использование разнообразных трансляторов и интерпретаторов обеспечивает связь программ, написанных при помощи языков высокого уровня, с различными операционными системами и различным аппаратным оборудованием, в то время как их исходный текст остаётся, в большей части, неизменным.

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

Первым языком программирования высокого уровня считается компьютерный язык Plankalkül, разработанный немецким инженером Конрадом Цузе ещё в период 1942–1946 гг. Однако, широкое применение высокоуровневых языков началось с возникновением Фортрана и созданием компилятора для этого языка (1957).

Наиболее распространёнными языками высокого уровня в настоящее время являются С++, Visual Basic, Delphi, Java, Python, Ruby, Perl, PHP.

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

  1.  Вставка фрагментов на языке ассемблера в текст программы (специальными директивами языка) или написание процедур на языке ассемблера. Способ хороший для несложных преобразований данных, но полноценного ассемблерного кода - с данными и подпрограммами, включая подпрограммы с множеством входов и выходов, не поддерживаемых высокоуровневыми языками, с помощью него сделать нельзя.
  2.  Модульная компиляция. Большинство современных компиляторов работают в два этапа. На первом этапе каждый файл программы компилируется в объектный модуль. А на втором объектные модули линкуются (связываются) в готовую программу. Прелесть модульной компиляции состоит в том что каждый объектный модуль будущей программы может быть полноценно написан на своем языке программирования и скомпилирован своим компилятором.

Среда визуального программирования Delphi

Бурное развитие вычислительной техники, потребность в эффективных средствах разработки программного обеспечения и языках программирования привели к появлению систем программирования, ориентированных на так называемую "быструю разработку" - RAD-систем (Rapid Application Development).

Среди таких систем быстрой разработки приложений можно выделить Borland Delphi, Borland C Builder и Microsoft Visual Basic. В их основе лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть рутинной работы, оставляя программисту работу по конструированию диалоговых окон и функций обработки событий.

Delphi – это среда быстрой разработки, в которой в качестве языка программирования используется язык объектно-ориентированный язык Object Pascal.

Object Pascal - результат развития языка Turbo Pascal, который, в свою очередь, развился из языка Pascal. Pascal, впервые предложенный швейцарским ученым Н. Виртом еще в 1970г., является полностью процедурным языком, Turbo Pascal начиная с версии 5.5 добавил в Pascal объектно-ориентированные свойства, а Object Pascal - объектно-ориентированный язык программирования с уникальным свойством доступа к метаданным классов (то есть к описанию классов и их членов) в компилируемом коде, также называемом интроспекцией.


 

А также другие работы, которые могут Вас заинтересовать

83529. Голова дипломатичного представництва. Початок місії голови дипломатичного представництва. Закінчення місії голови дипломатичного представництва 35.69 KB
  Початок місії голови дипломатичного представництва. Закінчення місії голови дипломатичного представництва Віденська конвенція про дипломатичні зносини 1961 р. Голови постійних дипломатичних представництв перших двох класів акредитуються при голові держави а голова дипломатичною представництва третього класу при міністрі закордонних справ.
83530. Структура та персонал дипломатичних представництв. Дипломатичний корпус 36.28 KB
  Персонал дипломатичних представництв поділяється на три категорії: дипломатичний адміністративно-технічний і обслуговуючий. Членами дипломатичного персоналу є члени персоналу представництва які мають дипломатичний ранг. Дипломатичні ранги це службові звання які на відміну від встановлених міжнародним правом класів які призначені лише для голів представництв надаються дипломатичним працівникам на основі законодавства держави що їх акредитує.
83531. Дипломатичні привілеї та імунітети 34.74 KB
  Дипломатичні привілеї деякі особливі права пільги та переваги які надаються дипломатичним представництвам та їх персоналу. дипломатичні імунітети і привілеї поділені на імунітети і привілеї дипломатичного представництва та особисті імунітети і привілеї членів дипломатичного персоналу та їхніх родин. До другої категорії відносяться: особиста недоторканість недоторканість особистої резиденцій повний імунітет від кримінальної юрисдикції держави перебування а також від цивільної і адміністративної юрисдикції у відношенні виконавчих дій...
83532. Поняття та джерела консульського права. Встановлення консульських відносин 33.53 KB
  Встановлення консульських відносин. Консульське право сукупність міжнародноправових норм що регламентують правове положення та порядок діяльності консульських установ. Важливу роль у консульських відносинах відіграють двосторонні консульські конвенції у яких крім врегулювання загальних питань закріплюються особливості здійснення консульських відносин між конкретними державами. Загальні засада діяльності консульських установ також визначаються актами національного законодавства зокрема Консульським статутом України затвердженим Указом...
83533. Класи консульських установ. Функції консульських установ 36.75 KB
  Функції консульських установ. передбачає наступні класи консульських установ: генеральні консульства консульства; віцеконсульства; консульські агентства. Голови цих консульських установ йменуються відповідно генеральний консул консул віцеконсул і консульський агент.
83534. Початок і закінчення консульських місій 35.4 KB
  Голові консульської установи надається консульський патент державою що представляється. До виконання своїх обов\'язків голова консульської установи може приступити лише після отримання дозволу держави перебування який має назву екзекватура. Початком консульської місії голови консульської установи вважається момент видачі йому екзекватури інших консульських посадових осіб повідомлення країни перебування про їх прибуття з зазначенням імені прізвища посади рангу тощо. Консульська місія припиняється на наступних підставах: відкликання...
83535. Персонал консульської установи. Консульський корпус 33.02 KB
  На відміну від дипломатичних представництву склад консульських установ входять не три а дві категорії членів персоналу консульські посадові особи та співробітники консульської установи. До категорії консульських посадових осіб входять всі особи на яких покладено виконання консульських функції. Сукупність іноземних консульських представників у межах консульського округу в якому вони виконують свої функції називається консульським корпусом. У вузькому сенсі консульський корпус складається з глав консульських установ.
83536. Консульські імунітети та привілеї 34.97 KB
  В консульському праві як і в дипломатичному розрізняють дві категорії привілеїв та імунітетів: а привілеї та імунітети консульських установ; 6 привілеї та імунітети штатних консульських посадових осіб та інших працівників консульських установ. Найсуттєвішими в першій категорії є: недоторканність консульських приміщень; звільнення консульських приміщень від податків; недоторканність консульського архіву та документів; свобода зносин; безперешкодні зносини і контакти з громадянами держави що представляється. Другу категорію консульських...
83537. Право спеціальних місій 37.02 KB
  Функції спеціальної місії визначаються за взаємною згодою між державою що посилає і приймаючою державою. Для направлення або прийняття спеціальної місії не є необхідною наявність дипломатичних або консульських відносин між державами. За деякими виключеннями держава що посилає може на свій розсуд призначити членів спеціальної місії повідомивши попередньо приймаючій державі всю необхідну інформацію про чисельність і шал спеціальної місії і зокрема повідомивши про прізвища і посади осіб яких вона має намір призначити.