Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Переваги алгоритмічних мов перед машинними

Мова асемблера

Мова асемблера — це машино-залежна мова низького рівня, в якому короткі мнемонічні імена відповідають окремим машинним командам. Використовується для представлення в легкій для читання формі програм, записаних в машинному коді.

Мова асемблера дозволяє програмістові користуватися текстовими мнемонічними (тобто що легко запам'ятовуються людиною) кодами, на свій розсуд привласнювати символічні імена регістрам комп'ютера і пам'яті, а також задавати зручні для себе способи адресації. Крім того, він дозволяє використовувати різні системи числення (наприклад, десяткову або шістнадцетерічну) для уявлення числових констант, використовувати в програмі коментарі і ін.

Програми, написані на мові асемблера, вимагають значно меншого об'єму пам'яті і часу виконання. Знання програмістом мови асемблера і машинного коду дає йому розуміння архітектури машини. Не дивлячись на те, що більшість фахівців в області програмного забезпечення розробляють програми на мовах високого рівня, таких, як Object Pascal або C, найбільш могутнє і ефективне програмне забезпечення повністю або частково написане на мові асемблера.

Мови високого рівня були розроблені для того, щоб звільнити програміста від обліку технічних особливостей конкретних комп'ютерів, їх архітектури. В протилежність цьому, мова асемблера розроблена з метою врахувати конкретну специфіку процесора. Отже, для того, щоб написати програму на мові асемблера для конкретного комп'ютера, важливо знати його архітектуру.

Як приклад приведемо програму на мові асемблера для IBM РС. Програма обчислює значення а = b + з для цілих а, b і з:

.MODEL SMALL.DATA b DW 5 c DW 3 a DW?.CODE begin MOV AX,@DATA MOV DS,AX MOV AX,B ADD AX,C MOV A,AX MOV AH,4CH INT 21H END begin Директива.MODEL задає механізм розподілу пам'яті під дані і команди. Директива.DATA визначає початок ділянки програми з даними. Директиви DW задають типи змінних і їх значення. Директива.CODE визначає початок ділянки програми з командами. Команди MOV Ax,@data і MOV Ds,ax записують адресу сегменту даних в регістр DS (Data Segment). Для обчислення а використовуються команди MOV AX, B, ADD AX, C і MOV A, AX. У директиві END задана мітка першої виконуваної програми програми begin.

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

Основні переваги такі:

·алфавіт алгоритмічної мови значно ширший за алфавіт машинної мови, що істотно підвищує наочність тексту програми;

·набір операцій, допустимих для використання, не залежить від набору машинних операцій, а вибирається з міркувань зручності формулювання алгоритмів вирішення завдань певного класу;

·формат пропозицій достатньо гнучкий і зручний для використання, що дозволяє за допомогою однієї пропозиції задати достатньо змістовний етап обробки даних;

·необхідні операції задаються за допомогою загальноприйнятих математичних позначень;

·даним в алгоритмічних мовах привласнюються індивідуальні імена, вибирані програмістом;

·у мові може бути передбачений значно ширший набір типів даних в порівнянні з набором машинних типів даних.

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

<== предыдущая лекция | следующая лекция ==>
Достоїнства і недоліки машинних мов | Поняття використовувані алгоритмічними мовами
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 651; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.