自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 MIPS汇编语言学习笔记27:数组

原视频课国外最火MIPS汇编语言学习视频,有翻译字幕,方便学习_哔哩哔哩_bilibili代码space数据类型:#.space 12代表给变量分配12个字节空间,即12字节。如果我们想存储三个整数,一个整数占用4字节,那么一共就需要4 x 3 = 12个字节空间。.data Array: .space 12 # 一个整数4字节,共三个整数.text main: # save to register addi $s0, $zero, 2 addi $s1, $ze.

2022-04-10 23:16:08 2851 1

原创 MIPS汇编语言学习笔记26:MIPS While 循环

C语言#include<stdio.h>int main(){ int i = 1; int sum = 0; while(i < 11) { sum = sum + i; i = i + 1; } printf("sum: %d", sum); return 0;}MIPS汇编.text main: li $a0, 1 # i li $a1, 0 # s

2022-02-10 20:38:48 1176

原创 MIPS汇编语言学习笔记23:if 语句分支指令

C语言#include<stdio.h>int main(){ int i = 3; if (i < 5) { printf("yes!\n"); }else { printf("No!\n"); } return 0;}MIPS汇编语言.data Yes: .asciiz "Yes" No: .asciiz "No".text main: addi $a0, $zer

2022-01-20 10:59:20 1448

原创 MIPS汇编语言学习笔记22:获取用户输入的文本

功能获取用户输入的文本并打印输出。讲解MIPS汇编语言学习笔记22:获取用户输入的文本 - 高志远的个人主页https://gaozhiyuan.me/assembly/mips-assembly-getting-text-from-the-user.html汇编代码.data tips: .asciiz "please input your name:" name: .space 4 out: .asciiz "\nyour name is:".text .

2022-01-18 15:34:16 559

原创 MIPS汇编语言学习笔记21:获取用户输入的双精度浮点数

功能获取用户输入的双精度浮点数并打印输出。讲解参考:MIPS汇编语言学习笔记03:print HelloWorld、MIPS汇编语言学习笔记20:获取用户输入的单精度浮点数与20讲不同的是,对于双精度浮点数,从键盘读取是存入 f0 寄存器中,而打印是从f12寄存中读取的。需要用到一个mov.d 指令(具体参考第03讲)。汇编代码 .data tips: .asciiz "please input pi:" out: .asciiz "\n.

2022-01-15 17:32:40 552

原创 MIPS汇编语言学习笔记20:获取用户输入的单精度浮点数

功能获取用户输入的单精度浮点数并打印输出。讲解与上节课打印整型数字区别不大,参考:MIPS汇编语言学习笔记03:print HelloWorld、MIPS汇编语言学习笔记19:获取用户输入的整数两个文章内容即可写出。汇编代码 .data tips: .asciiz "please input pi:" out: .asciiz "\npi:" .text main: #打印字符串 la $a0, .

2022-01-14 12:38:15 295

原创 MIPS汇编语言学习笔记19:获取用户输入的整数

功能功能:通过键盘输入数字并打印出来。视频讲解MIPS汇编语言学习笔记19:获取用户输入的整数 - 高志远的个人主页https://gaozhiyuan.me/assembly/mips-assembly-getting-users-input-integers.html汇编代码.data tips: .asciiz "please input your age:" out: .asciiz "\nyour age:".text main: #打印字符串 la $a

2022-01-13 12:28:05 1123

原创 MIPS汇编语言学习笔记18:函数嵌套调用、递归

函数递归——复杂的函数调用本节主要讲述的是汇编语言中函数的嵌套调用和递归。我们先来看递归,因为递归是最复杂的函数嵌套调用,我们只要把递归搞明白了,函数的嵌套调用自然不成问题。关于汇编语言递归的视频,可以参考Youtube上的这个视频:在这个教学视频中,以高级语言为例,写出了递归法计算阶乘的代码:https://youtu.be/06KE61kXl4w?list=PLylnxZnYW9LbVL5HnYwo7VLmlkhM7lTey计算n阶乘视频讲解MIPS汇编语言学

2022-01-11 17:58:36 1303

原创 MIPS汇编语言学习笔记17:将寄存器保存到堆栈

