penEuler操作系统结合豆包测试github仓库8086-Emulator项目

penEuler操作系统结合豆包测试github仓库8086-Emulator项目

8086-Emulator项目:https://github.com/YJDoc2/8086-Emulator

申请空间

首先在华为开发者空间申请一个免费云主机(penEuler操作系统):https://huaweicloud.csdn.net/

豆包提问如何使用

打开豆包:https://www.doubao.com/

选择技能->AI编程->Github仓库,输入:https://github.com/YJDoc2/8086-Emulator,提问词:如何使用这个仓库?,得以下信息。

这个仓库是一个 Intel 8086 模拟器/虚拟机项目,下面从安装、作为依赖使用、命令行使用等方面介绍其使用方法:

安装

由于该项目未发布到 crates.io,可以使用以下命令进行安装:

sh 复制代码
cargo install --git https://github.com/YJDoc2/8086-Emulator.git

安装完成后,名为 emulator_8086 的程序会被安装到 PATH 环境变量包含的目录中,你可以直接运行该程序。

命令行使用

shell 复制代码
USAGE:
emulator_8086 [FLAGS] [file_path]

FLAGS:
-h, --help Prints help information
-i, --interpreted To run in interpreted mode
-V, --version Prints version information

ARGS:
<file_path> Input assembly file path
  • file_path:这是一个必需的参数,指定要运行的汇编文件的路径。
  • 解释模式(-i 标志):启用解释模式后,在每条指令执行前会出现一个用户提示,允许你打印标志位、寄存器和内存信息,可用于调试。
  • 注意 :如果你不想在每个命令后都进行检查,而只是在特定命令前后检查,可以使用 int 3,具体语法在 syntax.md 中说明。
用户提示支持的命令
  • n/next:继续执行指令。
  • q/quit:退出程序。
  • 打印语句 :允许打印标志位、寄存器和内存位置,语法与汇编文件中的打印语句相同,具体在 syntax.md 中说明。

另一种触发用户提示的方法是设置陷阱标志(trap flag),在这种情况下,只要陷阱标志被设置,每条指令执行前都会显示提示。

示例代码

仓库的 examples 目录下包含了多个 8086 汇编程序的示例,你可以使用这些示例来测试和学习。例如,你可以使用以下命令运行一个示例文件:

sh 复制代码
emulator_8086 examples/addition.s

根据提示需要安装cargo,进行下一步搜索

豆包提问Rust 语言的包管理工具安装

豆包继续提问,提示词:linux Rust 安装 cargo,得以下信息。

在 Linux 系统中,Rust 语言的包管理工具 cargo 通常会随着 Rust 一起安装。以下是详细的安装步骤:

1. 使用 rustup 安装 Rust 和 cargo

rustup 是 Rust 的官方版本管理工具,借助它能轻松安装 Rust 和 cargo

安装 rustup

在终端里输入以下命令来下载并运行 rustup 的安装脚本:

bash 复制代码
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

运行上述命令之后,安装脚本会给出一系列提示,你可以选择默认配置,直接按回车键即可。脚本会自动下载并安装 Rust 开发环境,其中就包含 cargo

配置环境变量

安装完成后,你需要重新加载环境变量,或者重新打开终端,这样新的环境变量才能生效。你也可以手动运行以下命令来加载环境变量:

bash 复制代码
source $HOME/.cargo/env

2. 验证安装

安装完成之后,你可以通过以下命令来验证 cargo 是否安装成功:

bash 复制代码
cargo --version

若安装成功,终端会显示 cargo 的版本信息。

其他注意事项

  • 网络问题:由于安装过程中需要从网络下载文件,要是你遇到网络问题,可以考虑使用代理或者选择合适的镜像源。

按照上述步骤操作,你就能在 Linux 系统上成功安装 cargo 了。

在云主机下操作(penEuler操作系统)

penEuler操作系统的Linux命令https://blog.csdn.net/weixin_40220242/article/details/144388125?spm=1011.2415.3001.5331

安装过程

打开终端模拟器分别输入以下命令。

bash 复制代码
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

默认安装按回车键就行

bash 复制代码
source $HOME/.cargo/env
bash 复制代码
cargo --version
sh 复制代码
cargo install --git https://github.com/YJDoc2/8086-Emulator.git
sh 复制代码
emulator_8086 -h

出现以下提示就是安装成功了

shell 复制代码
USAGE:
emulator_8086 [FLAGS] [file_path]

FLAGS:
-h, --help Prints help information
-i, --interpreted To run in interpreted mode
-V, --version Prints version information

ARGS:
<file_path> Input assembly file path

测试过程

打开该目录home/developer/.cargo/git/checkouts/8086-emulator-f903af806e004ebe/dc9f831/examples/

把该目录下的测试文件拷贝到目录home/developer/下

执行命令看测试结果

复制代码
emulator_8086 hello_world.s
复制代码
emulator_8086 addition.s
复制代码
emulator_8086 data_transfer.s

emulator_8086 factorial.s

emulator_8086 interrupt.s
相关推荐
小和尚敲木头24 分钟前
krpano 字符串拼接,传参。
java·linux·前端
tanyyinyu1 小时前
Python函数参数详解:从位置参数到灵活调用的艺术
运维·开发语言·python
国际云,接待1 小时前
阿里云无影云桌面深度测评
运维·服务器·阿里云·云原生·云计算
#君君#1 小时前
解决 Ubuntu 20.04 虚拟机中 catkin_make 编译卡死问题
linux·运维·ubuntu
IT布道1 小时前
强制卸载openssl-libs导致系统异常的修复方法
linux·运维·服务器
太空1号1 小时前
飞腾D2000,麒麟系统V10,docker,ubuntu1804,小白入门喂饭级教程
linux·c++·docker
偶尔的鱼1 小时前
AI Agent 框架大盘点:Coze、Dify 到 LangChain,哪款是你的菜?
前端·github·ai编程
秦jh_2 小时前
【Linux网络】传输层TCP协议
linux·运维·服务器·网络·网络协议·tcp/ip
liux35282 小时前
彻底掌握 Containerd:生产环境安装部署全解析
运维·docker·容器
霖檬ing2 小时前
Nginx+Tomcat负载均衡
运维·nginx·tomcat