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

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

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

Програми, написані на мові асемблера, вимагають значно меншого об'єму пам'яті і часу виконання. Знання програмістом мови асемблера і машинного коду дає йому розуміння архітектури машини. Не дивлячись на те, що більшість фахівців в області програмного забезпечення розробляють програми на мовах високого рівня, таких, як 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.

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








Дата добавления: 2015-07-22; просмотров: 508;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.