flat assembler
Message board for the users of flat assembler.
Index
> High Level Languages > easm |
Author |
|
Yardman 13 Apr 2007, 22:11
[ Post removed by author. ]
Last edited by Yardman on 17 Jan 2012, 03:46; edited 1 time in total |
|||
13 Apr 2007, 22:11 |
|
Yardman 13 Apr 2007, 22:36
[ Post removed by author. ]
Last edited by Yardman on 17 Jan 2012, 03:46; edited 1 time in total |
|||
13 Apr 2007, 22:36 |
|
OzzY 13 Apr 2007, 22:41
Add support for include files.
So we don't have to declare every constant from Windows API! My opinion: Looks good! Keep working on it! It has good future! The compiler looks very fast. It's not a toy project. Might be worth looking forward. I think lots of concepts are based on FASM: * sections declarations looks a lot like FASM's * Compile directly to .EXE * All information for assembling/compiling are in the source code/no need for args passed to the assembler/compiler Maybe more... I just looked at it for 30 seconds. It seems compilers are learning something with FASM. |
|||
13 Apr 2007, 22:41 |
|
vid 14 Apr 2007, 09:49
Quote: The purpose of easm is to be a simple-to-use assembly language which is to specialise in producing the smallest possible executable which executes in the smallest amount of time. i doubt it can accomplish this by introducing higher-level abstractions (string, HLL procedures), and with "one pass" assembling Quote: The assembler is being implemented in C++ using the Microsoft Visual C++ 6 compiler. IMHO it's bad design with the "one pass", author is just making it easier for himself, by limiting possibilities. In fact he has hit this problem himself, and make it two pass assembler already. See this Quote: dword dwSomeDword = deadbeefh wonder how he differentiates numeric constant "deadbeefh" (0xDEADBEEF) and variable called "deadbeefh". Quote: A typical easm source code file is organised into 'sections'. A section is designed to contain a certain type of information. Quote: The order of sections in an easm source file is significant. The reason that sections must be ordered specifically is due to the fact that easm makes just one pass of the source file. This means that everything that must be done in order to create the final executable must be done by the time the end of the source code is reached by the parser. Consequently, data and function declarations must be located by the parser before any reference to them is made. If the sections containing these symbols are located after the sections that make reference to them, the assembler will determine that the symbols are undefined Quote: Variables occupy physcial space in the executable and as such, the more variables declared in an application, the larger (in size) the application will be. Put another way, if a particular easm application creates a 1024 byte (1KB) string variable, 1KB of data will be reserved in the executable and the final executable will be 1KB larger in size. sorry for being harsh, but this assembler is really bad/lazy designed, and almost unusuable for real things. |
|||
14 Apr 2007, 09:49 |
|
OzzY 14 Apr 2007, 17:52
Oh yeah!
FASM still pwnz! FASM + C + D suits me fine for every coding. |
|||
14 Apr 2007, 17:52 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.