MIPS汇编语言指令分类及寻址模式

MIPS汇编语言指领分类及寻址模式一、普及一些相关概念指令集:一个给定的计算机体系结构所包含的指令集合。存储程序概念:多种类型的指令和数据均以数字形式存储于存储器的概念,存储程序型计算机即缘于此。1二、MIPS操作数之32个寄存器寄存器名字寄存器编号寄存器功能$zero$0恒等于零$at$1被汇编器保留,用于处理大的常数$v0–$v

大家好,又见面了,我是你们的朋友全栈君。

在这里插入图片描述

一、相关概念

  • 指令集:一个给定的计算机体系结构所包含的指令集合。
  • 存储程序概念:多种类型的指令和数据均以数字形式存储于存储器的概念,存储程序型计算机即缘于此。1

二、MIPS操作数之32个寄存器

寄存器名字 寄存器编号 寄存器功能
$zero $0 恒等于零
$at $1 被汇编器保留,用于处理大的常数
$v0 – $v1 $2-$3 存放函数返回值
$a0 – $a3 $4-$7 传递函数参数
$t0 – $t7 $8-$15 存放临时变量
$s0 – $s7 $16-$23 存放需要保存的临时值
$t8 – $t9 $24-$25 额外的存放临时变量
$k0 – $k1 $26-$27 用于操作系统内核
$gp $28 指向全局变量的指针
$sp $29 指向栈顶的指针
$fp $30 指向栈帧的指针
$ra $31 返回地址,用于函数调用

三、MIPS汇编语言指令类型及寻址方式

1. R型指令

R型指令

2. I型指令

I型指令
I

3. J型指令

J型指令

四、MIPS类型及寻址方式分析

1. MIPS字段命名

op(6位) rs(5位) rt(5位) rd(5位) shamt(5位) funct(6位)
  • op:指令的基本操作,成为操作码
  • rs:第一源操作数寄存器
  • rt:第二源操作数寄存器
  • rd:存放操作结果的目的寄存器
  • shamt:位移量
  • funct:功能码

2. 指令类型

  • R型【op为0】
op(6位) rs(5位) rt(5位) rd(5位) shamt(5位) funct(6位)
  • I型
op(6位) rs(5位) rt(5位) immediate(16位)
  • J型
op(6位) immediate(26位)

3. MIPS寻址方式

MIPS寻址方式


  1. 《计算机组成与设计》第五版翻译版 ↩︎

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126986.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • cv::imread读不出图片的解决办法「建议收藏」

    cv::imread读不出图片的解决办法「建议收藏」imread()函数无法读取图片的原因测试程序:intmain(){ //读入一张图片 Matimg=imread("longmao.jpg"); if(img.empty()) { cout<<"Can’treadimage"<<endl; return-1; } //创建一个名为“龙猫”窗口 namedWindow("longmao"); …

    2022年10月10日
  • 你真的懂Java怎么输出Hello World吗?「建议收藏」

    你真的懂Java怎么输出HelloWorld吗?1.你会不会输出”HelloWorld!”?2.小生抛砖引玉,欢迎指正3.总结1.你会不会输出”HelloWorld!”?当我们学习一门编程语言的时候,我们都会先学如何输出HelloWorld!????:“你真的会吗?”????:“会!”????:“以下这几个例子,我背都给你背下来!!!!”【骄傲】C语言printf(“HelloWorld!”);C++语言cout<<“HelloWorld!”;

  • C#开发面试题_程序员面试题精选100题

    C#开发面试题_程序员面试题精选100题注明:经过本人面试的经历和在网上的资料整理出来的100道比较常见的C#面试题,想当初面试公司虽然不是很多,第一次找工作用了近两周的时间面试了二十多家公司,成功的不到十家,最后选择了一家大型的软件公司干了两个月就走人了。后来又找了一周工作,面试了十一家公司,成功9家。现在已经在公司工作了快两年的时间了。以下的面试题也是自己曾经做过的,希望能帮助更多的同行找到满意的工作!!!1..NET和C#有

  • git基本操作命令和安装

    git基本操作命令和安装

    2021年11月10日
  • matlab画图函数 增加横纵坐标名称_matlab函数绘图

    matlab画图函数 增加横纵坐标名称_matlab函数绘图1.多子图figuresubplot(2,1,1);plot(data1);title(‘原始信号’);%标题subplot(2,1,2);plot(data1_rebuild);title(‘去噪声后信号’);2.多条信号figureplot(data1,’-r’);holdonplot(data1_rebuild,’-b’);legend(‘原始信号’,’去噪后信…

  • WEB框架本质和第一个Django实例

    Web框架本质我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端。这样我们就可以自己实现Web框架了。半成品自定义web框架可以说We

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号