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汇编及模拟器下载的更多相关文章

  1. Windows Mobile 6.0 SDK和中文模拟器下载

    [转] Windows Mobile 6.0 SDK和中文模拟器下载 Windows Mobile 6.5 模拟器 2010年12月06日 星期一 07:48 转载自 zhangyanle86 终于编 ...

  2. Wince6.0模拟器下载和使用方法

    原文地址:http://www.oogps.com/post/Wince6.0.html下载地址:Wince6.0模拟器下载.rar 第一步:把软件下载解压后看到以下目录. 第二步:双击运行上图中的S ...

  3. Xcode各个版本及模拟器下载

    如果你嫌在 App Store 下载 Xcode 太慢,你也可以选择从网络上下载: Xcode下载(Beta版打的包是不能提交到App Store上的) 绝对官方源!!!绝对官方源!!!绝对官方源!! ...

  4. appium——如何导出夜神模拟器下载“微信”app的apk

    背景:夜神模拟器是一款功能强大的安卓模拟器,但是当我们在上面下载APP应用后,通常不知道apk文件在哪里,下面以“微信”APP为例做一下详细介绍. 一般情况下,使用夜神安卓模拟器下载的文件只能在夜神安 ...

  5. MIPS汇编学习

    MIPS汇编学习 mips汇编不同于x86汇编,属于精简指令集,常见于路由器等一些嵌入式设备中. mips汇编没有对堆栈的直接操作,也就是没有push和pop指令,mips汇编中保留了32个通用寄存器 ...

  6. MIPS汇编指令集

    MIPS有三种指令格式: R型 6 5 5 5 5 6 op rs rt rd shamt funct 功能:寄存器-寄存器ALU操作 (算术运算,逻辑运算) I型 6 5 5 16 op rs rt ...

  7. Android 模拟器 下载、编译及调试

    Android 模拟器源码下载 Android 模拟器源码的下载与 Android AOSP 源码库的下载过程类似,可以参考 Google 官方提供的 Android 源码下载文档 来了解这个过程. ...

  8. Android 模拟器下载、编译及调试

    Android 模拟器源码下载 Android 模拟器源码的下载与 Android AOSP 源码库的下载过程类似,可以参考 Google 官方提供的 Android 源码下载文档 来了解这个过程. ...

  9. iot漏洞mips汇编基础

    1 基础概念 MIPS(Microprocessor without Interlocked Piped Stages architecture),是一种采取精简指令集(RISC)的处理架构,由MIP ...

随机推荐

  1. JAVA学习线路:day01面向对象(继承、抽象类)

    所有的文档和源代码都开源在GitHub: https://github.com/kun213/DailyCode上了.希望我们可以一起加油,一起学习,一起交流. day01面向对象[继承.抽象类] 今 ...

  2. 云原生 go-zero 微服务框架

    0. go-zero介绍 go-zero是一个集成了各种工程实践的web和rpc框架.通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验. go-zero包含极简的API定义和生成工具goc ...

  3. YCM 安装小记

    layout: post title: YCM 安装小记 半夜,女朋友在那边抱怨购物车的物品秒无货,我这边刚好成功安装了vim上最难装的插件--YouCompleteMe,内心非常激动,于是本着取之于 ...

  4. 实验二 HTML中图片和超链接的应用

    实验二 HTML中图片和超链接的应用 [实验目的] 1.通过本例要求掌握常见的图像格式及图像的插入方法. 2.能够修改图像属性,利用外部图像处理软件编辑图像. 3.掌握设置各类超级连接的方法. 4.灵 ...

  5. Mysql架构与内部模块-第二章

    接上文,上文简述到了Mysql中的查询缓存和解析器,今日我们继续. 先来看一段SQL:SELECT * FROM `jianghuadong`; 先假设我们数据库中并没有一张名为jianghuadon ...

  6. 【LWJGL3】LWJGL3的内存分配设计,第一篇,栈上分配

    简介 LWJGL (Lightweight Java Game Library 3),是一个支持OpenGL,OpenAl,Opengl ES,Vulkan等的Java绑定库.<我的世界> ...

  7. CVE-2009-0927-Adobe Reader缓冲区溢出漏洞分析

    0x00概述: 此漏洞的成因是由于Adobe Reader在处理PDF文档中所包含的JavaScript脚本时的Collab对象的getlcon()方式不正确处理输入的参数,而产生的缓冲区溢出,成功利 ...

  8. 接入WxPusher微信推送服务出现错误:Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported

    背景 使用WxPusher微信推送服务 ,可以及时的将服务的一些运行异常信息,发送到自己的微信上,方便了解服务的运行状态(PS:这个服务是免费的). 你可以在这里看到WxPusher微信推送服务的接入 ...

  9. 源代码 VS 汇编代码 VS 目标代码 VS 字节码 VS 机器码

    1.源代码(source code) 源代码就是平时我们开发的代码:比如C.Java.Python.Shell...等 public class HelloWorld { public static ...

  10. Helium文档3-WebUI自动化-click点击

    前言 click点击方法在web UI自动化中使用频率非常高,此方法就是模拟鼠标左键单击动作 click入参说明 1.首先我们来分析一下click方法的代码 click(element):   &qu ...