Курсовая работа: Ассемблер 2

Постоянные или непосредственные операнды — число, строка, имя или вы­ражение, имеющие некоторое фиксированное значение. Имя не должно быть перемещаемым, то есть зависеть от адреса загрузки программы в па­мять.

Адресные операнды — задают физическое расположение операнда в памяти с помощью указания двух составляющих адреса: сегмента и смещений (рис. 2).

Рис. 2. «Синтаксис описания адресных операндов».

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

Считчик адреса — специфический вид операнда. Он обозначается знаком $. Специфика этого операнда в том, что когда транслятор ассемблера встречает в исходной программе этот символ, то он подставляет вместо него текущее значение счетчика адреса. Значение счетчика адреса, или как его иногда называют счетчика размещения, представляет собой смещение текущей ма­шинной команды относительно начала сегмента кода.

Базовый и индексный операнды . Этот тип операндов используется для реали­зации косвенной базовой, косвенной индексной адресации или их комбина­ций и расширений.

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

Арифметические операторы. К ним относятся унарные операторы «+» и «-», бинарные «+» и «-», операторы умножения «*», целочисленного деления «/», получения остатка от деления «mod». Эти операторы расположены на уровнях приоритета 6, 7, 8 в табл. 2.1.

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

Операторы сравнения (возвращают значение «истина» или «ложь») предназначены для формирования логических выражений (табл. 5.1). I Логическое значение «истина» соответствует цифровой единице, а «ложь» — нулю.

Табл. 2.1.

Операторы сравнения

Оператор

Значение

eq

ИСТИНА, если выражение_1 равно выражение_2

пе

ИСТИНА, если выражение_1 не равно выражение_2

It

ИСТИНА, если выражение_1 меньше выражение_2

le

ИСТИНА, если выражение_1 меньше или равно выражение_2

gt

ИСТИНА, если выражение_1 больше выражение_2

ge

ИСТИНА, если выражение_1 больше или равно выражение_2

eq

ИСТИНА, если выражение_1 равно выражение_2

пе

К-во Просмотров: 865
Бесплатно скачать Курсовая работа: Ассемблер 2