mah pix

Tuesday, October 7, 2008

Question #5

Research in the net the most recent assembler. Describe its history, nature and applications. Evaluate this assembler from its predecessor.Cite your reference. Refrain from copying and pasting answers.

The most recent assembler is the FASM..

History:

The project was started in 1999 by Tomasz Grysztar aka Privalov (at that time, an undergraduate student of mathematics from Poland) and its first public was announced on March 15 2000. Fasm is completely written in ASSEMBLY LANGUAGE and comes with full source. it is self-hosting and has been used to write several operating systems including MenuetOS , KolibriOS and DexOS.

Nature:
Fasm is a low-level assembler. It does not support as many high-level statements as MASM or TASM. Instead it provides syntax features and macros which make it possible to customize or create missing statements. Its memory addressing syntax is similar to Tasm's ideal mode and Nasm. Brackets are used to denote memory operands as in both assemblers but their size is places outside the brackets like in Nasm. It is multi-pass assembler. It makes extensive code size optimization, and allows more forward referencing. A usual Fasm construct is defining data or procedures only if they are used somewhere in the code, something that in most languages is done per-object by the linker.

Applications:

DexOS, & BOS - 32-bit DOS-like OS'es
MenuetOS - 32-bit and 64-bit GUI operating systems
KolibriOS -32-bit GUI OS
FASMLIB - portable library for x86 32-bit assembly programming
PROE - x86-64 encryption engine
RevaForth
uFMOD - xm player for Win32,Linux, Unix/BSD & KolibriOS


References:
1. Tomasz Grystar. Flat Assembler Programmer's Manual

2. Randall Hyde. "which Assembler is the Best?"

3. FASMARM (2008-03-20)

4. Interview with Privalov the author of FASM

5. Tomasz Grysztar. " Flat Assembler Design Principles"









No comments: