Assembler для начинающих


         

Остальная часть программы должна быть


    команде. Остальная часть программы должна быть перемещаемым
    сегментом команд, и об этом не нужно забывать при написании
    программы, которая будет преобразовываться в файл типа .COM.
 
      Ассемблирование и редактирование связей этой программы
    осуществляется обычным способом. Однако до запуска программы DEBUG
    нужно изменить в имени файла тип .EXE на тип .COM. Это необходимо
    сделать, так как программа DEBUG не позволяет записывать файл типа
    .EXE. На Фиг. 5.19 показана последовательность шагов, которую нужно
    выполнить. В данном примере вводится команда программы DEBUG без
    имени файла. В качестве имени можно было бы в данной строке указать
    FIG5=18.COM, зато его отсутствие позволило продемонстрировать
    некоторые другие функции программы DEBUG. Команда N отладчика
    позволяет задать имя файла. После этого команда L выполняет
    загрузку файла в память. Если указать имя файла в команде DEBUG, то
    последняя выполнит все то же самое, что и команды N и L.
      Теперь, когда файл загружен, вы обнаружите, что в
    дествительности программа загрузилась, начиная со смещения 400H.
    Команда M сдвигает содержимое области памяти с 400H на 100H. Длина
    области, равная 1000H, была выбрана для гарантии того, что там
    поместится вся программа. Теперь программа соответствует формату
    файла типа .COM и может быть опять записана на дискету. Однако
    прежде, чем это сделать, вы изменяете содержимое регистра CX, чтобы
    он указал фактическую длину программы. При любом считывании и
    записи файлов на дискету, осуществляемых программой DEBUG, длина
    файла хранится в регистре CX. Так как файл типа .COM теперь намного
    короче, чем был файл типа .EXE, то мы можем сэкономить дисковую
                  B>A:ASM FIG5_18,,,;
                  The IBM Personal Computer Assembler
                  Version 1.00 (c)Copyright IBM Corp 1981
 
                  Warnings Severe
                  Errors      Errors
                  0     0

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