Can I force PoAsm to generate the abs addressing forms of mov al,ax,eax,rax?

Started by PabloMack, March 14, 2019, 11:17:31 PM

Previous topic - Next topic

PabloMack

When I try to assemble

mov     al,[0123456789h]

PoAsm complains: warning: Integer value too large for 32 bits.

Supposedly, the special forms mentioned above can use 64-bit absolute addresses.
PoAsm is apparently not using them.

TimoVJL

May the source be with you

PabloMack

The instructions I am talking about have opcodes A0 ~ A3. You used
different instructions that generate different opcodes:

00000002 48 B8 89 67 45 23 01 00 |            mov     rax, 0123456789h
0000000A 00 00                   |
0000000C 8A 00                   |            mov     al, [rax]

As you can see from the output, the opcodes for the instructions you used
are 48 and 8A. Those are not the instructions I am talking about.  Perhaps
you are meaning to say: "You are right. PoAsm does not support those
instructions and you have to use an alternative way to accomplish the same
thing." What I am trying to do is to understand these instructions with
opcodes A0 ~ A3 as I am writing an assembler to support them. I was
wanting to use PoAsm to verify the correctness of my assembler's output.

TimoVJL

QuoteCan I force PoAsm to generate the abs addressing forms of mov al,ax,eax,rax?
I just gave another way to do that with poasm.
I know just a little about assemblers, but TLPEView with Zydis plugin need some attention from me.
May the source be with you