iced/README.md

32 lines
2.2 KiB
Markdown
Raw Normal View History

2021-03-25 21:03:15 +00:00
# iced [![crates.io](https://img.shields.io/crates/v/iced-x86.svg)](https://crates.io/crates/iced-x86) [![NuGet](https://img.shields.io/nuget/v/iced.svg)](https://www.nuget.org/packages/iced/) [![pypi](https://img.shields.io/pypi/v/iced-x86.svg)](https://pypi.org/project/iced-x86/) [![npm](https://img.shields.io/npm/v/iced-x86.svg)](https://www.npmjs.com/package/iced-x86) [![GitHub builds](https://github.com/icedland/iced/workflows/GitHub%20CI/badge.svg)](https://github.com/icedland/iced/actions) [![codecov](https://codecov.io/gh/icedland/iced/branch/master/graph/badge.svg)](https://codecov.io/gh/icedland/iced)
2018-09-07 20:48:32 +00:00
2018-09-21 19:30:08 +00:00
<img align="right" width="160px" height="160px" src="logo.png">
iced is a blazing fast and correct x86 (16/32/64-bit) instruction decoder, disassembler and assembler.
2020-02-10 19:03:39 +00:00
- 👍 Supports all Intel and AMD instructions
- 👍 Correct: All instructions are tested and iced has been tested against other disassemblers/assemblers (xed, gas, objdump, masm, dumpbin, nasm, ndisasm) and fuzzed
- 👍 Supports .NET, Rust, Python, JavaScript (WebAssembly)
- 👍 The formatter supports masm, nasm, gas (AT&T), Intel (XED) and there are many options to customize the output
- 👍 Blazing fast: Decodes >250 MB/s and decode+format >130 MB/s (Rust, [see here](https://github.com/icedland/disas-bench/tree/a865849deacfb6c33ee0e78f3a3ad7f4c82099f5#results))
- 👍 Small decoded instructions, only 40 bytes and the decoder doesn't allocate any memory
- 👍 Create instructions with code assembler, eg. `asm.mov(eax, edx)`
- 👍 The encoder can be used to re-encode decoded instructions at any address
- 👍 API to get instruction info, eg. read/written registers, memory and rflags bits; CPUID feature flag, control flow info, etc
- 👍 License: MIT
2018-09-05 23:29:23 +00:00
2021-03-22 11:22:17 +00:00
# Examples
2021-01-26 16:51:12 +00:00
- Rust: [README](https://github.com/icedland/iced/blob/master/src/rust/iced-x86/README.md)
2021-03-22 11:22:17 +00:00
- .NET: [README](https://github.com/icedland/iced/blob/master/src/csharp/Intel/README.md)
2021-01-26 16:51:12 +00:00
- Python: [README](https://github.com/icedland/iced/blob/master/src/rust/iced-x86-py/README.md)
- JavaScript + WebAssembly: [README](https://github.com/icedland/iced/blob/master/src/rust/iced-x86-js/README.md)
2020-02-10 19:03:39 +00:00
2018-09-07 19:33:05 +00:00
# License
2018-09-05 23:29:23 +00:00
MIT
2018-09-21 19:30:08 +00:00
2018-12-26 15:00:56 +00:00
# Icon
2018-09-21 19:30:08 +00:00
Logo `processor` by [Creative Stall](https://thenounproject.com/creativestall/) from the Noun Project