原视频:https://www.bilibili.com/video/BV19J411y7pA?t=49&p=17程序功能:通过函数传递参数过程,理解和使用堆栈(push和pop)。可参考图:视频讲解:MIPS汇编语言学习笔记17:将寄存器保存到堆栈 - 高志远的个人主页本文已收录到:MIPS汇编语言学习笔记 专题 MIPS汇编语言学习笔记03:print HelloWorld MIPS汇编语言学习笔记04:print character MIPS汇编语言学习笔记

2021-12-20 10:12:28 1058 1

原创 MIPS汇编语言学习笔记16:Function Arguments and Return Values

原视频:https://www.bilibili.com/video/BV19J411y7pA?p=16代码功能:本节讲述的是带返回值(return values)的函数调用。具体是实现一个函数可以将两数相加并返回给main函数打印输出。视频讲解:MIPS汇编语言学习笔记16:Function Arguments and Return Values - 高志远的个人主页本文已收录到:MIPS汇编语言学习笔记 专题 MIPS汇编语言学习笔记03:print HelloWorld M

2021-11-27 12:08:49 252

原创 MIPS汇编语言学习笔记15:Introduction to Functions

程序功能:通过函数实现打印输出字符“Hello World!”。原视频:https://www.bilibili.com/video/BV19J411y7pA?p=15讲解视频:MIPS汇编语言学习笔记15:Introduction to Functions - 高志远的个人主页https://gaozhiyuan.me/assembly/mips-assembly-programming-simplified-introduction-to-functions.html代码:

2021-11-26 17:08:56 205

原创 MIPS汇编语言学习笔记14:Dividing Integers part 2

代码功能:计算两个整数相除,打印输出。与上一节MIPS汇编语言学习笔记13:Dividing Integers part 1不同,第13节采用 div $t1, $t2, $t3的方式进行的计算,后将结果放入$t1寄存器中。本节使用 div $t1, $t2,将结果放入预先指定好的HI,LO寄存器中,需要打印的话再将其转存进$a0寄存器。代码:.data intA: .word 8 intB: .word 4.text lw $t1, intA lw $t2, intB

2021-11-18 10:33:45 332

原创 MIPS汇编语言学习笔记13:Dividing Integers part 1

程序功能:计算两个整数相除的结果,并打印输出。代码提示:参考MIPS汇编语言学习笔记03:print HelloWorld中的MIPS pdf文档,里面有MIPS指令。经查询发现使用div指令即可。随即写出代码。代码:.data intA: .word 8 intB: .word 4.text lw $t1, intA lw $t2, intB div $a0, $t1, $t2 # print li $v0, 1 syscall本文已收录到:MIPS汇编语

2021-11-08 08:40:14 220

原创 MIPS汇编语言学习笔记12:使用逻辑移位的整数相乘(sll方法)

功能:使用逻辑移位指令实现乘法操作。视频讲解:MIPS汇编语言学习笔记12:Multiplying Integers sll - 高志远的个人主页功能:使用逻辑移位指令实现乘法操作。 视频讲解: https://gaozhiyuan.me/wp-content/uploads/2021/03/2021-03-19-15-57-23.mp4 代码: .data intA:.word 3 .text lw $t1, intA sll $a0, $t1, 1 li $v0, 1 syscall..

2021-09-27 10:52:22 1944

原创 MIPS汇编语言学习笔记11:整数减法 (mult方法)

任务:整数相乘,并输出打印。代码:.data intA: .word 5 intB: .word 2.text li $v0, 1 lw $a1, intA lw $a2, intB mult $a1, $a2 # 相乘放入固定的HI和LO寄存器 mflo $a0 # 专门用于取LO寄存器中的值,再存入a0寄存器 syscall 本节我参考的之前的笔记,可以顺利写出代码。MIPS汇编语言学习笔记03:print HelloWorldHI和LO寄存器作用:乘

2021-09-26 12:16:51 2089

原创 MIPS汇编语言学习笔记10:整数减法 (mul方法)

代码功能:将两个数相乘,打印输出。参考MIPS汇编语言学习笔记11:Multiplying Integers (mult方法)参考MARS软件中的 mul 补全提示:很容易就自己写出来了,所以本节不录视频。代码:.data intA: .word 4 intB: .word 2.text lw $t1, intA lw $t2, intB mul $a0, $t1, $t2 li $v0, 1 syscall 转载自:MIPS汇编语言学习笔记10:.

