mirror of
https://github.com/tgrysztar/fasm
synced 2026-08-26 00:23:06 -04:00
release 1.71.03
This commit is contained in:
parent
90c5a8c5ad
commit
55d78c88a6
5 changed files with 15 additions and 6 deletions
9
FASM.TXT
9
FASM.TXT
|
|
@ -438,12 +438,15 @@ the least significant byte of number.
|
|||
The numerical expression used as an address value can also contain any of
|
||||
general registers used for addressing, they can be added and multiplied by
|
||||
appropriate values, as it is allowed for the x86 architecture instructions.
|
||||
The numerical calculations inside address definition by default operate with
|
||||
target size assumed to be the same as the current bitness of code, even if
|
||||
generated instruction encoding will use a different address size.
|
||||
There are also some special symbols that can be used inside the numerical
|
||||
expression. First is "$", which is always equal to the value of current
|
||||
offset, while "$$" is equal to base address of current addressing space. The
|
||||
other one is "%", which is the number of current repeat in parts of code that
|
||||
are repeated using some special directives (see 2.2). There's also "%t"
|
||||
symbol, which is always equal to the current time stamp.
|
||||
are repeated using some special directives (see 2.2) and zero anywhere else.
|
||||
There's also "%t" symbol, which is always equal to the current time stamp.
|
||||
Any numerical expression can also consist of single floating point value
|
||||
(flat assembler does not allow any floating point operations at compilation
|
||||
time) in the scientific notation, they can end with the "f" letter to be
|
||||
|
|
@ -475,7 +478,7 @@ while simple "1" defines an integer value.
|
|||
|
||||
The operand of any jump or call instruction can be preceded not only by the
|
||||
size operator, but also by one of the operators specifying type of the jump:
|
||||
"short", "near" of "far". For example, when assembler is in 16-bit mode,
|
||||
"short", "near" or "far". For example, when assembler is in 16-bit mode,
|
||||
instruction "jmp dword [0]" will become the far jump and when assembler is
|
||||
in 32-bit mode, it will become the near jump. To force this instruction to be
|
||||
treated differently, use the "jmp near dword [0]" or "jmp far dword [0]" form.
|
||||
|
|
|
|||
|
|
@ -511,7 +511,7 @@ org_directive:
|
|||
mov [ebx+9],cl
|
||||
mov cl,[value_sign]
|
||||
sub [ebx],eax
|
||||
sbb [ebx],edx
|
||||
sbb [ebx+4],edx
|
||||
sbb byte [ebx+8],0
|
||||
jp org_value_ok
|
||||
call recoverable_overflow
|
||||
|
|
|
|||
|
|
@ -49,4 +49,4 @@ _setting_already_specified db 'setting already specified',0
|
|||
_data_already_defined db 'data already defined',0
|
||||
_too_many_repeats db 'too many repeats',0
|
||||
_invoked_error db 'error directive encountered in source file',0
|
||||
_assertion_failed db 'assertion failed',0
|
||||
_assertion_failed db 'assertion failed',0
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
; cannot simply be copied and put under another distribution licence
|
||||
; (including the GNU Public Licence).
|
||||
|
||||
VERSION_STRING equ "1.71.02"
|
||||
VERSION_STRING equ "1.71.03"
|
||||
|
||||
VERSION_MAJOR = 1
|
||||
VERSION_MINOR = 71
|
||||
|
|
|
|||
|
|
@ -2,6 +2,12 @@
|
|||
Visit http://flatassembler.net/ for more information.
|
||||
|
||||
|
||||
version 1.71.03 (Sep 27, 2012)
|
||||
|
||||
[-] Fixed a bug in "org" directive introduced by recent changes, which
|
||||
was manifesting with bases larger than 31-bit.
|
||||
|
||||
|
||||
version 1.71.02 (Sep 26, 2012)
|
||||
|
||||
[-] Expression calculator now allows to calculate the difference of
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue