Cílem tohoto seriálu je seznámit vás s možností programování aplikací v assembleru pod operačním systémem Windows.
Úvod
Co je to assembler, je zbytečné psát, protože na toto téma se dá najít na internetu hodně informací. V tomto seriálu si ukážeme, jak využít MASM32 na programování Windows aplikací. Jistě jste slyšeli o tom, že assembler je nepřehledný a podobné věci, ale myslím, že po pár dílech uvidíte, že to není až taková pravda. V tomto seriálu budu popisovat pouze podstatné věci, nikoliv alternativy. Ty podstatné věci budou stačit pro víc jak 90% běžného programování v MASM32. Abych nějak zakončil úvod, tak nastíním, co jsem pro vás připravil a na co se můžete do budoucna těšit.
- instalace MASM32, IDE, nastavení,
- základní práce v IDE WinAsm Studio,
- naučíme se základní direktivy MASM32,
- ukážeme si jak vytvořit aplikace typu console, dialog a windows,
- naučíme se využívat msvcrt.dll pro ještě lepší přehlednost programu,
- řekneme si něco o makrech,
- .... různé, tipy a triky,
Věřím, že se vám bude seriál líbit a budete se těšit na nové díly. Pokud budete mít zájem, tak se zde na serveru programujte.com může udělat zvláštní diskuze na téma MASM32, kde by se řešily různé problémy. A nebo mohu napsat vždy nějaký mezidíl, kde budou zodpovězeny vaše dotazy.
Instalace MASM32
MASM32 pochází z dílny Microsoft a je součástí vývojového nástroje Visual C++ až po dnešní Visual C++ 2005 .NET. V těchto vývojových nástrojích je jako samostatný kompilátor. Kompilaci vkládaného assembleru zajišťuje samotný překladač C++. Překladače assembleru se chytla partička lidí a pod licencí GPL vytvořily samostatný balík pro programování v assembleru, který obsahuje potřebné knihovny a nástroje. Instalaci MASM32 můžete stáhnout na domovské stránce hutch's. Po stažení instalačního souboru (zhruba 4Mb) spusťte instalaci. Instalace je zcela automatická a požaduje po vás pouze zvolit disk, na který se má MASM32 instalovat.
(Instalační okno MASM32)
Pokud jste instalaci zdárně zvládli, tak je ještě zapotřebí udělat jeden krok, a to vytvoření adresáře v adresáři MASM32 s názvem !Programy. Tento adresář se může jmenovat libovolně a bude sloužit jako adresář, kde budeme vytvářet další adresáře vašich programů. Ale k tomu se dostaneme v dalších dílech seriálu.
Tady taková jedna perlička. Instalace spočívá pouze ve vytvoření adresáře MASM32 kam se pak uloží potřebné soubory. Vytvoří se knihovny .LIB. Nic se nezapisuje do registru a ani nikam jinam. Takže pokud chcete MASM32 odinstalovat (ale o tom pochybuji), tak stačí smazat adresář MASM32.
Doporučené IDE a konfigurace
Za tu dobu co pracuji v MASM32 jsem vyzkoušel mnoho editoru a IDE pro psaní kódu. Ze začátku jsem používal QEditor, který je součástí instalace. Ale postupem času se ukázalo, že pro větší projekty je tento editor nevhodný. Proto jsem se začal poohlížet po něčem jiném, až jsem skončil u IDE WinAsm Studio. O tomto IDE mohu říct jen to, že to je absolutní špička v IDE pro assembler a hlavně je free. Zajímavé je na tomto IDE i to, že je celé naprogramované v MASM32. Což je důkaz, že assembler si zaslouží své čestné místo mezi programovacími jazyky. Stránky tohoto projektu najdete na http://www.winasm.net kde po registraci, která je zdarma, máte možnost stažení instalace. Registrace vám přinese i tu výhodu zapojit se do diskuzního fóra na stránkách a nebo možnost stahovat různé doplňky k tomuto IDE.
(WinAsm Studio v akci)
Zde je instalace trošku komplikovanější, ale přesto ji popíšu v bodech.
-
zaregistrujte se na stránkách WinAsm Studia,
-
v sekci Download stáhněte poslední verzi full package (v době psaní tohoto dílu WinAsm Studio v5.0.4 full package),
-
rozbalte tento zip soubor do adresáře MASM32 tak, aby jste měli strukturu tohoto adresáře jako je na níže uvedeném obrázku,
-
potom běžte na Forum > General, kde je jako vždy první thread Pinned:. Když píšu tento díl tak je tam aktuálně Pinned: WinAsm Studio V5.1.0.0,
-
zip soubor v tomto thread stáhněte a soubory v něm obsažené použijte pro přehrání souboru v původní verzi 5.4.0. Takto se vždy provádí update na novější verzi,
(Takto by měla vypadat struktura adresáře instalace MASM32)
Pokud máte podobnou strukturu adresáře instalace MASM32, jako je na výše uvedeném obrázku, tak se můžeme pustit do konfigurace. Nejprve vytvoříme zástupce pro Winasm.exe a doufám, že důvod nemusím vysvětlovat. Potom spustíme WinAsm Studio, kde se před vámi objeví dialog Recent Projects. Tento dialog přeskočte kliknutím na Exit. V menu pak zvolte Tools Options ... . V okně Options vyberte záložku Files & Paths, kde nastavíte adresáře a potřebné soubory.
(Pokud máte MASM32 instalovaný na disku C:, tak nastavení by mělo vypadat takto)
Něco pro nedočkavé
Určitě se vás pár najde, kteří začnou "laborovat" a právě pro ně tu mám nějaké tipy. Podívejte se do následujících adresářů:
- Example - ukázkové programy,
- Help - soubory nápovědy, kde naleznete užitečné informace. Bohužel v angličtině.
- Html - něco málo o projektu MASM32,
- Icztutes - pár tutoriálů,
Důležité je znát alespoň částečně angličtinu, protože většina dokumentací je právě v tomto jazyku. Trošku předběhnu, když řeknu, že v budoucnu budeme používat soubor nápovědy kde jsou popsány API Windows. Tento soubor má zhruba 20Mb a popisuje několik set API funkcí a přeložit to vše do češtiny a udržovat to aktuální je nad lidské síly. Možné to je ale, člověk by pak nic jiného nedělal. Nehledě na to, že tento soubor je pouze mizivá část z dostupné dokumentace.
Čím některé potěším je to, že v blízké době dokončím překlad programu WinAsm Studio. Čeština pak bude dostupná na stránkách http://www.winasm.net.
Odkazy
WinAsm Studio- domácí stránka projektu WinAsm Studia,
Hutch's Home Page
- domácí stránka projektu MASM32,