Talk:X86 instruction listings

From Wikipedia, the free encyclopedia

Cleanup Taskforce article This article is being improved by the Cleanup Taskforce to conform with a higher standard of article quality. It is likely to change frequently until completed. Please see its Cleanup Taskforce page for more details.


Contents

[edit] MMX, 3DNow!

wich instructions are integer, wich are floating point, wich are "other"? (similar distinction as in SSE/2/3 lists) Alinor 14:03, 25 February 2006 (UTC)

[edit] missing instructions

Some processors are not mentioned in the "instructions added with" lists:

  • 80187
  • 80487 (actualy 80486 integrated FPU)
  • Athlon64/Opteron in both x86 and x87 lists (CMP...16B is added by EM64T and later Athlon64 revisions, but maybe there are other instructions added with the initial AMD64 revision)
  • Pentium II in x87
  • Pentium M in both x86 and x87 lists

Maybe no new instructions are added with these CPUs, but do someone knows for sure?
Also, there are some CPUs that are not mentioned in some particular lists, but this is OK, because they have not added new instructions there for sure:

  • Pentium III (only SSE are new)
  • Pentium 4 (only SSE2/SSE3/VMX are new)

Anyway it would be good to put a placeholders for each of these CPUs with a "nothing added" mark, so that it is clear that the list is complete. Alinor 14:03, 25 February 2006 (UTC)

[edit] exotic x86 CPUs

there are many more x86 CPU manufacturers. Maybe some of them support some additional instructions. It would be good to at least add a section "Other x86 CPUs - list-stub": Chips and Technologies Super386, Cyrix 386/486/5x86/6x86/6x86MX, Cyrix/NatSemi MediaGX/AMD Geode, VIA Cyrix C3, VIA Centaur C3, IDT Centaur, NEC V10/V20, Rise Technology mP6, SiS SoC, NexGen Nx586/Nx587/K6, Transmeta Cursoe/Efficeon, UMC Super486, SGS-Thomson/IBM/Texas Instruments/others generic manufacturers, ALi/ULi/other embedded designs.

[edit] Actual instructions

I'd like to see this list have actual x86 instruction - like the MIPS page has. Like, with this list, you should be able to learn the assembly. Fresheneesz 18:41, 13 April 2006 (UTC)

The wikipedia site (and encyclopedias in general) isn't an instruction manual or howto, but Wikibooks (a related site) is. Perhaps you'd be interested in wikibooks:X86 Assembly/X86 Instructions? --Interiot 20:09, 13 April 2006 (UTC)
...and the MIPS architecture page does not have the full MIPS instruction set, just a sample of the early R3000 instructions, to give a general idea of the instruction set. Guy Harris 20:43, 13 April 2006 (UTC)
Well, I didn't *mean* a "how to". What I meant was a reference listing. This isn't indiscriminate, how many more people do you think would care about this page if it had actual usable instruction on it? Who the hell cares *what* the names of instructions are, if it doesn't tell you what they do? I believe this page is more of an "indiscriminate colletion of info" as it is, but would be less so if it contained actual instructions.
I'm not talking about a manual, or a how to, or a text book, or anything that would sequentially teach each instruction. I'm talking about a simple list.
As for MIPS, I think the page (or at least *a* page somewhere) should list the full MIPS instruction set - meaning non-pseudo instructions. I've edited that page slightly to list the most basic real instructions - and I think it would be very nice for this page to do the same? Comments again? Fresheneesz 02:00, 14 April 2006 (UTC)

[edit] Good resources to finish listing the instructions.

Firstly, there is the 102 page (yes, I printed it out) appendix b of the NASM manual. Then there is Intel's documentation regarding the Pentium 4 and other specifications. I'm sure that the GNU assembler has some sort of helpful documentation as well, but I haven't checked.

[edit] CPUID

Was CPUID introduced in the 486? This article says that it was, but I think it might have been introduced with the Pentium and not earlier. - Richardcavell 04:17, 3 January 2007 (UTC)

To quote Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 3A: System Programming Guide, Part 1, page 17-6 (the 600th page of the PDF document in question), "The CPUID instruction is available in all Pentium and P6 family processors and in later models of the Intel486 processors. The ability to set and clear the ID flag (bit 21) in the EFLAGS register indicates the availability of the CPUID instruction.", so it was introduced in later 486 models - some had it, some didn't. Guy Harris 09:39, 3 January 2007 (UTC)