35.175.180.108, , 13.11.2019, Среда
Рертер
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Virtual, IgorPaster  
Форум » Центр форума » Софт и разработка » Assembler
Assembler
sitererters - Alex Orechov
Alex OrechovДата: Понедельник, 02.11.2015, 21:41 | Сообщение # 1
Подполковник
Группа: Администраторы
Сообщений: 148
Репутация: 1
Статус: Offline
Давайте в этой теме начнем изучение языка программирования Ассемблер. Вот простой код выводящий сообщение пользователю при запуске.
Код
; example of simplified Win32 programming using complex macro features
include 'C:\Alex\Ïðîãðàììèðîâàíèå\FASM.v1.6.7.26\INCLUDE\win32ax.inc'
.code
  start:
        invoke  MessageBox,HWND_DESKTOP,"Ïðèâåò! ß ïðîãðàììèðóþ íà àññàìáëåðå!","Win32 Assembler",MB_OK
        invoke  ExitProcess,0
.end start
Компилятор на котором этот код можно привести в программу приложен ниже.
Прикрепления: FASM.v1.6.7.26.rar(756.3 Kb)


Владение информацией - владение ситуацией.
 
sitererters - Alex Orechov
Alex OrechovДата: Понедельник, 02.11.2015, 21:47 | Сообщение # 2
Подполковник
Группа: Администраторы
Сообщений: 148
Репутация: 1
Статус: Offline
Работа с диалогом сообщений.

Код
; DialogBox example

format PE GUI 4.0
entry start

include 'win32a.inc'

ID_CAPTION         = 101
ID_MESSAGE         = 102
ID_ICONERROR       = 201
ID_ICONINFORMATION = 202
ID_ICONQUESTION    = 203
ID_ICONWARNING     = 204
ID_TOPMOST         = 301

section '.data' data readable writeable

  flags dd ?
  caption rb 40h
  message rb 100h

section '.code' code readable executable

  start:

        invoke  GetModuleHandle,0
        invoke  DialogBoxParam,eax,37,HWND_DESKTOP,DialogProc,0
        or      eax,eax
        jz      exit
        invoke  MessageBox,HWND_DESKTOP,message,caption,
  [flags]exit:
        invoke  ExitProcess,0

proc DialogProc hwnddlg,msg,wparam,lparam
        push    ebx esi edi
        cmp     [msg],WM_INITDIALOG
        je      .wminitdialog
        cmp     [msg],WM_COMMAND
        je      .wmcommand
        cmp     [msg],WM_CLOSE
        je      .wmclose
        xor     eax,eax
        jmp     .finish
  .wminitdialog:
        invoke  CheckRadioButton,[hwnddlg],ID_ICONERROR,ID_ICONWARNING,ID_ICONINFORMATION
        jmp     .processed
  .wmcommand:
        cmp     [wparam],BN_CLICKED shl 16 + IDCANCEL
        je      .wmclose
        cmp     [wparam],BN_CLICKED shl 16 + IDOK
        jne     .processed
        invoke  GetDlgItemText,[hwnddlg],ID_CAPTION,caption,40h
        invoke  GetDlgItemText,[hwnddlg],ID_MESSAGE,message,100h
        mov     [flags],MB_OK
        invoke  IsDlgButtonChecked,[hwnddlg],ID_ICONERROR
        cmp     eax,BST_CHECKED
        jne     .iconerror_ok
        or      [flags],MB_ICONERROR
      .iconerror_ok:
        invoke  IsDlgButtonChecked,[hwnddlg],ID_ICONINFORMATION
        cmp     eax,BST_CHECKED
        jne     .iconinformation_ok
        or      [flags],MB_ICONINFORMATION
      .iconinformation_ok:
        invoke  IsDlgButtonChecked,[hwnddlg],ID_ICONQUESTION
        cmp     eax,BST_CHECKED
        jne     .iconquestion_ok
        or      [flags],MB_ICONQUESTION
      .iconquestion_ok:
        invoke  IsDlgButtonChecked,[hwnddlg],ID_ICONWARNING
        cmp     eax,BST_CHECKED
        jne     .iconwarning_ok
        or      [flags],MB_ICONWARNING
      .iconwarning_ok:
        invoke  IsDlgButtonChecked,[hwnddlg],ID_TOPMOST
        cmp     eax,BST_CHECKED
        jne     .topmost_ok
        or      [flags],MB_TOPMOST
      .topmost_ok:
        invoke  EndDialog,[hwnddlg],1
        jmp     .processed
  .wmclose:
        invoke  EndDialog,[hwnddlg],0
  .processed:
        mov     eax,1
  .finish:
        pop     edi esi ebx
        ret
endp

section '.idata' import data readable writeable

  library kernel,'KERNEL32.DLL',\
          user,'USER32.DLL'

  import kernel,\
         GetModuleHandle,'GetModuleHandleA',\
         ExitProcess,'ExitProcess'

  import user,\
         DialogBoxParam,'DialogBoxParamA',\
         CheckRadioButton,'CheckRadioButton',\
         GetDlgItemText,'GetDlgItemTextA',\
         IsDlgButtonChecked,'IsDlgButtonChecked',\
         MessageBox,'MessageBoxA',\
         EndDialog,'EndDialog'

