首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Marie的汇编程序

Marie的汇编程序
EN

Stack Overflow用户
提问于 2015-01-06 02:15:51
回答 1查看 578关注 0票数 1

我想为marie写一个汇编器,但是我一开始就卡住了。我的机器代码必须具有以下格式: FFFF 'first address‘'last addres’'...命令‘

假设我们有一个这样的代码:

代码语言:javascript
复制
LOAD 104
ADD 105
STORE 106
HALT
HEX 23
HEX FFE9
DEC 0

现在,没有办法告诉我们从哪个地址开始,所以我应该一直使用100,或者它有时会改变?

现在,对于最后一个地址,是简单的100+(命令数)吗?

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2015-01-06 05:17:01

现实生活中的汇编器使用元指令(通常称为ORG,它是‘起源’的缩写,例如ORG 100)来指示汇编器从哪个地址开始(或继续,当放在程序中间的某个地方时)。当然,您也可以用另一种方式(硬编码;命令行参数)来解决这个问题。

为MARIE编写的程序的正确地址到底是什么,完全取决于运行时系统(在真实的计算机上,即操作系统;在您的例子中,是一个模拟器)。我看到从100开始的代码示例,所以这是有意义的。也许小于100的地址是为运行时系统保留的,谁知道呢。

从那里开始,汇编程序会自动增加每条指令的地址。对于MARIE,我认为这很简单(只需加1);在现实生活中的处理器中,不同的指令通常具有不同的大小。

对于其余部分,如果您知道如何手动将汇编语言转换为机器代码,那么自动化该过程应该很简单。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27785428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档