0"str1:.ascii "%d%d0"str2:.ascii "The s"og:type" content="webpage">0"str1:.ascii "%d%d0"str2:.ascii "The s" /> 0"str1:.ascii "%d%d0"str2:.ascii "The s"> 求一段完整的MIPS汇编语言,最好是加法的,或者是将输入的数字转换为字符_软件运维_内存溢出

阅读 12

求一段完整的MIPS汇编语言,最好是加法的,或者是将输入的数字转换为字符,第1张

.global main

.data

str0:

.ascii "Input two integers: \000"

str1:

.ascii "%d%d\000"

str2:

.ascii "The sum of %d and %d is %d. \012\000"

add:

addiu $sp, $sp, -12

sw $ra, 8($sp)

sw $fp, 4($sp)

move $fp, $sp

add $v0, $a0, $a1

move $sp, $fp

lw $fp, 4($sp)

lw $ra, 8($sp)

addiu $sp, $sp, 12

j $ra

nop

main:

addiu $sp, $sp, -40

sw $ra, 36($sp)

sw $fp, 32($sp)

move $fp, $sp

la $a0, str0

jal printf

nop

la $a0, str1

addiu $a1, $fp, 28

addiu $a2, $fp, 24

jal __isoc99_scanf

nop

lw $a0, 28($fp)

lw $a1, 24($fp)

jal add

nop

la $a0, str2

lw $a1, 28($fp)

lw $a2, 24($fp)

move $a3, $v0

jal printf

nop

move $sp, $fp

lw $fp, 32($sp)

lw $ra, 36($sp)

addiu $sp, $sp, 40

j $ranopa:      .word  -12 这条指令。是分配一个word类型的空间给变量a,并初始化成-12。其具体的地址,在编程的时候“不知道”。必须在整个

汇编程序汇编完之后,连接,并可能“重定位”,这些变量的地址判坦老才会真正知道。 编译时,

开发工具

通常都会生成类似于“.map”和“.lst”之类的文件信贺,里面会有详细的变量和函数之类的地址信息。具体文件,得查阅MIPS汇编程序开掘升发工具的相关手册(抱歉,我手边没有)。

有问题继续交流,谢谢。

实际上 MinGW 并不是一个 单纯的C/C++ 编译器,而是一套 GNU 工具集合。除开 GCC 以外,MinGW 还包含有一些其他的 GNU 程序开发工具 (比如 gawk bison 等等)。

开发 MinGW 是为了那些不喜欢工作在 Linux(FreeBSD) *** 作系统而留在 Windows 的人提供一套符合 GNU 的 GNU 工作碧巧环境。

所以,使用 MinGW 我们就可以像在 Linux 下一样使用 GNU 程序开发工具。


GCC 就是 MinGW 的核悔汪键心所在,GCC 是一套支持众多计算机程序语言的编译系统,而且在语言标准的实现上是最接近于标准的。并陵歼且 GCC

几乎可以移植到目前所有可用的计算机平台。(我的电脑上就还装有 DevKitPro,里面包含

欢迎分享,转载请注明来源:内存溢出

原文地址:
http://outofmemory.cn/yw/12246446.html地址
我的
(0) 微信扫一扫 打赏 支付宝扫一扫 微信扫一扫
支付宝扫一扫
format函数 format函数
c++中的ATL是用来干什么的?
上一篇
2023-05-22
怎样设置WIN7桌面上图标归类的小格子?
2023-05-22

发表评论 后才能评论
提交

评论列表(0条)

2022-5-23

兑美元
出招表
保存{label} {label} {label} {label}