mips汇编语言之swap函数的优化算法

本文介绍了在MIPS汇编语言中如何优化swap函数,通过不使用临时寄存器的xor算法提高效率。代码示例展示了如何交换两个整数,并提供了测试程序验证效果。
摘要由CSDN通过智能技术生成
在汇编语言中要实现转换两个整数,可使用以下代码:      
         move $t3,  $t1     
         move $t1,  $t2
         move $t2,  $t3
在以下代码中要使用临时寄存器$t3
现在有一种优化算法,可以不使用临时寄存器:
         xor  $t1,  $t1,  $t2
         xor  $t2,  $t1,  $t2
         xor  $t1,  $t1,  $t2
该算法效率更高

测试程序:
##
##################################################
#
####      programed by stevie zou              ###
#        purpose:to swap two values              #
#####    5-15-2008      ######### ################
##

#############  text segment ###############
        .text
         .globl main
main:    la   $t0,  number    #读取两个整数并放入寄存器$t1,$t2
         lw   $t1,  0($t0)
         lw   $t2,  4($t0)

         li   $v0,  4         #打印msg1
         la   $a0,  msg1
         syscall

         li   $v
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值