Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Fasm - Формат записи инструкций27 апреля 2011Оглавление: 1. Fasm 2. Препроцессирование 3. Формат записи инструкций 4. Формат выходных файлов 5. Поддержка fasm в сторонних программных продуктах Используется Intel-синтаксис записи инструкций. Единственное существенное отличие от формата, принятого в других ассемблерах — значение ячейки памяти всегда записывается как Пример программыПример Windows-программы «Hello, world!», которая выводит это сообщение с помощью функции MessageBox и завершается: format pe gui 4.0 entry start include 'win32a.inc' start: invoke MessageBox,NULL,message,message,MB_OK invoke ExitProcess,0 message db 'Hello, World!',0 data import library kernel32,'kernel32.dll',\ user32,'user32.dll' include 'api/kernel32.inc' include 'api/user32.inc' end data Или так: include 'win32ax.inc' .code main: invoke MessageBox,NULL,'Hello, World!','Fasm message box:',MB_OK invoke ExitProcess,0 .end main Усложнённый вариант, с уточнением секций в PE-файле: format pe gui entry start include 'win32a.inc' section '.data' data readable writeable message db 'Hello, World!',0 section '.code' code readable executable start: invoke MessageBox,NULL,message,message,MB_OK invoke ExitProcess,0 section '.idata' import data readable writeable library kernel32,'kernel32.dll',\ user32,'user32.dll' import kernel32,\ ExitProcess,'ExitProcess' import user32,\ MessageBox,'MessageBoxA' Пример простой программы в формате .COM. org 100h mov ah,9h mov dx,hello int 21h mov ah,8h int 21h int 20h hello db 13,10,"Hello, World!$" Просмотров: 7194
|