adfun.ru
 
BIGLIB
  большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно
 
АСТРОЛОГИЯ
  книги по астрологии
 
КРИМИНАЛ
  книги про криминал
 
ДЕТЕКТИВЫ
  детективы известных
   писателей
 
ФАНТАСТИКА
  фентези, фантастика,   фантастические повести
 
ПРИКЛЮЧЕНИЯ
  книги про приключения,   путешествия
 
ПОЛИТИКА
  книги про политиков,   репрессии
 
ПСИХОЛОГИЯ
  разнообразная литература   по психологии
 
КЛАССИКА
  классическая литература
 
КОМПЬЮТЕРНАЯ
  ЛИТЕРАТУРА
  про компютерное железо,   документация, языки   программирования
 
РЕЛИГИЯ, АТЕИЗМ
  книги про религию
 
ФИЛОСОФИЯ
  книги, которые заставляют   задуматься над   окружающим тебя миром.
 
ЭНЦИКЛОПЕДИИ
  самые интересные   энциклопедии на
   разные темы
 
МЕДИЦИНА
  медицинские книги,   методички,
   народные лечебники
 
КУЛИНАРИЯ
  рецепты тортов,   консервирование,
  все о спиртных
  напитках.
 
СТИХИ
  стихи популярных и не   очень авторов
 
ТВОРЧЕСТВО
  народное творчество,   стихи, песни и т.д.
 
ЮМОР
  анекдоты, приколы,   смешные истории
 
ЛЮБОВНЫЙ РОМАН
  мир высоких чувств и   любовных грез
 
ЭРОТИКА
  эротические рассказы,   книги о технике секса,   кама-сутра и др.




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Турбо Ассемблер 3.0/tasm/#2-2
Автор ""
Размер 465209 Байт
Страница 38 из 54
СКАЧАТЬ КНИГУ ЦЕЛИКОМ

     і                                                               і
     і    * -  STACK  не  подразумевается  размещенным в  DGROUP  илиі
     і FARSTACK, заданным в директиве MODEL.                         і
     АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ

                         Используемые по умолчанию
                 сегменты и типы для модели памяти MEDIUM


     Турбо Ассемблер 3.0/tasm/#2-2                             = 149 =

                                                           Таблица A.3
     ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
     і  Директива  Имя    Выравнивание Комбинирование  Класс   Группаі
     ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
     і.CODE      имя_TEXT WORD         PUBLIC      'CODE'            і
     і.FARDATA   FAR_DATA PARA         private     'FAR_DATA'        і
     і.FARDATA?  FAR_BSS  PARA         private     'FAR_BSS'         і
     і.DATA      _DATA    WORD         PUBLIC      'DATA'     DGROUP і
     і.CONST     CONST    WORD         PUBLIC      'CONST;    DGROUP і
     і.DATA?     _BSS     WORD         PUBLIC      'BSS'      DGROUP і
     іSTACK*     STACK    PARA         STACK       'STACK'    DGROUP і
     і                                                               і
     і    * -  STACK  не  подразумевается  размещенным в  DGROUP или і
     і FARSTACK, заданным в директиве MODEL.                         і
     АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ

                         Используемые по умолчанию
                 сегменты и типы для модели памяти COMPACT
                                                           Таблица A.4
     ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
     і  Директива  Имя    Выравнивание Комбинирование  Класс   Группаі
     ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
     і.CODE      _TEXT    WORD         PUBLIC      'CODE'            і
     і.FARDATA   FAR_DATA PARA         private     'FAR_DATA'        і
     і.FARDATA?  FAR_BSS  PARA         private     'FAR_BSS'         і
     і.DATA      _DATA    WORD         PUBLIC      'DATA'     DGROUP і
     і.CONST     CONST    WORD         PUBLIC      'CONST;    DGROUP і
     і.DATA?     _BSS     WORD         PUBLIC      'BSS'      DGROUP і
     іSTACK*     STACK    PARA         STACK       'STACK'    DGROUP і
     і                                                               і
     і    * -  STACK  не  подразумевается  размещенным в  DGROUP  илиі
     іFARSTACK, заданным в директиве MODEL.                          і
     АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ

                         Используемые по умолчанию
             сегменты и типы для модели памяти LARGE или HUGE
                                                           Таблица A.5
     ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
     і  Директива  Имя    Выравнивание Комбинирование  Класс   Группаі
     ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
     і.CODE      имя_TEXT WORD         PUBLIC      'CODE'            і
     і.FARDATA   FAR_DATA PARA         private     'FAR_DATA'        і
     і.FARDATA?  FAR_BSS  PARA         private     'FAR_BSS'         і
     і.DATA      _DATA    WORD         PUBLIC      'DATA'     DGROUP і
     і.CONST     CONST    WORD         PUBLIC      'CONST;    DGROUP і
     і.DATA?     _BSS     WORD         PUBLIC      'BSS'      DGROUP і
     іSTACK*     STACK    PARA         STACK       'STACK'    DGROUP і
     і                                                               і
     і    * -  STACK  не  подразумевается  размещенным в  DGROUP  илиі
     іFARSTACK, заданным в директиве MODEL.                          і
     АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ

                         Используемые по умолчанию

     Турбо Ассемблер 3.0/tasm/#2-2                             = 150 =

        сегменты и типы для модели памяти HUGE (TCHUGE) Borland C++
                                                           Таблица A.6
     ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
     і  Директива  Имя    Выравнивание Комбинирование  Класс   Группаі
     ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
     і.CODE      имя_TEXT WORD         PUBLIC      'CODE'            і
     і.FARDATA   FAR_DATA PARA         private     'FAR_DATA'        і
     і.FARDATA?  FAR_BSS  PARA         private     'FAR_BSS'         і
     і.DATA      имя_DATA PARA         private     'DATA'            і
     іSTACK*     STACK    PARA         STACK       'STACK'           і
     і                                                               і
     і    * -  STACK  не  подразумевается  размещенным в  DGROUP  илиі
     іFARSTACK, заданным в директиве MODEL.                          і
     АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ

                              Программы DOS
     ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД

          Программы DOS  предназначены для работы под управлением опе-
     рационной системы DOS и записываются в двух форматах:

          - формат .EXE;

          - формат .COM.

          Формат EXE позволяет использовать наиболее общую в DOS  сег-
     ментацию программы.  Программы  могут иметь насколько сегментов и
     могут ссылаться на сегмент или группу сегментов по  имени.  Таким
     образом, программы .EXE могут превышать по размеру 64К.






