Турбо Паскаль позволяет в программах Турбо Ассемблера резер- вировать пространство для статических переменных в сегментах гло- бальных данных (DATA или DSEG). Чтобы выделить это пространство, можно просто использовать такие директивы, как DB, DW и т.д. Нап- ример:
DATA SEGMENT PUBLIC MyInt DW ? ; зарезервировать слово MyByte DB ? ; зарезервировать байт . . . DATA ENDS
Переменных, выделяемых Турбо Ассемблером в сегменте глобаль- ных данных, касаются два важных ограничения. Во-первых, эти пере- менными являются "частными", они недоступны программе Турбо Пас- каля (хотя вы можете передавать указатели на них). Во-вторых, они не могут быть предварительно инициализированы, как типизованные константы. Оператор:
MyInt DW 42 ; это не инициализирует ; MyInt значением 42
не вызовет ошибки при компоновке модуля с программой Турбо Паска- ля, однако MyInt при выполнении программы не будет иметь значение 42.
Эти ограничения можно обойти, описав переменные или типизо- ванные константы Турбо Паскаля с помощью директивы EXTRN, что сделает их доступными Турбо Ассемблеру.