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. 测试人员的KPI考核制定

    1.工作内容和质量 1.需求熟悉程度 2.测试用例覆盖度 3.测试用例完成质量 4.有效BUG率 5.BUG描述质量 6.测试报告质量 7.按时完成测试工作 8.项目进度更新,项目BUG跟踪2.工作效 ...

  2. mysql-16-variables

    #变量 /* 系统变量: 全局变量 会话变量 自定义变量: 用户变量 局部变量 */ # 一.系统变量 #由系统提供,属于服务器层面 #1.查看所有的系统变量 show global variable ...

  3. C 面向对象编程 --- 一模块的串口协议解析

    // 任务目的// 解析串口收到的54个字节.这54个字节包含了8个车道的5大信息以及校验信息.// 实现了查询每条车道包含了哪些信息. #include <stdio.h>#includ ...

  4. “工程师思维” VS. “学院派思维”

    1.与"工程师"交流,他们致力于"更快.高质量"交付,他们会借助时下最稳定.最完善的中间件或者框架,他们更谦虚,喜欢和志同道合的朋友交流分享协作,视角更宽,往往 ...

  5. Python之路——变量

    什么是变量 #变量即变化的量,核心是"变"与"量"二字,变即变化,量即衡量状态. 为什么要有变量 #程序执行的本质就是一系列状态的变化,变是程序执行的直接体现, ...

  6. shell-的特殊变量-进程状态变量$$ $! $? $_详解

    一:shell的特殊变量-进程状态变量详解  1. 进程状态变量 $$ 获取当前shell的进程号(pid) $! 执行上一个指令的pid,上一个后台运行进程的进程号 $? 获取执行上一个指令的返回值 ...

  7. 多测师讲解jmeter _基本介绍_(001)高级讲师肖sir

    jmeter讲课课程 一.Jmeter简介 Jmeter是由Apache公司开发的一个纯Java的开源项目,即可以用于做接口测试也可以用于做性能测试. Jmeter具备高移植性,可以实现跨平台运行. ...

  8. NET::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK)

    错误信息: NET::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK) 错误背景:微服务不通过统一的nginx端口访问,能够正常请求接口并获取对应的响应.但是通过ngi ...

  9. Android HandlerThread 详解

    概述 HandlerThread 相信大家都比较熟悉了,从名字上看是一个带有 Handler 消息循环机制的一个线程,比一般的线程多了消息循环的机制,可以说是Handler + Thread 的结合, ...

  10. scrapy基本爬虫,采集多页

    # -*- coding: utf-8 -*- import csv import scrapy class GjSpider(scrapy.Spider): name = 'gj' allowed_ ...