首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >LC3模拟器是否在结束后继续?

LC3模拟器是否在结束后继续?
EN

Stack Overflow用户
提问于 2012-11-11 08:55:05
回答 1查看 1.4K关注 0票数 1

我正在使用麦格劳-希尔的LC3模拟器来编写一些LC3汇编代码。出于某些原因,无论我如何编写代码,它都会继续通过我的.END调用,并最终更改我的寄存器。我是不是遗漏了什么?

最新代码:

代码语言:javascript
运行
复制
.ORIG x3000

BR MAIN

;;value to square
SquareVal .FILL x04


MAIN   
    LD R1, SquareVal 
    AND R0, R0, #0
    ADD R0, R0, R1  
    AND R3, R3, #0
    LD R3, SquareVal
    BR SQUARE_CONT

SQUARE_VAL  
    ADD R0, R0, R1
    BR SQUARE_CONT  


SQUARE_CONT 
    ADD R3, R3, #-1
    BRp SQUARE_VAL
    HALT

.END
EN

回答 1

Stack Overflow用户

发布于 2012-11-11 21:43:29

首先,确保您的模拟器加载了操作系统代码。HALT是一个系统陷阱,所以它需要操作系统。此外,这也意味着操作系统处理程序将更改您的寄存器。如果你不能做到这一点,你可以在用户模式(STOP: BR STOP)中进行无限循环。

.END只表示源文件的结束,它对执行没有任何影响。

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

https://stackoverflow.com/questions/13327624

复制
相关文章

相似问题

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