Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

Примитивы - это единицы, имеющие значение, т. Е. Семантическое значение в языке. Таким образом, они отличаются от токенов в синтаксическом анализаторе , которые являются минимальными элементами синтаксиса .

Примитивы машинного уровня [ править ]

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

Примитивы микрокода [ править ]

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

Примитивы языка высокого уровня [ править ]

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

прежде, чем наконец

  • выполнение последней операции сохранения в целевом месте назначения.

Некоторые операторы HLL, особенно те, которые включают циклы , могут генерировать тысячи или даже миллионы примитивов на языке программирования низкого уровня (LLL), которые составляют истинную длину пути инструкции, которую процессор должен выполнить на самом низком уровне. Это восприятие называется штрафом за абстракцию . [1] [2] [3]

Примитивы интерпретируемого языка [ править ]

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

Языковые примитивы четвертого и пятого поколения [ править ]

Языки программирования четвертого поколения (4GL) и языки программирования пятого поколения (5GL) не имеют простого соответствия «один ко многим» от примитивов высокого уровня к низкому. Есть некоторые элементы примитивов интерпретируемого языка, воплощенные в спецификациях 4GL и 5GL, но подход к исходной проблеме не является процедурной конструкцией языка и больше ориентирован на решение проблем и системную инженерию .

См. Также [ править ]

  • Примитивный тип
  • Программно-аппаратный код

Ссылки [ править ]

  1. ^ Surana P (2006). «Мета-компиляция языковых абстракций» (PDF) . Архивировано из оригинального ( PDF ) 17 февраля 2015 года . Проверено 17 марта 2008 . Цитировать журнал требует |journal=( помощь )
  2. ^ Kuketayev. «Тест на наказание за абстракцию данных (DAP) для небольших объектов в Java» . Архивировано из оригинала на 2009-01-11 . Проверено 17 марта 2008 .
  3. ^ Chatzigeorgiou; Стефанидес (2002). «Оценка производительности и мощности объектно-ориентированных и процедурных языков программирования». В Блибергере; Strohmeier (ред.). Материалы - 7-я Международная конференция по надежным программным технологиям - Ada-Europe'2002 . Springer. п. 367. ISBN. 978-3-540-43784-0.