- Aug 12, 2014
- 522
- 3
- 81
Hi everyone,
OK, so because I'm an OCD madman, I'm reading every page of the Intel 64 and IA-32 Architectures Software Developer’s Manual Combined Volumes 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, and 3D.
I'm on page 1,000 (only 3,618 pages to go!), and I'm in the middle of the 2nd volume, specifically the part where every instruction is detailed.
I've noticed that modern Intel platforms have a TON of instructions.
Do modern x86-64 assemblers have to understand every single one?
Many instructions are extremely esoteric and narrow in focus.
For example, many of the SIMD instructions do things like take the vectors in some YMM register and move them around or add some scalar to them.
Obviously, the basic instructions e.g. mov, add, etc. need to be assembled.
But I'm beginning to think that it might be prohibitively complicated to write an assembler that can assemble every single one.
OK, so because I'm an OCD madman, I'm reading every page of the Intel 64 and IA-32 Architectures Software Developer’s Manual Combined Volumes 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, and 3D.
I'm on page 1,000 (only 3,618 pages to go!), and I'm in the middle of the 2nd volume, specifically the part where every instruction is detailed.
I've noticed that modern Intel platforms have a TON of instructions.
Do modern x86-64 assemblers have to understand every single one?
Many instructions are extremely esoteric and narrow in focus.
For example, many of the SIMD instructions do things like take the vectors in some YMM register and move them around or add some scalar to them.
Obviously, the basic instructions e.g. mov, add, etc. need to be assembled.
But I'm beginning to think that it might be prohibitively complicated to write an assembler that can assemble every single one.
Last edited: