【问题标题】:use python to simulate sending user input to spim使用python模拟发送用户输入到spim
【发布时间】:2020-06-04 02:50:41
【问题描述】:

我正在尝试用 python 编写一个可以运行的程序 SPIM 并将用户输入发送到 SPIM 子程序

我尝试过使用

mips=subprocess("spim",stdin=PIPE, stdout=output.txt, stderr=output.txt)
mips.stdin.write(b"10")
mips.stdin.write(b"15")
mips.stdin.write(b"15")

但它完全跳过了等待用户输入

这是 mips 子例程应该做的事情

enter first value: 10
enter second value: 15
enter third value: 15
your Sum is: 40

当我从终端调用它并自己输入值时,它可以正常工作,但是如果我将它作为子进程运行,它会打印以下内容

enter first value: 
enter second value: 
enter third value: 
your Sum is: 101515

spim 执行完成后,101515 似乎正在打印

如何以编程方式将值输入到 spim 虚拟机中

如果它有帮助 SPIM 是 pts 而不是 tty

【问题讨论】:

    标签: mips mips32 qtspim spim


    【解决方案1】:

    要以编程方式发送输入以旋转,请将值放在文本文件中并通过管道输入

    每个值都换行

    所以如果 mips 提示是

    “输入字符串”

    “输入数字”

    文本文件必须如下所示,每个单独的输入都在自己的行中

    我的字符串输入

    127

    然后在终端输入以下内容

    spim asm-name.s

    【讨论】:

    • 您不必使用输入文件。这就是管道的全部意义所在。
    猜你喜欢
    • 2010-11-22
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 1970-01-01
    • 2018-02-23
    • 1970-01-01
    • 2019-04-27
    相关资源
    最近更新 更多