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 ...
随机推荐
- Django新手图文入门教程
版权所有,转载需注明来源! 本文是广受大家欢迎的<Django1.10新手图文入门教程>的2.1版本升级篇,原1.10版本传送门点击我 本文面向有一些的Python基础,但刚接触web框架 ...
- 单例模式,reorder详解,线程安全,双检查锁
单例模式,分为饿汉式单例 和 懒汉式单例. 先把本类对象所需内存在main函数执行前就new出来,这是饿汉式单例. 个人思考: 为什么饿汉式不独霸天下,还有什么必要去研究使用cpp11上支持的双检查锁 ...
- arduino中SCoop库的简单应用案例
转载:https://www.csdn.net/gather_27/MtTaggzsMDExMS1ibG9n.html arduino中SCoop库的简单应用案例首先这篇文章来在视频https://v ...
- 使用类模板的C++线性表实现(数组方式)
main.h #ifndef _MAIN_H_ #define _MAIN_H_ #include <iostream> #include <exception> #inclu ...
- Arduino 寻找I2C地址address
参考:http://henrysbench.capnfatz.com/henrys-bench/arduino-projects-tips-and-more/arduino-quick-tip-fin ...
- 如何实现文章AI伪原创?
language-ai 文章AI伪原创,文章自动生成,NLP,自然语言技术处理,DNN语言模型,词义相似度分析.全网首个AI伪原创开源应用类项目. 点击右侧about内的链接极速体验! 代码托管在gi ...
- centos7 安装k8s kubectl 客户端
1. 配置k8s的kubelet 管理客户端 1 cat <<EOF > /etc/yum.repos.d/kubernetes.repo 2 [kubernetes] 3 name ...
- 开始接触flex
flex框架使用的是.mxml后缀的文件,可以在Eclipse导入flex开发的插件.代码写完之后需要进行编译成为.swf文件成功之后才可以正常运行.现在刚开始接触金融的项目,需求什么的还有很多不是理 ...
- 正式班D9
2020.10.16星期五 正式班D9 一.vmware workstation的使用 虚拟机管理软件 定义 虚拟机(Virtual Machine)软件是一套特殊的软件,它可以作为操作系统独立运行, ...
- keccak和sha3的区别
keccak应用 在以太坊中,用keccak哈希算法来计算公钥的256位哈希,再截取这256位哈希的后160位哈希作为地址值. keccak和sha3的区别 sha3由keccak标准化而来,在很多场 ...