Статьи по Assembler


@Struct.inc для mycall (ассемблер) - часть 2


;перепутывания порядка сохранения/восстановления регистров.

@push MACRO p0,p1,p2,p3,p4,p5,p6,p7,p8,p9,pa,pb,pc,pd,pe,pf

FOR param,<p0,p1,p2,p3,p4,p5,p6,p7,p8,p9,pa,pb,pc,pd,pe,pf>

IFNB <param>

push param

ENDIF

ENDM

ENDM

@pop MACRO p0,p1,p2,p3,p4,p5,p6,p7,p8,p9,pa,pb,pc,pd,pe,pf

FOR param,<pf,pe,pd,pc,pb,pa,p9,p8,p7,p6,p5,p4,p3,p2,p1,p0>

IFNB <param>

pop param

ENDIF

ENDM

ENDM


;Стандартный набор директив для прикладного программирования под win32.

;Вынесен сюда, чтобы не засорять основной листинг.

;ВНИМАНИЕ! Файл @struct.inc должен включаться первым!

.386

.Model flat,stdcall


;См. примечание к первому оператору в этом файле.

ENDIF



 

Варианты реализации макросов @push/@pop в версии Андрея Бордачева - в статье Макросы First и Second.






- Начало -  - Назад -  - Вперед -



Книжный магазин