| |
BIGLIB |
| большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно |
|
| |
ФАНТАСТИКА |
| фентези,
фантастика, фантастические повести |
|
| |
ФИЛОСОФИЯ |
книги, которые заставляют
задуматься над окружающим тебя миром.
|
|
| |
МЕДИЦИНА |
медицинские книги,
методички,
народные лечебники |
|
| |
КУЛИНАРИЯ |
рецепты
тортов, консервирование,
все о спиртных
напитках. |
|
| |
СТИХИ |
| стихи популярных
и не очень авторов |
|
| |
ТВОРЧЕСТВО |
| народное творчество,
стихи, песни и т.д. |
|
| |
ЮМОР |
| анекдоты, приколы,
смешные истории |
|
| |
ЭРОТИКА |
| эротические рассказы,
книги о технике секса,
кама-сутра и др. |
|
|
| |
 |
ELSE ;
; код для монохромного
; дисплея если color = 0
ENDIF ;
; вторая часть блока кода ; если test определен
ELSE ;
; другой код ; если test не определен
ENDIF
.
.
.
ЪДДДДДДДДДДДДВДДДДДДДДДДВДДДДДДДДДДДВДДДДДДДДДДДДДДВДДДДДДДДДДДДї
і test іопределен і определен і не определен іне определені
і color і 0 і не 0 і 0 і не 0 і
ГДДДДДДДДДДДДЕДДДДДДДДДДЕДДДДДДДДДДДЕДДДДДДДДДДДДДДЕДДДДДДДДДДДДґ
і код і блок кодаі блок кода і другой код ідругой код і
і і 1 і 1 і і і
і і і і і і
іцветной/моноі блок кодаі блок кода і блок кода і і
і і color і 2 і 2 і і
АДДДДДДДДДДДДБДДДДДДДДДДБДДДДДДДДДДДБДДДДДДДДДДДДДДБДДДДДДДДДДДДЩ
Если идентификатор test не определен,то не ассемблируется ни
код для цветного дисплея (color), ни для монохромного, поскольку
все это включено в блок условного ассемблирования, который ас-
семблируется только при определенном идентификаторе test.
Турбо Ассемблер 3.0/tasm/#2-2 = 47 =
Директивы условного ассемблирования ELSEIFxxx
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Вы можете использовать директивы условного ассемблирования
ELSEIFxxx как сокращенную форму, когда требуется использовать
несколько директив IF. Директива ELSEIFxxx представляет собой эк-
вивалент директивы ELSE, за которой следует вложенная директива
IFxxx, но дает более компактный код. Например:
.
.
.
IF mode EQ 0
; кода для mode = 0
ELSEIF mode LT 5
; код для coe = 1..4
ELSE
; код для mode = 5...
ENDIF
.
.
.
сравните его со следующим:
.
.
.
IF mode EQ 0
; кода для mode = 0
ELSE
IF mode LT 5
; код для coe = 1..4
ELSE
; код для mode = 5...
ENDIF
ENDIF
.
.
.
Вне оператора IFxxx директиву ELSEIFxxx использовать нельзя.
Турбо Ассемблер 3.0/tasm/#2-2 = 48 =
Директивы генерации сообщений об ошибке ERRxx
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Директива ERRxxx генерирует при удовлетворении определенных
условий сообщения пользователя об ошибке. Она имеет следующий об-
щий синтаксис:
ERRxxx [аргументы] [сообщение]
В этом случае директива ERRxxx представляет какую-либо из
директив условной генерации сообщения об ошибке (такие как
ERRIFB, .ERRB и т.д.).
"Аргументы" представляют аргументы, которые могут потребо-
ваться в директиве для вычисления условия. Некоторые директивы
требуют выражения, другие требуют символьного выражения, а неко-
торые - одно или два текстовых выражений. Некоторые из директив
вовсе не требуют аргументов.
Если указано "сообщение", то оно задает необязательное сооб-
щение, которое выводится с ошибкой. Сообщение должно быть заклю-
чено в кавычки (' или ").
Директивы генерации сообщений об ошибке генерируют пользова-
тельское сообщение об ошибке, которое выводится на экран и
включается в файл листинга (если он имеется) в месте расположения
директивы в исходном коде. Если директива задает сообщение, оно
выводится на той же строке непосредственно за ошибкой. Например,
директива:
ERRIFNDEF foo "foo не определено!"
если идентификатор foo не определен при обнаружении ошибки, при-
ведет к генерации ошибки:
User error: "foo не определено!"
Турбо Ассемблер 3.0/tasm/#2-2 = 49 =
Описания конкретных директив
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Далее следует описание директив.
Безусловные директивы генерации сообщений об ошибке
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Безусловными директивами генерации сообщений об ошибке явля-
ются директивы ERR и .ERR. Эти директивы всегда генерируют ошибку
и не требуют аргументов, хотя могут содержать необязательное со-
общение. Директиву .ERR можно использовать только в режиме MASM.
Условные директивы с выражениями
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Эти директивы обеспечивают условное ассемблирование или ге-
нерацию сообщений об ошибке на основе результатов вычисления в
Турбо Ассемблере выражения. Во всех этих директивах при вычисле-
нии выражения должна получаться константа, и оно не может содер-
жать опережающих ссылок. Если при вычислении выражения получается
0, Турбо Ассемблер рассматривает выражение, как ложное (false). в
противном случае оно рассматривается как истинное (true).
В следующей таблице показаны директивы условного ассемблиро-
вания, использующие выражения.
Директивы условного ассемблирования, использующие сообщения
Таблица 15.1
ЪДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Директива IFxxx і Ассемблирует "тело_условия_true" если: і
ГДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
і IF выражение і при вычислении выражения получается і
і і значение true. і
і і і
і IFE выражение і при вычислении выражения получается і
і і значение false. і
і і і
і ELSEIF выражение і при вычислении выражения получается і
і і значение true. і
і і і
і ELSEIFE выражение і при вычислении выражения получается і
і і значение false. і
АДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ
В следующей таблице показаны директивы генерации сообщений
об ошибке, в которых используются выражения:
Директивы генерации сообщений об ошибке, использующие выражения
Турбо Ассемблер 3.0/tasm/#2-2 = 50 =
Таблица. 15.2
ЪДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Директива ERRxxx і Генерируется сообщение user error, если: і
ГДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
і ERRIF выражение і при вычислении выражения получается зна- і
і і чение true. і
і і і
і .ERRNZ выражение і при вычислении выражения получается зна- і
і і чение true (только в режиме MASM). і
і і і
і ERRIFE выражение і при вычислении выражения получается зна- і
і і чение false. і
і і і
і .ERRE выражение і при вычислении выражения получается зна- і
і і чение false (только в режиме MASM). і
АДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ
Условные директивы с идентификатором
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Эти директивы обеспечивают условное ассемблирование или ге-
нерацию сообщения об ошибке на основе того, является ли опреде-
ленным один или более идентификаторов. Данные идентификаторы объ-
единены в выражение с идентификаторами.
Выражение с идентификаторами - это выражение, состоящее из
имен идентификаторов, булевских операций AND, OR, NOT и круглых
|
adfun.ru
|
|
|
|