Директива LOCAL <переменная:тип> (Например: LOCAL s:DWORD) выделяет локальную переменную которая хранится в стеке. Смысл абсолютно такой же как и в языках высокого уровня. Должна быть в самом верху функции/процедуры.
Директива STRUCT, сразу к примеру:
console.asm
- include \masm32\include\masm32rt.inc
- ;======================================================;
- ; Build this console app with ;
- ; "MAKEIT.BAT" on the PROJECT menu. ;
- ;======================================================;
- .data
- os STRUCT
- win7 db 'Windows 7',0
- win8 db 'Windows 8',0
- win10 db 'Windows 10',0
- win11 db 'Windows 11',0
- unreg db 15 dup(?)
- os ENDS
- DisplayOs os {} ; можно и <>
- .code
- start:
- print offset DisplayOs.win7,13,10
- print offset DisplayOs.win11,13,10
- inkey
- exit
- end start
Конечно же это не весь список, тут есть дополнительное инфо:
https://sysprog.ru/post/direktivy-assemblera
или тут
https://citforum.ru/programming/tasm3r/tasm3r_03.shtml
Комментариев нет:
Отправить комментарий