List of all the instructions made available by the MASM macro assembler

Started by ToanBao122, October 25, 2020, 10:58:19 PM

Previous topic - Next topic

ToanBao122

Hi everyone, do you know any references where I could find all the instructions/operators, directives, reserved words, that are made available by the MASM macro assembler? Specifically, it points out if an instruction is of type x86(or macro, or directive) and whether or not those instructions are signed or unsigned. Thank you!

hutch--

Your best choice for Intel mnemonics is the Intel manuals, they are hard going until you get the swing of them but they are the real McCoy in terms of technical data. 32 bit MASM can do just about all of them as long as you are using a recent version of 32 bit MASM.

TouEnMasm

Fa is a musical note to play with CL


Vortex

Hi ToanBao122,

Also, you can check the manuals coming with the Masm32 package, they are in the \masm32\help folder.


ToanBao122


jj2007

Instructions are not signed or unsigned. Some instructions set flags (including the Sign? flag), and based on the flags the j?? instructions behave differently.

mineiro

hello sir ToanBao122;
first, you need check your own processor and deal with that, first is ego. After, try compatibility, others.
You can take all processor instructions from manuals of processor designers; so, intel, amd, others, ... . This does not means that your assembler supports all of that, ... .
When you change from the ground, this will make more sense.
If you're talking of pc computers, check intel board too, amd board too , ..., you can even see persons sugesting new instructions that after can be concrete, ... .
I'd rather be this ambulant metamorphosis than to have that old opinion about everything

mineiro

If you have a 1 bit processor, so that implies that's unsigned.
If you have a 2 bit processor, that implies thats can be unsigned or signed.
As you can perceive, we need 1 bit that tell us if thats signed or unsigned.
Your questions means about flags, this is whats instructions do when dealing in that context.
You can also forgot about signed and do things by hands, so you need deal with signals, range by hands.
Signed means reserve one bit to me in this range, so I can check left most bit in that range that and do some actions.
I prefer think in unsigned everytime.
Signed things use a logic thas was forgoteen(ignored) for a long time until come in scene, 2 complement, or if you prefer, reserve one bit in that range to sign. Not like this because involves boolean logic, but in easy words, "not that and add one". This "add one"(arithmetic) is logic too, so, only logic.
I'd rather be this ambulant metamorphosis than to have that old opinion about everything

LiaoMi

Quote from: ToanBao122 on October 25, 2020, 10:58:19 PM
Hi everyone, do you know any references where I could find all the instructions/operators, directives, reserved words, that are made available by the MASM macro assembler? Specifically, it points out if an instruction is of type x86(or macro, or directive) and whether or not those instructions are signed or unsigned. Thank you!

Hi ToanBao122,

everything you need is here
https://docs.microsoft.com/en-us/cpp/assembler/masm/microsoft-macro-assembler-reference?view=vs-2019
https://software.intel.com/content/dam/develop/public/us/en/documents/325462-sdm-vol-1-2abcd-3abcd.pdf

DebugBSD

Quote from: ToanBao122 on October 25, 2020, 10:58:19 PM
Hi everyone, do you know any references where I could find all the instructions/operators, directives, reserved words, that are made available by the MASM macro assembler? Specifically, it points out if an instruction is of type x86(or macro, or directive) and whether or not those instructions are signed or unsigned. Thank you!

In my case, I use this: https://www.felixcloutier.com/x86/
It's a webpage based on the PDF manuals from Intel.

The good thing about this is that, you could configure your favourite IDE so when you press F1 on one of the instructions,  the IDE goes to the web site with something like: https://www.felixcloutier.com/x86/<instruction>

Example: https://www.felixcloutier.com/x86/movaps

I use it a lot in my IDE and it's quite useful.

Have a nice day
Guille!
Happy Hacking!

jj2007

My F1 key is configured for Win32.hlp, but if I select e.g. movups and go to the help menu, I see some milliseconds later the help file posted here.

jj2007

And when I type e.g. sub*-- in the find box, I get this selection. Most people will never need such detail, though.

DebugBSD

Quote from: jj2007 on November 01, 2020, 10:52:06 PM
My F1 key is configured for Win32.hlp, but if I select e.g. movups and go to the help menu, I see some milliseconds later the help file posted here.

That's amazing jj!
Happy Hacking!