#include <stdio.h>
int sum (int L, int U) {
if (L == U) return L;
else {
int lower, upper;
int mid = (U+L)/2;
lower = sum (L, mid);
upper = sum(mid+1, U);
return (lower+upper);
}
}
int main(){
int x,y;
scanf("%d %d",&x,&y);
printf("The result is: %d\n",sum(x,y));
}
-1
A
回答
2
我会屈服于讽刺的诱惑和发布此:
.file 1 "hello.c"
.section .mdebug.abi32
.previous
.gnu_attribute 4, 1
.text
.align 2
.globl sum
.set nomips16
.ent sum
.type sum, @function
sum:
.frame $sp,40,$31 # vars= 16, regs= 1/0, args= 16, gp= 0
.mask 0x80000000,-4
.fmask 0x00000000,0
.set noreorder
.set nomacro
addiu $sp,$sp,-40
sw $31,36($sp)
sw $4,40($sp)
sw $5,44($sp)
lw $3,40($sp)
lw $2,44($sp)
nop
bne $3,$2,$L2
nop
lw $2,40($sp)
j $L3
nop
$L2:
lw $3,44($sp)
lw $2,40($sp)
nop
addu $2,$3,$2
srl $3,$2,31
addu $2,$3,$2
sra $2,$2,1
sw $2,16($sp)
lw $4,40($sp)
lw $5,16($sp)
jal sum
nop
sw $2,20($sp)
lw $2,16($sp)
nop
addiu $2,$2,1
move $4,$2
lw $5,44($sp)
jal sum
nop
sw $2,24($sp)
lw $3,20($sp)
lw $2,24($sp)
nop
addu $2,$3,$2
$L3:
lw $31,36($sp)
addiu $sp,$sp,40
j $31
nop
.set macro
.set reorder
.end sum
.size sum, .-sum
.rdata
.align 2
$LC0:
.ascii "%d %d\000"
.align 2
$LC1:
.ascii "The result is: %d\012\000"
.text
.align 2
.globl main
.set nomips16
.ent main
.type main, @function
main:
.frame $sp,32,$31 # vars= 8, regs= 2/0, args= 16, gp= 0
.mask 0x80010000,-4
.fmask 0x00000000,0
.set noreorder
.set nomacro
addiu $sp,$sp,-32
sw $31,28($sp)
sw $16,24($sp)
lui $2,%hi($LC0)
addiu $3,$2,%lo($LC0)
addiu $2,$sp,20
move $4,$3
addiu $3,$sp,16
move $5,$3
move $6,$2
jal scanf
nop
lui $2,%hi($LC1)
addiu $16,$2,%lo($LC1)
lw $3,16($sp)
lw $2,20($sp)
move $4,$3
move $5,$2
jal sum
nop
move $4,$16
move $5,$2
jal printf
nop
lw $31,28($sp)
lw $16,24($sp)
addiu $sp,$sp,32
j $31
nop
.set macro
.set reorder
.end main
.size main, .-main
.ident "GCC: (GNU) 4.5.2"
这是由GCC交叉编译器我刚刚建立了MIPS-linux的小精灵制作目标,使用以下命令行:
mips-linux-elf-gcc -fomit-frame-pointer -S hello.c
由于您使用的是Windows,你应该谷歌搜索类似mips cross-compiler for windows
。
你究竟想做什么?
相关问题
- 1. 编译C代码到MIPS汇编
- 2. 将C代码转换为MIPS汇编
- 3. 理解MIPS汇编代码
- 4. 转换C代码,以MIPS(汇编源代码)
- 5. 如何反汇编原始MIPS代码?
- 6. C++汇编代码
- 7. C至MIPS汇编语言
- 8. 将C代码转换为MIPS汇编语言与数组
- 9. 需要将VC++ 6.0下的c代码转换为MIPS汇编
- 10. 汇编&C - 翻译C'S代码汇编
- 11. 写汇编代码的C++
- 12. 从c反汇编代码#
- 13. C++代码中的汇编代码
- 14. 从C#代码生成汇编代码?
- 15. 汇编代码到C代码
- 16. MIPS汇编语言
- 17. 优化MIPS汇编
- 18. 学习MIPS汇编
- 19. MIPS汇编特点
- 20. MIPS汇编语言
- 21. mips汇编问题
- 22. 将C翻译成MIPS汇编
- 23. 转换一个C函数MIPS汇编
- 24. Mips汇编语言转换C条件
- 25. 将C++转换为MIPS汇编
- 26. 汇编代码
- 27. 反汇编C代替操作代码
- 28. MIPS Linux的汇编代码,了解有关负载字节
- 29. 翻译MIPS汇编为机器代码:BNE
- 30. 添加位x32 mips汇编
什么问题? – 2011-03-22 12:12:30
我认为他希望我们手动将它编译成MIPS。 :P – 2011-03-22 12:13:30
使用C编译器,这是他们设计的目的。 – Lindydancer 2011-03-22 12:14:15