flat assembler
Message board for the users of flat assembler.
  
       
      Index
      > Compiler Internals > About fasm coding ADD AL,CL  with 02C1 | 
  
| Author | 
  | 
              
| 
                  
                   MazeGen 29 Jun 2009, 08:06 
                  If I'm not wrong, you can't force fasm to encode ADD AL, CL as 02C1. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   Tomasz Grysztar 29 Jun 2009, 09:59 
                  Yes. This is sometimes used as a kind of "footprint" to determine, which assembler was used to assemble the code. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   hopcode 16 Jan 2010, 08:22 
                  Tomasz Grysztar wrote: ...a kind of "footprint" to determine, which assembler was used... Is there no way to change/personalize opcode generation without using macros with fasm ? That is very boring, and it is not possible that for a stupid virus f****d Am i asking too much /unreal things ? Thanks in advance, hopcode  | 
              |||
                  
  | 
              
| 
                  
                   ouadji 02 Mar 2010, 22:28 
                  sorry, but i don't understand the problem 00 C8 = ADD AL,CL and 02 C8 = ADD CL,AL no ?  | 
              |||
                  
  | 
              
| 
                  
                   ass0 03 Mar 2010, 00:26 
                  Yeah I don't understand too.
 
                  This means 00 C8 == 02 C8? How many ways there are to leave a "footprint" for this instruction? _________________  
Nombre: Aquiles Castro. Location2: about:robots  | 
              |||
                  
  | 
              
| 
                  
                   revolution 03 Mar 2010, 01:19 
                  ouadji wrote: 
 00 C8 == 02 C1 Both encode add al,cl  | 
              |||
                  
  | 
              
| 
                  
                   ass0 03 Mar 2010, 01:41 
                  Oh thanks, i misspelled "02 C8" i meant "02 C1".
 
                  But why three values (add, al, cl) are encoded like that?, Is it a "bit vector" encoding? 0xc8 == 0b11001000 0xc1 == 0b11000001 _________________  
Nombre: Aquiles Castro. Location2: about:robots  | 
              |||
                  
  | 
              
| 
                  
                   revolution 03 Mar 2010, 02:09 
                  ass0: Have a look at the Intel/AMD manuals to see the encoding formats. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   ass0 03 Mar 2010, 02:37 
                  OK, merci. 
                  _________________  
Nombre: Aquiles Castro. Location2: about:robots  | 
              |||
                  
  | 
              
| 
                  
                   ouadji 03 Mar 2010, 08:59 
                  Quote: No. not 00C8/02C8 ... but 00C8/02C1 ! I checked it, indeed both encode "add al,cl". thanks revolution.  | 
              |||
                  
  | 
              
< Last Thread | Next Thread >  | 
    
Forum Rules: 
  | 
    
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.