#isa #instructions #gpcas #architecture #simulator #interface #set

gpcas_isa

GPCAS ISA 实现的接口和实用工具

10 个版本 (5 个重大更改)

0.6.1 2022 年 10 月 28 日
0.6.0 2022 年 9 月 1 日
0.5.0 2022 年 8 月 17 日
0.4.0 2022 年 1 月 25 日
0.1.1 2021 年 7 月 9 日

#160模拟器


用于 4 crate

LGPL-3.0-or-later

57KB
886

GPCAS isa crate

此 crate 提供了一个接口,用于在 GPCAS 中实现支持的 ISAs(指令集架构)。GPCAS 代表通用核心架构模拟器,是 CPU 模拟器。

每个 ISA 都必须提供一个能够执行该 ISA 程序的模拟器,以及一些额外的属性。

示例

为了正确与模拟器交互,ISA 应该按照如下方式提供其信息

extern crate gpcas_isa;
use gpcas_isa::{Isa, MemoryAccessType};

pub fn get_isa(executable_data: Vec<u8>) -> Isa {
    Isa {
        emulator: Box::new(YourEmulator::new(executable_data)),
        memory_access_type: MemoryAccessType::LoadStore,
        general_purpose_register_count: 16,
        vector_register_count: 0,
        special_register_count: 0,
        instruction_word_alignment: 1,
        max_instruction_len: 2,
    }
}

许可证

gpcas_isa 根据 LGPLv3 许可证分发。请参阅 crate 根目录中的 COPYINGCOPYING.LESSER

无运行时依赖