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
相关推荐
花小璇学linux19 分钟前
imx6ull-驱动开发篇24——Linux 中断API函数
linux·驱动开发·嵌入式软件
程序媛Dev1 小时前
还在 SSH 连服务器敲 SQL?我用 Sealos 把数据库管理后台搬进了浏览器!
开源·github
林开落L1 小时前
库制作与原理(下)
linux·开发语言·centos·库制作与原理
wxy3191 小时前
嵌入式LINUX——————TCP并发服务器
java·linux·网络
Castamere1 小时前
配置 Linux 终端 (zsh)
linux
杭州泽沃电子科技有限公司2 小时前
告别翻山越岭!智能监拍远程守护输电线路安全
运维·人工智能·科技·安全
小韩博3 小时前
metasploit 框架安装更新遇到无法下载问题如何解决
linux·网络安全·公钥·下载失败
长臂人猿3 小时前
JVM常用工具:jstat、jmap、jstack
linux·运维·jvm
轻松Ai享生活3 小时前
揭秘 linux:一张图看懂系统配置的核心
linux
猫头虎3 小时前
猫头虎AI分享|一款Coze、Dify类开源AI应用超级智能体Agent快速构建工具:FastbuildAI
人工智能·开源·github·aigc·ai编程·ai写作·ai-native