mips - MIPS 如何直接从文本段中读取。(火星模拟器)
问题描述
我试图计算程序中的 add 和 lw 指令计数,所以我想首先找到指令的地址。我使用标签将它们定位为开始和结束,在开始和结束之间我想计算 add 和 lw 指令。但是,当我尝试在地址处加载值以查看指令寄存器内容时,我得到了错误
Runtime exception at 0x00400048: Cannot read directly from text segment!0x00400020
如何在 $a0 地址加载寄存器内容,我的指令如下所示。
main:
li $t0,1
li $t1,4
li $t2,6
li $t5,0
start:add $t0,$t1,$t2
add $t0,$t5,$t2
add $t3,$t2,$t1
lw $t5,num
lw $t2,test
add $t4,$zero,$t1
end:lw $t4,test2
la $a0,start
la $a1,end
lw $s0,0($a0)
解决方案
推荐阅读
- node.js - Dialogflow NodeJs Fulfillment V2 - webhook 方法调用在完成回调之前结束
- c# - itextsharp:如何在 C# 中将 DataGridView (Templatefield) 导出为 PDF?
- xamarin.forms - 如何在 Xamarin 表单中实现可扩展和可折叠的底栏?
- typescript - 在运算符中使用的 Typescrtip 字符串文字类型
- swift - 如何从 Swift 中的 jsonobject 获取 key:value?
- javascript - p5.js clear() 函数在移动设备和某些浏览器中无法正常工作
- typescript - 提交表单 ionic 2x 后切换到不同的选项卡
- sql - 如何在不带null的情况下给出带有group by的select multiply case语句的结果
- android - Retrofit2 将令牌放入带有占位符的 URL
- java - 在 Chrome 浏览器中。如果您的连接不安全,则身份验证弹出代码无法与 Selenium 一起使用 Java 出现通知