it-place.net > Уроци > Други
Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 Асемблер за начинаещи: Глава 2 - Copy, Paste и ... потегляме...
  1. Написване
  2. Написване-2
  3. Сега да анализираме текста по-подробно
  4. Сега да анализираме текста по-подробно-2
  5. Сега да анализираме текста по-подробно-3
     
Автор  johnfound (04.06.2004 20:01)  съобщение до автора
Погледнат  4187 пъти  добави към любими
Оценка  добави коментар
Гласове  12  изпрати на приятел
Коментари  (2)  абонирай се за Други
    Страница 1 / 5

 



В тази глава ще напишем първата си Windows програма на асемблер. Ще я стартираме, за да почувстваме удоволствието и да си качим настроението. След това ще я анализираме ред по ред, за да разберем какво точно прави.

1. Написване:
Стартирайте FASMW (сполучливо инсталиран от вас, според указанията в Глава 0) и в редактора въведете (или пък копирайте) следните редове:
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
format PE GUI

MB_OK
              = 00h
MB_ICONEXCLAMATION
= 30h

       
push    MB_OK + MB_ICONEXCLAMATION
       
push    _caption
       
push    _message
       
push    0
       
call    [MessageBox]

       
push    0
       
call    [ExitProcess]

_caption db 'Win32 Assembly Programming',0
_message db 'I feel the power.',0

data import
            
dd  0, 0, 0, RVA kernel_name, RVA kernel_table
             dd 
0, 0, 0, RVA user_name, RVA user_table
            
dd  0, 0, 0, 0, 0

kernel_table:
ExitProcess  dd  RVA _ExitProcess
             dd 
0

user_table:
MessageBox   dd  RVA _MessageBoxA
             dd 
0

kernel_name  db  'KERNEL32.DLL',0
user_name    db  'USER32.DLL',0

_ExitProcess dw  0
            
db  'ExitProcess',0

_MessageBoxA dw  0
            
db  'MessageBoxA',0
end data



  Следваща страница >> 


Ключови думи: асемблер начинаещи програма fasm


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 За автора: johnfound  
Занимавам се с програмиране от 1983 година. Експерт по програмиране на Delphi и Assembler. Разбира се понякога работя и на PHP, Perl и др.под. В момента се занимавам с програмиране на автоматизирани системи за производство в голяма немска фирма в България. От 2003г започнах проект с отворен код, целта на който е разработката на съвременна среда и средства за програмиране на асемблер под Windows, конкурентна на езиците от високо ниво. Подробности за проекта можете да намерите на: http://fresh.flatassembler.net
   
 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

Сега вече е всичко наред, шпациите не се изяждат!

  Mutatos на 10.06.2004 13:45

Тъй като така и не можах да форматирам правилно сорсовете в урока (енджина на сайта изяжда шпациите и използва пропорционален шрифт) съм записал правилно форматираният сорс от урока на:

http://asm32.hosters.uni.cc/files/hello.asm

Най-добре да си го дръпнете, защото е по-четлив.

  johnfound на 05.06.2004 15:16

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008