MIPS汇编及模拟器下载
1. 简述汇编语言发展
在计算机发展初期,人们用0-1序列来表示每一条语言,亦即二进制的机器指令
由于机器指令过于繁琐,程序员们开发出了一种新的语言,这种用符号表示的计算机语言被称为汇编语言
计算机继续发展则生成了高级计算机语言,C语言、C++、Java等
2. 作用过程

汇编程序将汇编语言转换为机器语言
汇编语言(源)程序由汇编指令构成
汇编指令由助记符和标号来表示(与机器指令一一对应)
指令包含操作码和操作数(或地址码)
机器指令用二进制表示,汇编指令用符号表示,
只能描述加减乘除、与或非、根据结果判断是否转移执行
3. 优劣性质
相对于机器语言与高级计算机语言,汇编语言的特点较为明显
优点
汇编语言最大的有点就在于它将人们从繁琐的0-1序列中解放了出来,使编程于人而言具有更佳的可读性
不足
1. 尽管它化简了编程的过程,但是仍然不够简便,相比于高级语言它的指令过于单一,需要人为操作很多细节
2. 由于汇编语言与CPU很接近,每一种结构的CPU都有相应的一种汇编指令集,这就使得汇编程序不具有完全的可移植性
4. MIPS简述
由于汇编语言的不可移植性,其种类繁多,MIPS便是其中一种,相应地,MIPS有其自身对应的MIPS指令集

4.1 框架
.data
用于储存变量,相当于高级语言中的参数域
.text
用于储存代码,完成各项指令,相当于高级语言的函数、操作语句
4.2 Mars MIPS模拟器的下载
在学习汇编时需要一个模拟器用于模拟CPU状态,而Mars则是对应于MIPS指令集的一款模拟器
下载地址:http://courses.missouristate.edu/kenvollmar/mars/

根据提示下载安装即可

右侧表示32个寄存器
4.3 Mars基本操作
File-new可新建编程页面

单击Help可得到如下指令使用方法

截至2020年2月1日,4.5为最新版
注:MIPS是基于Java平台的,因此在使用前需要先下载JDK
MIPS汇编及模拟器下载的更多相关文章
- Windows Mobile 6.0 SDK和中文模拟器下载
[转] Windows Mobile 6.0 SDK和中文模拟器下载 Windows Mobile 6.5 模拟器 2010年12月06日 星期一 07:48 转载自 zhangyanle86 终于编 ...
- Wince6.0模拟器下载和使用方法
原文地址:http://www.oogps.com/post/Wince6.0.html下载地址:Wince6.0模拟器下载.rar 第一步:把软件下载解压后看到以下目录. 第二步:双击运行上图中的S ...
- Xcode各个版本及模拟器下载
如果你嫌在 App Store 下载 Xcode 太慢,你也可以选择从网络上下载: Xcode下载(Beta版打的包是不能提交到App Store上的) 绝对官方源!!!绝对官方源!!!绝对官方源!! ...
- appium——如何导出夜神模拟器下载“微信”app的apk
背景:夜神模拟器是一款功能强大的安卓模拟器,但是当我们在上面下载APP应用后,通常不知道apk文件在哪里,下面以“微信”APP为例做一下详细介绍. 一般情况下,使用夜神安卓模拟器下载的文件只能在夜神安 ...
- MIPS汇编学习
MIPS汇编学习 mips汇编不同于x86汇编,属于精简指令集,常见于路由器等一些嵌入式设备中. mips汇编没有对堆栈的直接操作,也就是没有push和pop指令,mips汇编中保留了32个通用寄存器 ...
- MIPS汇编指令集
MIPS有三种指令格式: R型 6 5 5 5 5 6 op rs rt rd shamt funct 功能:寄存器-寄存器ALU操作 (算术运算,逻辑运算) I型 6 5 5 16 op rs rt ...
- Android 模拟器 下载、编译及调试
Android 模拟器源码下载 Android 模拟器源码的下载与 Android AOSP 源码库的下载过程类似,可以参考 Google 官方提供的 Android 源码下载文档 来了解这个过程. ...
- Android 模拟器下载、编译及调试
Android 模拟器源码下载 Android 模拟器源码的下载与 Android AOSP 源码库的下载过程类似,可以参考 Google 官方提供的 Android 源码下载文档 来了解这个过程. ...
- iot漏洞mips汇编基础
1 基础概念 MIPS(Microprocessor without Interlocked Piped Stages architecture),是一种采取精简指令集(RISC)的处理架构,由MIP ...
随机推荐
- JAVA学习线路:day01面向对象(继承、抽象类)
所有的文档和源代码都开源在GitHub: https://github.com/kun213/DailyCode上了.希望我们可以一起加油,一起学习,一起交流. day01面向对象[继承.抽象类] 今 ...
- 云原生 go-zero 微服务框架
0. go-zero介绍 go-zero是一个集成了各种工程实践的web和rpc框架.通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验. go-zero包含极简的API定义和生成工具goc ...
- YCM 安装小记
layout: post title: YCM 安装小记 半夜,女朋友在那边抱怨购物车的物品秒无货,我这边刚好成功安装了vim上最难装的插件--YouCompleteMe,内心非常激动,于是本着取之于 ...
- 实验二 HTML中图片和超链接的应用
实验二 HTML中图片和超链接的应用 [实验目的] 1.通过本例要求掌握常见的图像格式及图像的插入方法. 2.能够修改图像属性,利用外部图像处理软件编辑图像. 3.掌握设置各类超级连接的方法. 4.灵 ...
- Mysql架构与内部模块-第二章
接上文,上文简述到了Mysql中的查询缓存和解析器,今日我们继续. 先来看一段SQL:SELECT * FROM `jianghuadong`; 先假设我们数据库中并没有一张名为jianghuadon ...
- 【LWJGL3】LWJGL3的内存分配设计,第一篇,栈上分配
简介 LWJGL (Lightweight Java Game Library 3),是一个支持OpenGL,OpenAl,Opengl ES,Vulkan等的Java绑定库.<我的世界> ...
- CVE-2009-0927-Adobe Reader缓冲区溢出漏洞分析
0x00概述: 此漏洞的成因是由于Adobe Reader在处理PDF文档中所包含的JavaScript脚本时的Collab对象的getlcon()方式不正确处理输入的参数,而产生的缓冲区溢出,成功利 ...
- 接入WxPusher微信推送服务出现错误:Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported
背景 使用WxPusher微信推送服务 ,可以及时的将服务的一些运行异常信息,发送到自己的微信上,方便了解服务的运行状态(PS:这个服务是免费的). 你可以在这里看到WxPusher微信推送服务的接入 ...
- 源代码 VS 汇编代码 VS 目标代码 VS 字节码 VS 机器码
1.源代码(source code) 源代码就是平时我们开发的代码:比如C.Java.Python.Shell...等 public class HelloWorld { public static ...
- Helium文档3-WebUI自动化-click点击
前言 click点击方法在web UI自动化中使用频率非常高,此方法就是模拟鼠标左键单击动作 click入参说明 1.首先我们来分析一下click方法的代码 click(element): &qu ...