section '.rsrc' resource data readable

  directory RT_DIALOG,dialogs

  resource dialogs,\
           37,LANG_ENGLISH+SUBLANG_DEFAULT,demonstration

  dialog demonstration,'Create message box',70,70,190,175,WS_CAPTION+WS_POPUP+WS_SYSMENU+DS_MODALFRAME
    dialogitem 'STATIC','&Caption:',-1,10,10,70,8,WS_VISIBLE
    dialogitem 'EDIT','',ID_CAPTION,10,20,170,13,WS_VISIBLE+WS_BORDER+WS_TABSTOP
    dialogitem 'STATIC','&Message:',-1,10,40,70,8,WS_VISIBLE
    dialogitem 'EDIT','',ID_MESSAGE,10,50,170,13,WS_VISIBLE+WS_BORDER+WS_TABSTOP+ES_AUTOHSCROLL
    dialogitem 'BUTTON','&Icon',-1,10,70,80,70,WS_VISIBLE+BS_GROUPBOX
    dialogitem 'BUTTON','&Error',ID_ICONERROR,20,82,60,13,WS_VISIBLE+BS_AUTORADIOBUTTON+WS_TABSTOP+WS_GROUP
    dialogitem 'BUTTON','I&nformation',ID_ICONINFORMATION,20,95,60,13,WS_VISIBLE+BS_AUTORADIOBUTTON
    dialogitem 'BUTTON','&Question',ID_ICONQUESTION,20,108,60,13,WS_VISIBLE+BS_AUTORADIOBUTTON
    dialogitem 'BUTTON','&Warning',ID_ICONWARNING,20,121,60,13,WS_VISIBLE+BS_AUTORADIOBUTTON
    dialogitem 'BUTTON','&Style',-1,100,70,80,70,WS_VISIBLE+BS_GROUPBOX
    dialogitem 'BUTTON','&Top most',ID_TOPMOST,110,82,60,13,WS_VISIBLE+WS_TABSTOP+BS_AUTOCHECKBOX
    dialogitem 'BUTTON','OK',IDOK,85,150,45,15,WS_VISIBLE+WS_TABSTOP+BS_DEFPUSHBUTTON
    dialogitem 'BUTTON','C&ancel',IDCANCEL,135,150,45,15,WS_VISIBLE+WS_TABSTOP+BS_PUSHBUTTON
  enddialog


Владение информацией - владение ситуацией.
 
Нет_доступа - Луганский
ЛуганскийДата: Среда, 02.03.2016, 07:26 | Сообщение # 3
Сержант
Группа: Пользователи
Сообщений: 25
Репутация: 1
Статус: Offline
सगलोाप।
 
Danielappow -
Дата: Четверг, 26.01.2017, 05:11 | Сообщение # 4
Группа: Гости





Я делюсь секретами заработка в интернете и досконально все
расписываю на моем секретном сайте: http://1-million-rubley.xyz


Информация для поисковых систем: заработать деньги интернете 100 рублей fix price каталогможно зарабатывать маме РІ декрете 7 Р±СѓРєРІz сколько денег можно заработать РІ уберечьзаработок онлайн РЅР° бинарных опционах без вложений 756$ РІ месяцсамый распространенный заработок интернете yota, можно ли зарабатывать интернете отзывы 5 лучших моделейпростой заработок РІ интернете без вложений klikiworkможно ли заработать деньги РЅР° просмотре рекламызаработать деньги интернете 150 90заработок интернете вложение 10 рублей qiwi, как заработать РІ интернете РІ социальных сетях joomlaновые заработки интернете без вложений 756$ РІ месяцy заработка интернете существует специальный сайт СЃ 1995 РіРѕРґР°30 СЃРїРѕСЃРѕР±РѕРІ заработка alliance\/альянсзаработок РЅР° написании текстов без вложений outlook.
 
LloydBroab -
Дата: Воскресенье, 29.01.2017, 15:44 | Сообщение # 5
Группа: Гости





Я делюсь секретами заработка в интернете и досконально все
расписываю на моем секретном сайте: http://1-million-rubley.xyz


Информация для поисковых систем: i можно зарабатывать блогерыкак заработать на подписчиках в контактекакой самый лучший заработок интернете 2016люди зарабатывают интернете большие деньги epubсколько можно заработать на своем сайте в месяц, сколько можно заработать на яндекс директ xlsвозможность заработка в интернете без вложений outlookt заработать деньги в интернете в беларуси без вложенийкак можно заработать 14 летней девушкекак заработать в интернете без вложений с телефона, способ заработка на дому сварщиком trudbox comкиви ваучеры заработок отзывы 2016как заработать продавая прогнозыкак можно заработать денег на дому5 как реально можно зарабатывать в интернете без обмана.
 
MarsisSMt -
Дата: Суббота, 08.09.2018, 11:49 | Сообщение # 6
Группа: Гости





<a href=https://goo.gl/JfXfwb><img src="https://thecoconuti.com/gif/1/2.gif"></a>


OPEN WEBSITE -> https://goo.gl/s2aVdx

.

Добавлено (08.09.2018, 11:51)
---------------------------------------------
<a href=https://goo.gl/JfXfwb><img src="https://thecoconuti.com/gif/1/2.gif"></a>


OPEN WEBSITE -> https://goo.gl/s2aVdx

.

Добавлено (10.09.2018, 04:36)
---------------------------------------------
<a href=https://goo.gl/s2aVdx><img src="https://thecoconuti.com/gif/2/10.gif"></a>


OPEN WEBSITE ----> https://goo.gl/JfXfwb

.

 
Форум » Центр форума » Софт и разработка » Assembler
  • Страница 1 из 1
  • 1
Поиск:
Новый ответ
Имя:
Текст сообщения:
Все смайлы
Опции сообщения:
Код безопасности:

Copyright Rerter Corp © 2015 - 2019
uCoz
Мнения авторов может не совпадать с позицией администрации интернет-ресурса. Воспроизведение опубликованных материалов на сайте осуществляется только с указанием ссылки rerter.ucoz.com .