Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / Турбо Ассемблер / Приложения /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Замечания по программированию - Программирование от RIN.RU
Замечания по программированию



Программы Windows


Турбо Ассемблер можно использовать для создания прикладных программ Windows. Windows может работать либо в реальном режиме (на всех процессорах 8086) или в защищенном режиме (на процессоре 80286 и старше). Таким образом программа, написанная для Windows, может работать в защищенном режиме. С помощью директив CODESEG, DATASEG и UDATASEG следует аккуратно разделить код и данные и использовать директиву WARN PRO, чтобы отмечать любые проблемы с доступом, которые могут возникать во время ассемблирования. Наконец, в программах защищенного режима не следует пытаться устанавливать сегментные регистры в вычисленные значения параграфов сегмента. Значениями сегментов в защищенном режиме не являются адреса параграфов. Вместо этого используются дескрипторы, которые не имеют смысла в прикладной программе.


Кроме Турбо Ассемблера и Турбо отладчика для создания эффективных прикладных программ Windows требуются другие средства. В частности, вы должны располагать компилятором Borland C++ (либо Microsoft C 2.6 и Windows Software Dewelopment Kit). Прикладные программы Windows обычно требуют наличия утилиты-компилятора ресурсов (RC) этих пакетов. Должны быть также доступны стандартные библиотеки. В Windows также необходим компоновщик (например, TLINK) и утилита построения программ (например, MAKE).


Данное приложение содержит простейшие рекомендации по созданию прикладных программ Windows и динамически компонуемых библиотек (DLL). Более полное описание прикладных программ Windows можно найти в "Руководстве пользователя по С++" и соответствующей документации по Windows.


Замечания по динамически компонуемым библиотекам Windows


Динамически компонуемая библиотека (DLL) представляет собой группу процедур, которую вы можете вызывать из прикладных программ Windows. Библиотеки DLL расширяют интерфейс прикладных программ Windows.


Библиотеки DLL выполняют множество функций. Например, вы можете в DLL неинтерактивные программы DOS. С помощью DLL можно добавить новые средства работы с экраном.


На дистрибутивном диске Турбо Ассемблера можно найти пример программы с именем DLLPROG.ASM, который иллюстрирует DLL.


Для построения DLL можно использовать утилиту MAKE. Формирующий файл должен включать в себя все модули, которые должны компоноваться с DLL, например:


dllprog.dll: dllprog.obj dllprog.def
TLINK dllprog,,,,dllprog
RC dllprog.dll


dllprog.obj: dllprog.asm
TASM dllprog


Данный процесс построения требует наличия следующего файла определений компоновщика DLLPROG.DEF:


LIBRARY DLLPROG
EXETYPE WINDOWS
CODE PRELOAD MOVEABLE DISCARDABLE ; CODE применяется к сегментам _TEXT или
; в классе CODE
DATA PRELOAD MOVEABLE SINGLE ; DATE применяется ко всем сегментам в
; группе DGROUP и в классе DATA
; (должен быть SINGLE для всех DLL
HEAPSIZE 0




Замечания по прикладным программам Windows


Прикладная программа Windows во многом аналогична DLL с единственной процедурой с именем WinMain. Windows вызывает WinMain для запуска процедуры. Прикладная программа имеет обычно стандартную структуру, которая позволяет ей взаимодействовать с графической операционной средой Windows.


Пример прикладной программы Windows можно найти в файле WINPROC.ASM на дистрибутивных дисках Турбо Ассемблера. В данном примере для вывода сообщения на экран используются функциональные возможности, обеспечиваемые предыдущим примером DLL.


Для построения прикладной программы Wiondows можно использовать утилиту MAKE. При этом в формирующем файле следует указать все модули, компонуемые с данной прикладной программой:


winproc.exe: winprog.obj winprog.def winprogg.res
TLINK winprog,,,,winprog
RC winprog.res


winproc.res:winproc.rc
RC -r winproc.rc


winproc.obj: winprog.asm winprog.inc
TASM winprog


Этот процесс построения требует использования следующего файла определений компоновщика WINPROG.DEF:


NAME WINPROG
EXETYPE WINDOWS
CODE MOVEABLE DISCARDABLE
DATA MOVEABLE MULTIPLE DISCARDABLE
STACKSIZE 5120 ; минимум для прикладных программ Windows


;-----------------------------------------------------------
; Определить импортируемые функции. (Это не обязательно, ес-
; ли вы выполняете компоновку с библиотекой импорта типа
; IMPORT.LIB или LIBW.LIB.)
;-----------------------------------------------------------
IMPORTS DLLPROG.SetHello


<<<  Назад
 1  2  3 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Обзор синтаксических правил Турбо Ассемблера

Вопросы совместимости

Утилиты Турбо Ассемблера

Сообщения об ошибках

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь