programming tools for Windows applications development
  Home  |   SwiftForth Archive  |   SwiftX Archive  |

asm disasm disagreement REVISITED

From: Maristela Nunes Knowles <bigben_at_planetarium.com.br>
Date: Mon, 5 May 2003 02:38:54 -0300

REVISITED (I wrote a while ago; I finally got back to it)

The assembler and disassembler DEFINITELY disagree about the following:

CODE XFDIV

 0 [EBX] DWORD FDIV

RET END-CODE

CODE XFDIVR

 0 [EBX] DWORD FDIVR

RET END-CODE

SEE XFDIV

476A7F 0 [EBX] FDIVR D83B

476A81 RET C3 ok

  ok

SEE XFDIVR

476A9F 0 [EBX] FDIV D833

476AA1 RET C3 ok

When I run numbers through the code, the numbers I get back say that the
disassembler is correct. I just happened to be checking the code carefully
for other reasons, and noticed that I got funny numbers, otherwise I might
have trusted what seemed like no-brainer assembly code.

ALSO REVISITED (since it's an assembler "feature" worth mentioning)

A while back I got help from Leon Wagner [leon_at_forth.com] for the following:

. I thought I should be able to do a 2 # AL SHL but when I do a

code zzz EBX EAX MOV 2 # AL SHL EAX EBX MOV RET END-CODE it assembles with
no errors, but when I run it I get an ACCESS_VIOLATION.

His advice WHICH WAS THAT THE ASSEMBLER NEEDED THE ARGUMENTS IN REVERSE
ORDER worked. I.E. instead of 2 # AL SHL (WHICH CORRESPONDS TO THE RULE OF
THE DESTINATION REGISTER BEING SECOND, AND WHICH THE ASSEMBLER ACCEPTED
WITHOUT AN ERROR MESSAGE) I needed to put in AL 2 # SHL. At least in this
case I got an access violation instead of invisibly bad results.

MHKnowles

----------------------------------------------------------------------
sftalk_at_forth.com The SwiftForth programming discussion email list
To unsubscribe, send subject "unsubscribe" to sftalk-request_at_forth.com
For list command help, send subject "help" to sftalk-request_at_forth.com
Message archives are located at http://www.forth.com/archive/sftalk
----------------------------------------------------------------------
This list is a forum for SwiftForth users. For product support and bug
reports, please send email to support_at_forth.com
----------------------------------------------------------------------
Received on Sun May 04 2003 - 22:47:41 PDT

This archive was generated by hypermail 2.2.0 : Tue Dec 02 2008 - 03:04:32 PST