Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Database for assembly instructions?

I'm looking for a up-to-date database (machine readable) containing information of assembly instructions. Capstone does some info, but it doesn't include descriptions of each instruction.

Intel's Intel Architecture Developer's Manuals (volumes 2A and 2B) does contain it but it's isn't programmatically accessible.

like image 769
Ron Avatar asked Aug 01 '26 14:08

Ron


2 Answers

https://www.felixcloutier.com/x86/ and https://github.com/HJLebbink/asm-dude/wiki are based on (different tweaks to) the same PDF-scrape script to pull info directly from Intel's vol.2 PDF (and / or their "future extensions PDF"). Specifically, https://github.com/HJLebbink/asm-dude/tree/master/VS/Python/intel-doc-2-md for the asm-dude Github.

Actually, the asm-dude repo includes AsmDudeData.xml which might be directly useful. (Apparently "asm-dude" is a plugin for Visual Studio. I've only looked at the repo for its wiki which includes an up-to-date html scrape including future-extensions instructions like ENQCMD


More of an actual database / table, Intel's XED (X86 Encoder Decoder) library comes with an XML of all instructions, including how their operands work. It's what uops.info uses as a basis for automated microbenchmarking of every form of every instruction, plus some manual test-cases for some instructions known to have special effects. Uops.info's page has the current instructions.xml and some info about how they use it.

Andreas Abel, creator of uops.info, has also posted https://github.com/andreas-abel/XED-to-XML - a tool to convert XED's database to XML.

like image 72
Peter Cordes Avatar answered Aug 03 '26 17:08

Peter Cordes


It's better then nothing.

Here's a XML It's from Intel but used in a webapp https://software.intel.com/sites/landingpage/IntrinsicsGuide If the link is dead, check where it gets the newer version from the page from your the network debugger in your browser

like image 32
Ron Avatar answered Aug 03 '26 17:08

Ron



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!