假设您的汇编程序没有CBW,LOOP和PTR操作,您如何为每个论文设计一个宏?
示例:
MCBW macro
move AX,0
div AX,CH
endm
答案 0 :(得分:0)
循环宏:
;//---------------------------------------------------------------------------
myLoop MACRO myLabel:REQ
;//---------------------------------------------------------------------------
dec ecx
jnz myLabel
ENDM
在proc示例中:
mov ecx, 5
mov eax, 0
ANY_LOOP:
inc eax
myLoop ANY_LOOP
CBW宏:
;//---------------------------------------------------------------------------
myCBW MACRO
;//---------------------------------------------------------------------------
mov ebx, eax
and eax, 080h
shl ax, 1
xchg ah, al
mov ecx, 0FFFFh
mul ecx
mov al, bl
ENDM
在proc示例中:
mov eax, 8Fh
myCBW
PTR宏:
;//---------------------------------------------------------------------------
myPointer MACRO source:REQ
;//---------------------------------------------------------------------------
exitm <[source]>
ENDM
在proc示例中:
.data
number DWORD 5
.code
main PROC
mov eax, myPointer(number)