2021-09-24 21:49:59 1594

原创 MIPS汇编语言学习笔记09:整数相减

代码功能:将两个整数相减,并打印。代码:.data intA: .word 1 intB: .word 2.text li $v0, 1 lw $a1, intA lw $a2, intB sub $a0, $a1, $a2 syscall 跟08节的add类型,换成sub就是相减指令。参考:MIPS汇编语言学习笔记08:Adding Integers转载自:MIPS汇编语言学习笔记09:Subtracting Integers - 高志远的个人主页...

2021-09-23 08:57:12 359

原创 MIPS汇编语言学习笔记08:整数相加

原授课视频:哈哈,可以参考这个,https://www.bilibili.com/video/BV19J411y7pA?p=8但经过前面的学习后,应该可以自己尝试写出代码了。代码:.data intA: .word 1 intB: .word 2.text li $v0, 1 lw $a1, intA lw $a2, intB add $a0, $a1, $a2 syscall 不用视频讲解了,没什么难度。需要注意的是,我们知道在C语言中int类型占用4字节,在mi

2021-09-22 21:48:40 600

原创 MIPS汇编语言学习笔记07:打印双精度浮点数

课程原视频:https://www.bilibili.com/video/BV19J411y7pA?p=7程序功能:设定两个双精度浮点型数据,将其相加后打印输出。代码:.data myDouble: .double 7.202 zeroDouble: .double 0.0.text # 加载 load ldc1 $f2, myDouble ldc1 $f0, zeroDouble li $v0, 3 add.d $f12, $f2, $f0 syscal

2021-09-21 10:07:22 989

原创 MIPS汇编语言学习笔记06:打印单精度浮点数

原课程视频:YouTube原视频(带机翻字幕):https://www.youtube.com/watch?v=m_iQTl9lbQE&list=RDCMUCPZ473Q4kbG98JmL71PgXTA&index=22哔哩哔哩:国外最火MIPS汇编语言学习视频,有翻译字幕,方便学习_哔哩哔哩_bilibili代码功能:打印出一个单精度浮点数(单精度小数)代码:lwc1指令与lw指令大致相似,功能都是从内存中加载一个字到寄存器中,也就是将内存中的内容加载到

2021-09-19 09:22:02 909

原创 MIPS汇编语言学习笔记05:打印整数

原课程视频:国外最火MIPS汇编语言学习视频,有翻译字幕,方便学习_哔哩哔哩_bilibili代码功能:打印出数字代码:.data age: .word 23 # 跟C语言的 word age = 23 类似.text li $v0, 1 lw $a0, age syscall.word类型,字类型,占用4字节。这里存储的是数字23,二进制为00010111,只需要一个字节即可。所以.word改为 .byte也是可以的。笔记讲解视频:MIPS汇编

2021-09-18 10:30:33 877

原创 MIPS汇编语言学习笔记04:打印字符

原视频:国外最火MIPS汇编语言学习视频,有翻译字幕,方便学习_哔哩哔哩_bilibili程序功能:打印字符“m”程序代码:.data myCharacter: .byte 'm'.text li $v0, 4 la $a0, myCharacter syscall如果看不懂,可参考MIPS汇编语言学习笔记03:print HelloWorld中的视频。这里与03节唯一不同的就是m字符采用了byte数据类型,其他的一样。转载自:MIPS汇编语言学习笔记04

2021-09-17 21:37:49 915

原创 MIPS汇编语言学习笔记03:print HelloWorld

视频:国外最火MIPS汇编语言学习视频,有翻译字幕,方便学习_哔哩哔哩_bilibili程序要求:打印出“HelloWord”。程序分析:每个mips程序都分为数据部分(.data)和文本部分(.text)。# .data 包含程序所有的数据部分,就像c语言中的 变量、.data # 这是一个消息,需要将消息放入 随机存储寄存器 中,在此之前我必须告诉其数据类型是什么。 myMessage: .asciiz "Hello World \n"# 文本部分包含所有的声明

2021-09-16 16:08:14 838

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除