Иллюстрированный самоучитель по Assembler


           

С другой неприятностью мы столкнемся,


С другой неприятностью мы столкнемся, если попытаемся включить в программу операции с 32-разрядными операндами (даже и с командами МП 86). Компоновщик TASM по умолчанию запрещает такого рода операции. Чтобы преодолеть этот запрет, следует в команде вызова компоновщика указать ключ /3.

Таким образом, приведенный в гл. 1 командный файл должен выглядеть (для подготовки программы P.ASM) следующим образом:

tasm /z /zi /n /m2 p,p,p

tlink /x /v /3 p,p

Включение указанных описателей и ключей не обязывает нас использовать новые команды или 32-разрядные операнды, так что приведенные выше тексты командного файла и самой программы можно использовать как образец для подготовки всех приведенных в этой книге программных примеров, даже если они используют только средства МП 86. В дальнейших примерах программ, в основном посвященных системе команд МП 86, эти описатели будут опускаться.

Приведем в качестве еще одного примера простую законченную программу типа .ЕХЕ, которая выясняет букву - обозначение текущего диска и выводит ее на экран с поясняющей надписью.

Пример 3-1. Получение текущего диска

; Опишем сегмент команд

assume CS:code,DS:data

code segment

main proc

move AX, data   ;Настроим DS

mov DS,AX    ; на сегмент данных

mov AH,19h    ; Функция DOS получения

int 21h             ; текущего диска

add disk,AL   ; Преобразуем номер в код

                        ; ASCII

mov AH,09h  ; Функция DOS вывода на экран

mov DX,offset msg  ; Адрес строки

int 21h                       ; Вызов DOS

mov  AH,01h            ; Функция DOS ввода символа

int 2 In                       ; Вызов DOS


Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий