Модульный принцип построения программ

Модульный принцип – разбиение программы на отдельные процедуры. Процедуры образуют модули объектного кода, которые хранятся в файлах с расширением OBJ. Программа формируется путем сборки из отдельных боков кода при линковании.

Пример «сборки» программы в TASM:

tlink myprg.obj+module1.obj+module2.obj+…

Особенности разработки модульных программ:

1. Главный модуль должен иметь ссылку на процедуры внешних модулей

виде: extrn Myproc:proc

2. Модули программы должны содержать описание процедур в виде: public Myproc

3. Сегменты кода в основной части и в модулях должны иметь атрибут public.

4. Процедуры в модулях должны иметь атрибут типа вызова far или near.

5. Точка входа задается в главном модуле.

Пример двух модульной программы

Главная программа.

 


;EXE program

codesg segment public 'CODE'

assume CS:codesg,DS:datasg,SS:codesg

extrn sub1:proc ;указание внешней процедуры

begin:

;----------------------------

mov ax,datasg

mov ds,ax

mov bx,offset mes ;передача данных через регистр BX

call sub1 ;вызов процедуры

;----------------------------

mov AX,4C00h

int 21h

;---------------------------

codesg ends

datasg segment 'DATA'

mes db ‘TEST’,10,13,’$’

datasg ends

stacksg segment stack 'STACK'

dw 128 dup(0)

stacksg ends

end begin


1. Внешний модуль.

;module

codesg segment public 'CODE'

public sub1

sub1 proc near

mov ah,09h

mov dx,bx

int 21h

ret

sub1 endp

codesg ends

end


Модульный подход позволяет создавать библиотеки объектного кода, для многократного его использования при разработке программ.