Язык программирования — формальный язык, предназначенный для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, которые определяют внешний вид программы и действия, которые будет выполнять.
Язык программирования может быть представлен в виде набора спецификаций, определяющих его синтаксис (набор правил ЯП) и семантику (смысл значение кода в ЯП).
Для многих широко распространённых языков программирования созданы международные стандарты.
Специальные организации проводят регулярное обновление и публикацию спецификаций и формальных определений соответствующего языка.
В рамках таких организаций продолжается разработке, развитии и модернизации языков программирования и решаются вопросы о расширении или поддержке уже существующих и новых языков программирование.
Любой алгоритм, есть последовательность предписаний, выполнив которые можно за конечное число шагов перейти от исходных данных к результату. В зависимости от степени детализации предписаний обычно определяется уровень языка программирования — чем меньше детализация, тем выше уровень языка.
По этому критерию можно выделить следующие уровни
языков программирования:
-Низкий (машинные): на нем построен машинный код и Ассемблер;
-Средний: на нем построен Фортран и С;
-Высший: на нем построены большинство популярных ЯП, такие как: C++, Java, Python, Ruby, JavaScript и т.д.
Разница в высших, средних и низких языков в том, что высокие языки относят программирования, которые созданы с расчетом на то, что их должны понимать люди. Они независимы: программистам не нужно знать, на каком оборудовании будет запускаться программа. Средние языки служат как бы связующим звеном между аппаратной и программной частью компьютера. Они действуют на уровне абстракции. А Низкие языки, в свою очередь, созданы для удовлетворения нужд конкретной компьютерной архитектуры и учитывают требования «железа». И вот в чем их разница.
1.Скорость.Что касается скорости, программы, написанные на низкоуровневых языках, являются более быстрыми, чем написанные на средне- или высокоуровневых языках. Причина этого в том, что эти программы не нуждаются в интерпретации или компиляции. Они взаимодействуют непосредственно с регистрами и памятью. Программы, написанные на высокоуровневых языках, относительно медленные. Главная причина этого в том, что они пишутся на «человеческом» языке. Компьютеру приходится переводить и интерпретировать их, прежде чем выполнить. Все эти процессы занимают время. Скорость средне уровневых языков занимает промежуточное положение. Ее не назовешь ни слишком высокой, ни слишком низкой.
2. Требования к памяти.
Это еще один параметр, с помощью которого можно разграничить три вида языков программирования. Низкие языки очень эффективны в этом плане, они потребляют мало памяти. Это их очень отличает от высокие языков, которые являются очень ёмкими в этом плане. А вот программы на средне уровневых языках уже не требуют столько памяти.
3. Легкость использования.
Низкие языки дружественны к машинам, но недружественны к программистам. Человеку довольно сложно иметь дело с бинарным кодом и мнемоникой. То, что каждая инструкция создается для конкретной архитектуры компьютера, делает низкоуровневые языки служат как бы связующим звеном между аппаратной и программной частью компьютера. Они действуют на уровне абстракции. А Низкие языки, в свою очередь, созданы для удовлетворения нужд конкретной компьютерной архитектуры и учитывают требования «железа». И вот в чем их разница.
1.Скорость.Что касается скорости, программы, написанные на низкоуровневых языках, являются более быстрыми, чем написанные на средне- или высокоуровневых языках. Причина этого в том, что эти программы не нуждаются в интерпретации или компиляции. Они взаимодействуют непосредственно с регистрами и памятью. Программы, написанные на высокоуровневых языках, относительно медленные. Главная причина этого в том, что они пишутся на «человеческом» языке. Компьютеру приходится переводить и интерпретировать их, прежде чем выполнить. Все эти процессы занимают время. Скорость средне уровневых языков занимает промежуточное положение. Ее не назовешь ни слишком высокой, ни слишком низкой.
2. Требования к памяти.
Это еще один параметр, с помощью которого можно разграничить три вида языков программирования. Низкие языки очень эффективны в этом плане, они потребляют мало памяти. Это их очень отличает от высокие языков, которые являются очень ёмкими в этом плане. А вот программы на средне уровневых языках уже не требуют столько памяти.
3. Легкость использования.
Низкие языки дружественны к машинам, но недружественны к программистам. Человеку довольно сложно иметь дело с бинарным кодом и мнемоникой. То, что каждая инструкция создается для конкретной архитектуры компьютера, делает низкоуровневые языки не дружелюбные к человеку из-за его написания.