- •Лекция 05. Синтаксис ассемблера
- •Основные группы команд процессора
- •Команды передачи данных
- •Арифметические команды
- •Команды сложения
- •Умножение и деление знаковых значений
- •Безусловные переходы
- •Вызов подпрограмм
- •Условные переходы
- •Команды управления процессором
- •Команды для работы со строками
- •Трансляция текстов программ
- •Опции транслятора tasm
- •Опции компоновщика (редактора связей) tlink
- •Типы данных
Команды для работы со строками
Команды для работы со строками, мощный инструмент для обработки всех типов данных, а не только символьных строк. Помните, что строки в языке ассемблера являются последовательностями байтов, которые могут либо представлять, либо не представлять ASCII-символы. Несмотря на наводящие названия, командам работы со строками 8086 все равно, что означают эти байты. Строковые команды делятся на три группы:
• Команды пересылки строк
• Команды проверки строк
• Команды префикса повторения
Таблица 7. Команды обработки строк 8086 |
||
Мнемокод / Операнды |
Описание |
|
Команды пересылки строк |
||
lods источник lodsb lodsw movs назначение, источник movsb movsw stos назначение stosb stosw |
Загрузка строки байтов или строки слов Загрузка строки байтов Загрузка строки слов Пересылка строки байтов или строки слов Пересылка строки байтов Пересылка строки слов Запись строки байтов или строки слов Запись байта в строку Запись слова в строку |
|
Команды проверки строк |
||
cmps назначение, источник cmpsb cmpsw scas назначение scasb scasw |
Сравнение строк по байтам или словам Сравнение строк по байтам Сравнение строк по словам Поиск байта или слова в строке Поиск байта в строке Поиск слова в строке |
|
Команды префикса повторения |
||
rep гере/герz repne/repnz |
Повтор Повтор, пока равно 0 Повтор, пока не равно 0 |
Трансляция текстов программ
В процессе своей работы транслятор TASM формирует два типа ошибок: сообщения о неправильных или некорректных конструкциях в исходном ассемблерном тексте и сообщения о фатальных ошибках. Особенность последних в том, что при их возникновении TASM выдает соответствующее сообщение и немедленно прекращает ассемблирование исходного файла.
Опции транслятора tasm
/h, /? |
Вывод на экран справочной информации. Это эквивалентно запуску TASM без параметров |
/x |
Включить в листинг все блоки условного ассемблирования для директив IF, IFNDEF, IFDEF и т. п., в том числе и невыполняющиеся |
/z |
При возникновении ошибок наряду с сообщением о них выводить соответствующие строки текста |
/zi, /zd, /zn |
/zi — включить в объектный файл информацию для отладки; /zd — поместить в объектный файл информацию о номерах строк, что необходимо для работы отладчика на уровне исходного текста программы; /zn — запретить помещение в объектный файл отладочной информации. |
Опции компоновщика (редактора связей) tlink
/x |
Не создавать файл карты (map) |
/m |
Создать файл карты |
/c |
Различать строчные и прописные буквы в идентификаторах (в том числе и внешних) |
/v |
Включить отладочную информацию в выполняемый файл |
/3 |
Поддержка 32-битного кода |
/t |
Создать файл типа .com (по умолчанию .exe) |