.


:




:

































 

 

 

 





MASM

MASM Win32. .

.

MASM invoke, API - . call, TASM, . :

Invoke <>, <1>, <2>, <\3>

invoke , :

PROTO STDCALL testproc:DWORD,:DWORD,:DWORD

, testproc, 3 DWORD.

, ...

invoke testproc, 1, 2, 3, 4...

masm , testproc 3 , 4. Masm , .. , ().

invoke ADDR OFFSET. , .

testproc PROTO STDCALL:DWORD,:DWORD,:DWORD.codetestproc proc param1:DWORD, param2:DWORD, param3:DWORD....rettestproc endp

, testproc, . , invoke. , . .

testproc proc param1:DWORD, param2:DWORD, param3:DWORDLOCAL var1:DWORDLOCAL var2:BYTEmov ecx, param1mov var2, clmov edx, param2mov eax, param3mov var1, eaxadd edx, eaxmul eax, ecxmov ebx, var1.IF bl==var2xor eax, eax.ENDIF rettestproc endp

. .

.

If - , TASM.

Repeat - , :

.REPEAT; .UNTIL eax==1

repeat until, eax 1.

While - while repeat. , :

.WHILE eax==1; .ENDW

.BREAK, .

.WHILE edx==1inc eax.IF eax==7.BREAK.ENDIF.ENDW

eax=7, while .

continue repeat while.

:

.486.model flat, stdcall option casemap:none includelib.\masm32\lib\kernel32.lib includelib.\masm32\lib\user32.libMessageBoxA PROTO STDCALL:DWORD,:DWORD,:DWORD,:DWORDExitProcess PROTO STDCALL:DWORD.data ttl db '11111',0.codestart: invoke MessageBoxA,0,offset ttl,offset ttl,0 invoke ExitProcess,0end start

TASM , MASM includelib.

include. , :

includelib.\masm32\lib\kernel32.lib includelib.\masm32\lib\user32.lib include.\masm32\include\kernel32.inc include.\masm32\include\user32.inc

A W . .

option . casemap . none, . , .





:


: 2015-10-01; !; : 365 |


:

:

.
==> ...

1912 - | 1789 -


© 2015-2024 lektsii.org - -

: 0.008 .