7.14. Какие у машинных языков достоинства и недостатки? 7.15. Что такое язык ассемблера? 7.16. В чем преимущества алгоритмических языков перед машинными?

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

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

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

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

7.15. Что такое язык ассемблера?

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

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

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

7.16. В чем преимущества алгоритмических языков перед машинными?
Основные преимущества таковы:

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

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

Другие записи

10.06.2016. 7.17. Какие компоненты образуют алгоритмический язык? 7.18. Какие понятия используют алгоритмические языки?
7.17. Какие компоненты образуют алгоритмический язык? Алгоритмический язык (как и любой другой язык) образуют три его составляющие: алфавит, синтаксис и семантика. Алфавит - это фиксированный…
10.06.2016. 7.19. Что такое стандартная функция?
При решении различных задач с помощью компьютера бывает необходимо вычислить логарифм или модуль числа, синус угла и т.д. Вычисления часто употребляемых функций осуществляются посредством подпрограмм,…
10.06.2016. 7.20. Как записываются арифметические выражения?
Арифметические выражения записываются по следующим правилам:   Нельзя опускать знак умножения между сомножителями и ставить рядом два знака операций. Индексы элементов массивов записываются…
10.06.2016. 7.21. Как записываются логические выражения?
В записи логических выражений помимо арифметических операций сложения, вычитания, умножения, деления и возведения в степень используются операции отношения < (меньше), <= (меньше или равно), > (больше),…
10.06.2016. 7.22. Упражнения
7.1. Запишите по правилам алгоритмического языка выражения: a) e) б) ж) в) з) г) и) д) к) {Ответ См. документ "7.23 Ответы"} 7.2. Запишите…