Москва
Videoportalcb@mail..ru
График работы Пн-Пт с 9-00 до 18-00

Компьютерное программирование: от машинного языка к искусственному интеллекту

Продажа и установка видеонаблюдения в Москве и МО.

Компьютерное программирование: от машинного языка к искусственному интеллекту

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

Языки программирования использовались еще до изобретения компьютеров. Например, проигрыватель piano scroll.

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

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

В результате ранние программисты должны были быть хорошо знакомы с компьютерным оборудованием. 

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

Первое поколение-программирование на машинном уровне

Языки программирования первого поколения (1GL) часто называют машинными языками или машинным кодом. 

Они работают на самом низком уровне абстракции (наиболее близком к аппаратному) из всех языков. 

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

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

Языки первого поколения использовались для программирования компьютеров таких как UNIVAC I и IBM 701. 

Второе поколение

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

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

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

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

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

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

Примеры игр, написанных на ассемблере, включают консольные игры для платформы Sega Mega Drive/Genesis и платформы Super Nintendo Entertainment System.

Хотя языки ассемблера в значительной степени вытеснены языками более высокого уровня.

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

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

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

Третье поколение-Gentleman’S C и другие

Третье поколение языков программирования (3GL) включает в себя языки высокого уровня , такие как C, C++, Fortran, COBOL, BASIC, C# и Java.

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

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

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

Развитие парадигм программирования, таких как структурированное программирование и объектно-ориентированное программирование (ООП), совпало с развитием языков третьего поколения.

Четвертое поколение — программное усовершенствование

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

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

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

Примерами языков четвертого поколения являются Structured Query Language (SQL), Informix-4GL и ColdFusion.

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

Языки пятого поколения (5GL) часто используются в сфере искусственного интеллекта.

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

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

Примером языка пятого поколения является Prolog, который был одним из языков, используемых для программирования IBM Watson.

При подготовке к участию в телевизионном викторином шоу » Jeopardy!»

Почему это должно меня волновать?

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

Хорошая ментальная модель-это чем выше вы поднимаетесь, тем дальше абстрагируетесь от аппаратного обеспечения. 

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

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

Многие разработчики проводят большую часть своего дня в интегрированной среде разработки для языка 3GL.

Поэтому понимание того, что язык является 2GL или 4GL, дает вам некоторую перспективу относительно уровня детализации. Необходимого для создания пригодного для использования кода. 

Прочтите: Беспроводная Точность (Wi-Fi)

В общем, работа с языком 2GL будет более сложной, чем с языком 3GL. 

С другой стороны, вы можете достичь гораздо меньших результатов с языком 4GL, таким как SQL.

Чем с языком 3GL, таким как C.

А куда отсюда?

Появятся ли новые поколения языков программирования? Некоторые компьютерные специалисты считают графические среды разработки отдельным поколением языков программирования. 

С появлением приложений все проще и проще разрабатывать новое программное обеспечение. 

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

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

Вы упускаете из виду, когда речь заходит о машинном обучении?