MIPS汇编语言ascii码转整数的函数

本文分享了一个MIPS汇编语言中将ASCII码转换为整数的函数,适用于处理如命令行参数等场景。通过将ASCII码地址放入$t0寄存器并调用函数,最终$t0将存储转换后的整数值。此外,文中还提及了与此函数相辅相成的整数转ASCII码及整数二进制输出函数。
摘要由CSDN通过智能技术生成

在用MIPS汇编语言进行编程的时候,有时候需要将ascii码转成整数进行操作,比如读取命令行参数的时候。这里给大家提供一个现成的函数供大家使用。

上代码!

toInt:      li    $t1, 0            #t1:offset, t2:true address, t3:10
            li    $t3, 10
            li    $t5, 0            #the sum
            li    $t6, 0            #the flag of positive
            lb    $t4, ($t0)
            bne   $t4, '-', positive
            li    $t6, 1            #the flag of negative
            addi  $t1, $t1, 1       #update the offset
            add   $t2, $t1, $t0     #get true address
            lb    $t4, ($t2)
positive:   addi  $t4, $t4, -48     #get the number in int
            mult  $t5, $t3
            mflo  $t5               #t5 = t5*10
            add   $t5, $t5, $t4
            addi  $t1, $t1, 1       #update the offset
            add   $t2, $t1, $t0     #get true address
            lb    $t4, ($t2)
            bnez  $t4, positive
            nop
            beqz  $t6, saveInt
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值