【问题标题】:Assembly program (in MARIE), How to fill First and second pass?汇编程序(在 MARIE 中),如何填写第一遍和第二遍?
【发布时间】:2021-10-25 17:26:18
【问题描述】:

我确实做了 sympol 表并且填充它很容易,但是代码有很多错误,例如重复无效和值 var1、var2 和 res,其中没有 HEX 或 DEC 的数据类型等。所以要填写什么真的很混乱

Click to see the problem

有什么帮助吗?

【问题讨论】:

  • 你是对的:Repeat 没有定义,所以这个问题无法解决。可能是一个错字,他们打算使用正确定义的标签Again 而不是Repeat。建议您继续进行该假设,并尽可能在您上交的工作中明确说明该假设。
  • @ErikEidt 以及如何填写下表?

标签: assembly marie


【解决方案1】:

你是对的:Repeat 没有定义,所以从技术上讲,这个问题无法解决。可能是一个错字,他们打算使用正确定义的标签Again 而不是Repeat。建议您继续进行该假设,并尽可能在您上交的工作中明确说明此类假设。


post-first-pass 表显示操作码和操作数,虽然第一个操作数以数字形式显示,但第二个操作数在必要时以符号方式显示(或者如果已知,则以数字形式显示,例如 SkipCond,因为操作数是数字已经)。

所以,对于第一条指令,我们有1, Var1,它表示机器码指令,其中操作码为1 (Load),操作数为Var1


当我们到达 post-second-pass 表时,符号操作数(作为名称)被替换为处理器在执行该程序时将看到的数值。在许多情况下,这些名称的数值直到完成第一次传递后才知道,这为标签提供了数字。所以,在第二遍之后,现在我们有了程序机器代码的完整数字表示。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-30
    • 1970-01-01
    • 1970-01-01
    • 2021-06-03
    相关资源
    最近更新 更多