Формат COM представляет собой достаточно простой формат. Программы в таком формате не могут содержать символьных ссылок на имена групп и сегментов. Таким образом, программы COM обычно пи- шутся с использованием модели TINY и ограничены по размеру данных или кода 64 килобайтами. Чтобы строить программы DOS, вам потребуется компоновщик (например, TLINK) и утилита построения программ (например, MAKE). Подробнее об утилитах рассказывается в Приложении D. Турбо Ассемблер 3.0/tasm/#2-2 = 151 = Замечания по программам формата EXE ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД При загрузке программы EXE операционная система устанавлива- ет регистры следующим образом: ЪДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї і Регистр і Значение і ГДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ і DS, ES і Содержит адрес параграфа для префикса прог- і і і рамного сегмента программы (PSP). PSP со- і і і держит передаваемые программе в командной і і і строке аргументы и указатель на строку опе- і і і рационной среды для программы. і і і і і CS:IP і Содержит начальный адрес, заданный в опера- і і і торе END в одном из модулей программы, или і і і адрес директивы STARTUPCODE. і і і і і SS:SP і Содержит адрес последнего слова, которое і і і задает в программе сегмент стека. і АДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ В программах EXE вы можете задавать любую модель памяти. Следует использовать возможно более простую модель, поскольку это обеспечивает более быстрое выполнение и упрощает программирова- ние. Например, если в вашей программе никогда не предполагается использовать более 64К данных и области стека, то вполне можно использовать модель TINY. Директива STURTUPCODE в модуле генерирует инструкции, кото- рые автоматически инициализируют все необходимые регистры, соот- ветствующие выбранной модели. Для использования в программе она сохраняет адрес параграфа PSP в сегменте ES. Когда вы загружаете программу, операционная система выделяет программе до ее завершения всю оставшуюся память. Для программ, которые не используют динамически распределяемую область памяти, или которые строят в памяти свою собственную динамически распре- деляемую область, такое поведение вполне подходит. Другие прог- раммы могут выделять память через DOS. В этом случае через запро- сом на память из DOS память должна быть освобождена и доступна операционной системе. Для выхода из программы используется прерывание INT 21, функция 4Ch. Эти вопросы иллюстрируются примером программы EXEPROG.ASM на дистрибутивном диске. Чтобы сформировать программу EXE, исполь- зуйте утилиту MAKE. В формирующем файле MAKEFILE следует указать все модули, с которыми компонуется программа, например: EXECPROG.EXE: EXECPROG.OBJ Турбо Ассемблер 3.0/tasm/#2-2 = 152 = TLINK EXECPROG; EXECPROG.OBJ: EXECPROG.ASM TASM EXECPROG Замечания по программам формата COM ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД Программы COM представляют собой ограниченные версии прог- рамм EXE. Каждую программу формата COM можно представить как программу EXE, но не каждую программу EXE можно представить как программу формата COM. Здесь действуют следующие ограничения: - Программы COM следует писать с использованием модели TINY. - В программах COM нельзя использовать предопределенный сег- мент стека. - Программа COM не может содержать прямых адресных ссылок на адрес сегмента или группы. Это означает, что программа не может содержать непосредственных дальних вызовов или ссы- латься на сегменты по имени. Все процедуры в программе COM должны описываться как BEAR. - Выполнение должно начинаться со смещения 100h в сегменте кода. Чтобы это произошло, укажите в качестве первой инс- трукции сегмента кода директиву STURTUPCODE. Турбо Ассемблер загружает программы COM, начиная со смещения 100h в префиксе программного сегмента программы (PSP). Для этого директива STARTUPCODE для модели TINY автоматически помещает в программу ORG 100h. При загрузке программы COM устанавливаются следующие регист-


Страницы : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 [38] 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54


adfun.ru









Форум раскрутка сайта и интернет-реклама
реклама - рекламное агентство -
Интернет PR агентство чат и форум
волчат знакомства - сайт знакомств
бесплатные компьютерные игры
фото знакомства
новые стеклопакеты -
качественное остекление балконов
портал - пластиковые окна -
закажите окна пвх в Москве

частная стоматология в Москве:
надежная стоматологическая клиника
протезирование зубов и
отбеливание зубов в стоматологии
Музыка - скачать mp3 музыка
каталог партнерские программы
ручной бесплатный обмен ссылками цифровые камеры цифровые фотоаппараты -
цифровые видеокамеры

театры - заказ билетов в театр -
магазин - продажа компьютеров
в Москве форум Испания - жилье -
недвижимость в испании

турфирма - испания туры
Переводы - бюро переводов
Законы - закон о товарных знаках,
Грузовые перевозки. АсМАП. Дальнобой закон о рекламе
Интернет казино
реклама на форуме и контекстная реклама
на Яндексе Баннерная сеть и
интернет каталог сайтов Holiday.Ru
Форумы политика, лучшие анекдоты
знакомства.