- •Командний рядок
- •Засоби управління процесами консольного режиму ос Linux
- •Додаткові можливості, що надаються командним процесором
- •Графічний інтерфейс
- •Елементи графічного інтерфейсу
- •Інсталяція
- •Утиліти контролю цілісності системи [ред.]
- •Утиліти розширення функціональності [ред.]
- •Основні види утиліт розширення функціональності [ред.] Утіліти-конвертери [ред.]
- •Утиліти — редактори мета-інформації [ред.]
- •Утиліти обслуговування системи [ред.]
- •Основні типи уос [ред.] Дефрагментатори [ред.]
- •Утиліти з контролю помилок і пошкоджень структури розділів та smart-ревізори [ред.]
- •Утиліти резервного копіювання [ред.]
- •Утиліти системного менеджменту [ред.]
- •Утиліти тонкого налаштування [ред.]
- •Інформаційні утиліти [ред.]
- •Характеристики алгоритмічних мов[ред.]
- •Синтаксис [ред.]
- •Типи даних [ред.]
- •Класифікація мов програмування [ред.]
- •Способи реалізації мов [ред.]
- •Процедури та функціі [ред.]
- •Об'єктно-орієнтоване програмування [ред.]
- •Семантика мов програмування [ред.]
- •Мови програмування низького рівня [ред.]
- •Переваги [ред.]
- •Недоліки [ред.]
- •Мови програмування високого рівня [ред.]
- •Четверте покоління [ред.]
- •П'яте покоління [ред.]
Мови програмування низького рівня [ред.]
Перші комп'ютери доводилось програмувати двійковими машинними кодами. Проте програмувати таким чином — доволі трудомістка і важка задача[8]. Для спрощення цієї задачі почали з'являтися мови програмування низького рівня, які дозволяли задавати машинні команди в зрозумілішому для людини вигляді. Для перетворення їх у двійковий код були створені спеціальні програми — транслятори.[9]
Приклад машинного коду і представлення його на асемблері[10]
Транслятори поділяються на:
компілятори — перетворюють текст програми в машинний код, який можна зберегти і після цього використовувати уже без компілятора(прикладом є виконувальні файли з розширенням *.exe).
інтерпретатори — перетворюють частину програми в машинний код, виконують і після цього переходять до наступної частини. При цьому щоразу при виконанні програми використовується інтерпретатор.
Прикладом мови низького рівня є асемблер. Мови низького рівня орієнтовані на конкретний тип процесора і враховують його особливості, тому для перенесення програми на асемблері на іншу апаратну платформу її потрібно майже цілком переписати. Певні відмінності є і в синтаксисі програм під різні компілятори. Щоправда, центральні процесори для комп'ютерів фірм AMD та Intel практично сумісні і відрізняються лише деякими специфічними командами. А ось спеціалізовані процесори для інших пристроїв, наприклад, відеокарт, телефонів містять суттєві відмінності.
Переваги [ред.]
За допомогою мов низького рівня створюються ефективні і компактні програми, оскільки розробник отримує доступ до всіх можливостей процесора.
Недоліки [ред.]
Програміст, що працює з мовами низького рівня, має бути високої кваліфікації, добре розуміти будову мікропроцесорної системи, для якої створюється програма. Так, якщо програма створюється для комп'ютера, потрібно знати будову комп'ютера і, особливо, влаштування і особливості роботи його процесора.
результуюча програма не може бути перенесена на комп’ютер або пристрій з іншим типом процесора.
значний час розробки великих і складних програм.
Мови низького рівня, як правило, використовують для написання невеликих системних програм, драйверів пристроїв, модулів стиків з нестандартним обладнанням, програмування спеціалізованих мікропроцесорів, коли найважливішими вимогами є компактність, швидкодія і можливість прямого доступу до апаратних ресурсів.
Асемблер — мова низького рівня, що широко застосовується і досі.
Мови програмування високого рівня [ред.]
Можна сказати є зрозумілішими людині, ніж комп'ютеру. Особливості конкретних комп'ютерних архітектур в них не враховуються, тому створені програми легко переносяться з комп'ютера на комп'ютер. Здебільшого достатньо просто перекомпілювати програму під певну комп'ютерну архітектурну та операційну систему. Розробляти програми на таких мовах значно простіше і помилок допускається менше. Значно скорочується час розробки програми, що особливо важливо при роботі над великими програмними проектами.
Наразі у середовищі розробників вважається, що мови програмування, які мають прямий доступ до пам’яті та регістрів або мають асемблерні вставки, потрібно вважати мовами програмування з низьким рівнем абстракції. Тому більшість мов, які вважалися мовами високого рівня до 2000-го року зараз вже такими не вважаються.
Адресна мова програмування
Фортран
Кобол
Алгол
Pascal
Java
C
C++
Objective C
Smalltalk
C#
Delphi
Недоліком мов високого рівня є більший розмір програм порівняно з програмами на мові низького рівня. Сам текст програм на мові високого рівня менший, проте, якщо взяти у байтах, то код початково писаний на асемблері буде більш компактніший. Тому в основному мови високого рівня використовуються для розробок програмного забезпечення комп'ютерів, і пристроїв, які мають великий обсяг пам'яті. А різні підвиди асемблеру застосовуються для програмування інших пристроїв, де критичним є розмір програми.
П'ять поколінь мов програмування [ред.]
Інколи розрізняють п'ять поколінь мов програмування[11] [12] [13], щоправда даний поділ є спірним:
Перше покоління [ред.]
Початок 1950-х років — мови перших комп'ютерів. Перша мова асемблера, створена за принципом «одна інструкція — один рядок».
Основна відмінна риса: орієнтування на конкретний тип комп’ютера (мікропроцесорної системи).
Друге покоління [ред.]
Кінець 1950-х — початок 1960-х р.р. Розроблено символьний асемблер, в якому з'явилося поняття змінної. Це перша повноцінна мова програмування.
Основна відмінна риса: орієнтування на абстрактний комп'ютер з такою ж системою команд.
Третє покоління [ред.]
1960-ті — мови програмування високого рівня. Їхні характеристики:
відносна простота;
незалежність від конкретного комп'ютера;
можливість використання потужних синтаксичних конструкцій.
Простота мов дає змогу писати невеликі програми і людям, які не є професійними програмістами.
Основна відмінна риса мови третього покоління: орієнтування на алгоритм (алгоритмічні мови).
Приклади: Fortran, COBOL, ALGOL.
Всього у світі існує близько 200 популярних мов програмування третього рівня.
