#assembly #architecture #decoding #codec #6502

asm

一个用于解码和编码各种架构汇编的 Rust 库

3 个版本 (破坏性更新)

0.3.0 2022年6月11日
0.2.0 2022年2月7日
0.1.0 2022年2月7日

#2225 in 编码

MIT/Apache

40KB
494 代码行

汇编

一个用于解码和编码各种架构汇编的 Rust 库。

目前支持的架构包括

  • 6502

Cargo 功能

每个架构都有一个功能。这允许你只启用你需要的架构。

例如,要启用 6502 支持,可以将以下内容添加到你的 Cargo.toml

[dependencies.asm]
version = "0.1"
features = ["6502"]

示例

解码

use asm::{_6502, Decoder};
let assembly = [0x65, 0x83, 0x31];

let mut decoder = _6502::Decoder::new(&assembly[..]);

println!("{:?}", decoder.decode())

编码

use asm::{_6502, Encoder};
let mut assembly = [0u8; 1];

let mut encoder = _6502::Encoder::new(&mut assembly[..]);

encoder.encode(_6502::Instruction::BRK(_6502::Addressing::Implied(())));

许可

根据您的选择,许可为 Apache License, Version 2.0 或 MIT 许可。
除非您明确表示,否则根据 Apache-2.0 许可证定义的,您有意提交以包含在此软件包中的任何贡献,将根据上述条款双重许可,不附加任何额外条款或条件。

依赖项

~0.4–0.9MB
~20K SLoC