assembly - 汇编程序(在 MARIE 中),如何填写第一遍和第二遍?
问题描述
我真的做了 sympol 表并且填充它很容易,但是代码有很多错误,比如重复无效和值 var1、var2 和 res,其中没有 HEX 或 DEC 的数据类型等。所以要填写什么真的很混乱
有什么帮助吗?
解决方案
你是对的:Repeat
没有定义,所以从技术上讲,问题无法完成。可能是一个错字,他们打算使用正确定义的标签Again
而不是Repeat
. 建议您继续进行该假设,并尽可能在您上交的工作中明确说明此类假设。
post-first-pass 表显示操作码和操作数,虽然第一个操作数以数字形式显示,但第二个操作数在必要时以符号方式显示(或者如果已知,则以数字形式显示,例如对于 SkipCond,因为操作数已经是数字)。
所以,对于第一条指令,我们有1, Var1
,它是机器码指令的表示,其中操作码是1
( Load
),操作数是Var1
。
当我们到达 post-second-pass 表时,符号操作数(作为名称)被替换为处理器在执行该程序时将看到的数值。在许多情况下,这些名称的数值直到第一遍完成后才知道,这将给标签提供数字。所以,在第二遍之后,现在我们有了程序机器代码的完整数字表示。
推荐阅读
- javascript - 调整高度由 ng-if 指令动态生成的标签
- javascript - 分离 var app = new Vue({}); 到另一个 app.js
- java - 使用 BottomNavigationView 在它们之间切换时保留片段状态
- amazon-web-services - AWS 中托管的两个应用程序
- google-oauth - 与 Google Actions 帐户关联的自定义错误消息?
- objective-c - 如何使用 completionHandlers 等待多个函数?
- c# - C# WPF 将带有复选框的 json 数据绑定到列表框中
- angular - 导航到第一个孩子时触发父路由 OnInit
- snakemake - 包含多个蛇文件
- node.js - 发出类型声明的最有效方法是什么?