| |
BIGLIB |
| большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно |
|
| |
ФАНТАСТИКА |
| фентези,
фантастика, фантастические повести |
|
| |
ФИЛОСОФИЯ |
книги, которые заставляют
задуматься над окружающим тебя миром.
|
|
| |
МЕДИЦИНА |
медицинские книги,
методички,
народные лечебники |
|
| |
КУЛИНАРИЯ |
рецепты
тортов, консервирование,
все о спиртных
напитках. |
|
| |
СТИХИ |
| стихи популярных
и не очень авторов |
|
| |
ТВОРЧЕСТВО |
| народное творчество,
стихи, песни и т.д. |
|
| |
ЮМОР |
| анекдоты, приколы,
смешные истории |
|
| |
ЭРОТИКА |
| эротические рассказы,
книги о технике секса,
кама-сутра и др. |
|
|
| |
 |
"Параметры" соответствуют параметрам командной строки компи-
лятора Borland C++, а также специфическим параметрам утилиты
H2ASH (которые соответствуют параметрам -q Турбо Ассемблера). См.
"Руководство пользователя Bоrland C++" и оперативный справочник,
где можно найти описания данных параметров.
Утилита H2ASH преобразует следующие конструкции:
- все основные типы языка Си;
- типы ENUM (в типы ENUM TASM);
- #IFDEF (в эквивалентные IFDEF Ассемблера);
- #DEFINE (в определения EQU);
- структуры и объединения (в структуры и объединения Турбо
Ассемблера);
- структуры с битовыми полями (в записи Ассемблера RECORD);
- определения TYPEDEF (в TYPEDEF Ассемблера);
- классы без множественного наследования и без виртуальных
базовых классов;
- элементы классов;
- переопределения операций.
Утилита-преобразователь имеет следующие ограничения:
- весь преобразуемый код игнорируется, выполняемый код не
генерируется;
- директивы #INCLUDE в выходных файлах полностью расширяются;
- в выводе Ассемблера может возникнуть конфликт имен, так
как правила области действия С++ существенно отличаются от
правил Ассемблера (помочь здесь может использование режима
Ideal);
Турбо Ассемблер 3.0/tasm/#2-2 = 173 =
Преобразователь H2ASH не только облегчает организацию интер-
фейса между С/С++ и языком Ассемблера (с максимальной производи-
тельностью). H2ASH автоматически преобразует описания базовых
классов С++ в эквивалентные объектные описания Ассемблера и опре-
деляет "нескорректированные" имена методов. При записи базового
класса на языке Ассемблера мы рекомендуем вам использовать следу-
ющую процедуру:
1. Написать описание класса в файле заголовка языка Си.
2. Включить описание файла заголовка Си во все классы-потом-
ки и модули на языке Си, которые используют этот базовый
класс.
3. Используйте преобразователь H2ASH для файла заголовка с
целью получения объектного файла заголовка Ассемблера
(этот процесс можно автоматизировать с помощью формирую-
щего файла).
4. Включите объектный файл заголовка Ассемблера в модуль,
где записаны методы на языке Ассемблера.
Более подробную информацию об утилите H2ASH можно найти в
текстовых файлах документации на дисках Турбо Ассемблера.
Турбо Ассемблер 3.0/tasm/#2-2 = 174 =
Приложение E. Сообщения об ошибках
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
В данном приложении описаны все сообщения, генерируемые Тур-
бо Ассемблером. Обычно сообщения выдаются на экран, однако их
можно переадресовать в файл или на принтер с помощью стандартных
средств DOS переадресации потоков, т.е. надо указать имя устройс-
тва или файла с предшествующим ему символом "больше чем" (>).
Например:
TASM MYFILE > ERRORS
В Турбо Ассемблере генерируются сообщения следующих типов:
- информационные сообщения;
- предупреждающие сообщения;
- сообщения об ошибках;
- сообщения о фатальных ошибках.
Информационные сообщения
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Турбо Ассемблер обычно выводит два информационных сообщения.
Во-первых, всегда выдается информационное сообщение непосредс-
твенно перед началом ассемблирования пользовательского исходного
файла (или файлов). Кроме того, выдается информационное сообщение
по окончании ассемблирования каждого файла. Пример информационно-
го сообщения, выдаваемого при запуске Турбо Ассемблера:
Turbo Assembler Version 3.0 Copyright(C) 1991 Borland
International Assembling file: TEST.ASM
Турбо Ассемблер 3.0/tasm/#2-2 = 175 =
(Турбо Ассемблер, версия 3.0, продукт фирмы Borland, 1991г.)
По окончании ассемблирования исходного файла выдается сооб-
щение с краткой характеристикой процесса ассемблирования. Это со-
общение выглядит следующим образом:
Error messages: None
Warning messages: None
Passes: 1
Remaining memory: 279K
(Сообщения об ошибках: Нет
Проходов: 1
Предупреждающие сообщения: Нет
Осталось памяти: 279Кб)
Подавить все информационные сообщения можно с помощью пара-
метра командной строки /T. Информационные сообщения подавляются
только в случае отсутствия ошибок в процессе ассемблирования. При
наличии ошибок параметр /T никакого влияния не имеет: стандартные
информационные сообщения будут выданы в начале и в конце процесса
ассемблирования.
Турбо Ассемблер 3.0/tasm/#2-2 = 176 =
Предупреждающие сообщения и сообщения об ошибках
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Предупреждающие сообщения выдаются для информирования поль-
зователей о возможных нежелательных последствиях ассемблирования
оператора исходного файла. Предупреждающее сообщение выдается,
например, в тех случаях, когда использование Turbo Assembler ка-
кого-либо, вообще говоря, допустимого умолчания может привести к
некорректным результатам. Рекомендуется обязательно проанализиро-
вать причины предупреждающих сообщений, чтобы не допустить гене-
рации неверного кода. Наличие этих сообщений не влияет на генера-
цию объектного кода Turbo Assembler. Предупреждающие сообщения
имеют следующий формат:
**Warning** имя_файла(номер_строки) сообщение
Если предупреждающее сообщение выдается во время расширения
макрокоманды или блока повторения, то оно будет содержать допол-
нительную информацию: имя макрокоманды и номер строки, при ас-
семблировании которой возникло это сообщение. Предупреждающее со-
общение в этом случае имеет следующий формат:
**Warning** имя_файла(номер_строки)
имя_макрокоманды(номер_строки_в_макрокоманде)сообщение
В отличие от предупреждающих сообщений, появление сообщений
об ошибках означает, что объектный код Турбо Ассемблер генериро-
вать не будет, хотя процесс ассемблирования будет доведен до кон-
ца. Типичное сообщение об ошибке имеет следующий формат:
**Error** имя_файла(номер_строки) сообщение
Если сообщение об ошибке выдается во время расширения макро-
са или блока повтора, то оно будет содержать дополнительную ин-
формацию: имя макрокоманды и номер строки, при ассемблировании
которой возникло это сообщение. Сообщение об ошибке в этом случае
имеет следующий формат:
**Error** имя_файла(номер_строки)
имя_макрокоманды(номер_строки_в_макрокоманде)сообщение
Далее в алфавитном порядке приводятся тексты предупредитель-
ных сообщений и сообщений об ошибках:
32-bit segment not allowed without .386
(32-битовые флаги без директивы .386 не допускаются)
Это средство расширено. Теперь в операторе .MODEL можно за-
давать USE32 и LARGESTACK. Ранее это было сообщение "USE32 not
allowed without .386").
Argument needs type override
(Требуется явно указать тип операнда)
Турбо Ассемблер 3.0/tasm/#2-2 = 177 =
Требуется явно указать размер, или тип, выражения, т.к. он
не может быть определен из контекста. Например, ошибочной являет-
ся следующая команда:
mov [bx],1
|
adfun.ru
|
|
|
|