本文主要是介绍MIPS汇编语言学习笔记06:打印单精度浮点数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
原课程视频:
YouTube原视频(带机翻字幕):https://www.youtube.com/watch?v=m_iQTl9lbQE&list=RDCMUCPZ473Q4kbG98JmL71PgXTA&index=22
哔哩哔哩:国外最火MIPS汇编语言学习视频,有翻译字幕,方便学习_哔哩哔哩_bilibili
代码功能:
打印出一个单精度浮点数(单精度小数)
代码:
lwc1指令与lw指令大致相似,功能都是从内存中加载一个字到寄存器中,也就是将内存中的内容加载到寄存器中。如果不明白lw指令可以参考:MIPS中,lw和la指令有什么区别?
其中,lwc1指令是针对FPU(协处理器),也就是针对浮点数专门拎出来的一条指令。功能与lw一样。
# 这里要注意,浮点数会进入协处理器CP1
.dataPI: .float 3.14
.textli $v0, 2 # 中断调用号 2lwc1 $f12, PIsyscall
大致流程与之前的打印字符、打印整型一样。
- 设置变量(标签)PI,将其存储的内容放入数据段(在内存中)中。
- 先设置中断调用号,保存至指令的寄存器v0中。
- 将标签PI存放的内存中存储的实际值(3.14)加载到寄存器f12中。
- 调用系统中断,打印。
关于浮点数,这里我录制了一个视频,详细讲解下。
MIPS汇编语言学习笔记06:print a float - 高志远的个人主页视频: YouTube原视频(带机翻字幕):https://www.youtube.com/watch?v=m_iQTl9lbQE&list=RDCMUCPZ473Q4kbG98JmL71PgXTA&index=22 哔哩哔哩:https://www.bilibili.com/video/BV19J411y7pA?p=6 代码功能: 打印出一个单精度浮点数(单精度小数) 代码:https://gaozhiyuan.net/assembly/mips-assembly-programming-simplified-print-a-float.html视频中用到的小工具:IEE
转载自:MIPS汇编语言学习笔记06:print a float - 高志远的个人主页
这篇关于MIPS汇编语言学习笔记06:打印单精度浮点数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!