flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
a16b03
I need to make data buffer that is 80*60*2 bytes long, but insted a get an error.
What is the max size, tha i can define? Is it a bug? 80*60*2=9600B = 9.6 KB only |
|||
![]() |
|
MazeGen
You mess the syntax up. You should use
Code: 80*60*2 dup (07) |
|||
![]() |
|
vid
i never comprehended this stupid MASMy syntax... FASM's times is much clearer (but much slower if not internally optizimed...)
|
|||
![]() |
|
MazeGen
It is not so stupid for me:
<how many times> DUPlicate <what> |
|||
![]() |
|
Tomasz Grysztar
I rather see it as:
DB <how many> DUPlicates of <what> |
|||
![]() |
|
tom tobias
In my opinion, this syntax is obsolete, developed originally in the 1970's when SPACE SAVINGS was PARAMOUNT. So, to save space, one was obliged to DB, DEFINE BYTE, or, specify the dimension, in bits, of a particular component of a data structure.
Of course, if one is engaged in MODERN thinking, MEMORY is a LOT CHEAPER than programming time, therefore, ONE deliberately SQUANDERS memory, (wastes it), BY ASSIGNING ALL VARIABLES to the same (32 bit) space, regardless of whether or not one actually uses only 8 bits, or, for that matter, only 1 bit. Therefore, a MODERN Assembler, ought to possess a default setting which ASSUMES every data element to be the same 32 bit size. Of course, many will object to this--particularly those who deal with 64 bit operands, or floating point variables (80 bits), or those who use the newer 128 bit registers. I don't insist that a USEFUL assembler MUST process all data as exclusively 32 bits, excluding all other possibilities, I simply ask that a modern assembler ASSUME a default setting of 32 bits, so that ONLY use of any other dimension requires an explicit designation by the programmer. ![]() |
|||
![]() |
|
a16b03
This was stupid mistake.
thanks |
|||
![]() |
|
RedGhost
tom tobias wrote: In my opinion, this syntax is obsolete, developed originally in the 1970's when SPACE SAVINGS was PARAMOUNT. So, to save space, one was obliged to DB, DEFINE BYTE, or, specify the dimension, in bits, of a particular component of a data structure. sorry but i think that is a terrible idea being an assembler programming i often make use of 8,16,32,64bit because i try to be as optimized as possible _________________ redghost.ca |
|||
![]() |
|
FrozenKnight
If you want to start assumeing stuff go learn a programming language like C or C++. ASM is a language where you have full controll over what is going on.
|
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.
Website powered by rwasa.