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

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

ЯЗЫК МАШИНЫ / Двоичный код:

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

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

Here is a sample machine language instruction: 10110000 01100001 

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

Недостатки:

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

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

ЯЗЫК АССЕМБЛЕРА :

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

Example : mov al, 061h

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

Тем не менее, у этого языка тоже есть свои пределы ...

ТАК КАКОВА ДРУГАЯ АЛЬТЕРНАТИВА?

Вот тут-то и пригодятся языки программирования! Язык программирования не такой простой, как наши разговорные языки, и не такой сложный, как двоичный код. Он находится посередине между двумя (т. Е. Смесью).

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

«Исходный код» - это набор инструкций, написанных на компьютерном языке.

ЯЗЫКИ ПРОГРАММИРОВАНИЯ :

Для решения проблем с удобочитаемостью были разработаны новые языки программирования, такие как C, C ++, Pascal (и более поздние языки, такие как Java, Javascript и Perl). Эти языки называются языками высокого уровня, поскольку они разработаны, чтобы позволить программисту писать программы, не беспокоясь о том, на каком компьютере будет выполняться программа.

Вот та же инструкция, что и выше на C / C ++: a = 97;

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

КОМПИЛЯТОРЫ:

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

ПЕРЕВОДЧИКИ:

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

Хорошее сравнение компиляторов и интерпретаторов можно найти здесь: Нажмите здесь

УРОВНИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ:

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

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

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

Чем выше уровень, тем лучше читаемость.

РЕЗЮМЕ :

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

Двоичный код / ​​машинный язык: нули и единицы.

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

Язык программирования: Легче читать и писать. Переведено с использованием компиляторов и интерпретаторов.