flat assembler
Message board for the users of flat assembler.

Index > Compiler Internals > About FSAVE encoding

Author
Thread Post new topic Reply to topic
hopcode



Joined: 04 Mar 2008
Posts: 563
Location: Germany
hopcode 16 Jan 2010, 11:54
After reading this,
http://board.flatassembler.net/topic.php?t=5287
i find it ok the reason, because of Fasm basic data types as definded in the manual. For FSAVE, for example
Code:
super_data db 94 dup (0) ; or 108
super_pointer:
     db 94 dup (0)

   FSAVE [super_pointer] ;ok
   FSAVE [super_data]    ;err invalid operand
    

but,as you know,for example,
Code:
  FSAVE [EAX] ;ok
  FSAVE [EBP*4+EAX] ;ok
 ; ... etc... ok
    

because,actually, after having been opcoded, all of the (16/32) 256 type of MOD/RM could be used,(excluded MOD=11 i guess) depending only on the actual operand size

So, i had been thinking for a while..., Very Happy
why not simply
Code:
  FSAVE super_data
    

it is to say, avoiding type-checking in the declaration of super_data, because it is always implicitly depending on the operand size 66 or not 66 ?
Very Happy
Greetings,
hopcode
Post 16 Jan 2010, 11:54
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.