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 ...
随机推荐
- 测试人员的KPI考核制定
1.工作内容和质量 1.需求熟悉程度 2.测试用例覆盖度 3.测试用例完成质量 4.有效BUG率 5.BUG描述质量 6.测试报告质量 7.按时完成测试工作 8.项目进度更新,项目BUG跟踪2.工作效 ...
- mysql-16-variables
#变量 /* 系统变量: 全局变量 会话变量 自定义变量: 用户变量 局部变量 */ # 一.系统变量 #由系统提供,属于服务器层面 #1.查看所有的系统变量 show global variable ...
- C 面向对象编程 --- 一模块的串口协议解析
// 任务目的// 解析串口收到的54个字节.这54个字节包含了8个车道的5大信息以及校验信息.// 实现了查询每条车道包含了哪些信息. #include <stdio.h>#includ ...
- “工程师思维” VS. “学院派思维”
1.与"工程师"交流,他们致力于"更快.高质量"交付,他们会借助时下最稳定.最完善的中间件或者框架,他们更谦虚,喜欢和志同道合的朋友交流分享协作,视角更宽,往往 ...
- Python之路——变量
什么是变量 #变量即变化的量,核心是"变"与"量"二字,变即变化,量即衡量状态. 为什么要有变量 #程序执行的本质就是一系列状态的变化,变是程序执行的直接体现, ...
- shell-的特殊变量-进程状态变量$$ $! $? $_详解
一:shell的特殊变量-进程状态变量详解 1. 进程状态变量 $$ 获取当前shell的进程号(pid) $! 执行上一个指令的pid,上一个后台运行进程的进程号 $? 获取执行上一个指令的返回值 ...
- 多测师讲解jmeter _基本介绍_(001)高级讲师肖sir
jmeter讲课课程 一.Jmeter简介 Jmeter是由Apache公司开发的一个纯Java的开源项目,即可以用于做接口测试也可以用于做性能测试. Jmeter具备高移植性,可以实现跨平台运行. ...
- NET::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK)
错误信息: NET::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK) 错误背景:微服务不通过统一的nginx端口访问,能够正常请求接口并获取对应的响应.但是通过ngi ...
- Android HandlerThread 详解
概述 HandlerThread 相信大家都比较熟悉了,从名字上看是一个带有 Handler 消息循环机制的一个线程,比一般的线程多了消息循环的机制,可以说是Handler + Thread 的结合, ...
- scrapy基本爬虫,采集多页
# -*- coding: utf-8 -*- import csv import scrapy class GjSpider(scrapy.Spider): name = 'gj' allowed_ ...