Overview Of Masm32 Great Language - An overview of MASM32. You'll know its capabilities.
Discussion by kxrain with 0 Replies.
Last Update: January 14, 2008, 1:05 pm
QUOTEMASM32 version 9 is a working development for programmers who are interested in either learning or writing 32 bit Microsoft assembler (MASM). Installation is an automated process that will install on the local drive of your choice. MASM32 will not install on a network drive.
New features in version 9.0
An assembler as powerful as MASM is capable of enmulating higher level languages while maintaining the performance and size of assembler code. This has been demonstrated with C style code that MASM already supports. The macro capacity built into MASM has allowed the development of a combined macro and library system that partly emulates basic style string handling and other similar language capacities. This allows experienced programmers with multiple language skills to leverage their existing skills and get up to pace writing MASM code more quickly.
The current version installation has used 7zip compression technology developed by Igor Pavlov which has allowed more information to be included while keeping the installation size down. This has allowed 8 extra examples written by Bill Cravener and a very good floating point tutorial written by Ray Filiatreault to be included so no-one has an excuse any longer for not being a genius in floating point maths.
MASM already is capable of building UNICODE applications using the traditional resource string method but additional macros are now supplied to write UNICODE strings directly into the data section in the same manner as normal BYTE data to make the capacity easier to use. There are a couple of UNICODE examples in the example code that show both methods.
Pelle Orinius has given permission to include his high performance linker and library manager in MASM32 for advanced assembler programmers who want to extract further size reductions from their code. Vladimir Kim's VKdebug is included to make fast debugging easier to use, Ernie Murphy's research work writng COM in MASM continues to be very popular and there is some very clever OOP example code written by Jaymeson Trudgden and Thomas Bleeker (NaN and Thomas) for programmers interested in this style of code design. A subset of Iczelion's classic tutorials are included in MASM32.
MASM32 comes with its own small default editor that has a reasonable number of prebuilt scripts to make code generation fast and easy. There is the choice of two seperate code generators for creating full window skeletons to develop application in. The editor has a large range of Winhelp help files so that information is available quickly when you need it and its menu system is extendable so you can add more information as you need it. You can easily extend this capacity by rolling your own scripts and prebuilt templates.
MASM32 assumes that the programmers who will use it already have experience in 32 bit Windows API programming using compilers and have done some work in assembler. It is not designed as a beginners package and it does not have the support for beginners to learn the basic concepts about assembler. It is recommended that beginners to programming learns a compiler like C/C++ Pascal/Delphi or PowerBASIC before they start on an assembler as this will produce the necessary experience to deal with concepts like registers, data sizes or registers, data types, assembler mnemonics, system API calls and different calling conventions. The learner can always come back to assembler once they are familiar and confortable with a compiler.
Another very good alternative is to check out the website run by Randy Hyde who is the author of the classic Art Of Assembler and its successor HLA (High Level Assembler). Randy Hyde is an enormously experienced programmer, teacher and author and he has an excellent track record in making assembler accessible to a wide number of people.
Why Write in 32 bit assembler ?
Assembler affords the programmer looking for additional performance a three pronged approach in the pursuit of high performance software.
1. High performance executable files.
Executable programs built with Microsoft assembler have advantages in both size and speed when written correctly that is beyond the capacity of the best compilers. Performance critical software is a natural target for pure assembler programs.
2. Dynamic link libraries.
MASM can build very high performance dynamic link libraries that can be used by MASM, Visual C/C++ and Visual Basic as well as any other language that can call a DLL. This puts minimum size high performance files within the reach of any language that can call a DLL and allows the programmer to design processor intensive algorithms that are beyond the reach of the native language they are using.
3. Library modules for Microsoft Visual C/C++ programs.
MASM produces the identical object module format that is used by the Visual C+C++ compilers so the C/C++ programmer can build modules or libraries in MASM and directly link them into their own C/C++ programs. This allows the C/C++ programmer to target critical areas of their code in a very efficient and convenient manner, graphics manipulation, games, very high speed data manipulation and processing, parsing at speeds that most programmers have never seen, encryption, compression and any other form of information processing that is processor intensive.
For programmers who are not familiar with 32 bit Windows assembler, there is speed and performance available that you may never have seen before and contrary to popular legend, if you can write a Windows application in C/C++, Basic, Pascal or other similar compiler based languages, you can write it in MASM with very similar looking code if you bother to learn the MASM high level syntax.
Website here : http://www.masm32.com/
|Video Player with html (0)||(6) Making A Programming Language|