第一题
.data
outputd: .asciiz "Alpha","November","First","alpha","november","Bravo","Oscar","Second","bravo","oscar","China","Paper","Third","china","paper","Delta","Quebec","Fourth","delta","quebec","Echo","Research","Fifth","echo","research","Foxtrot","Sierra","Sixth","foxtrot","sierra","Golf","Tango","Seventh","golf","tango","Hotel","Uniform","Eighth","hotel","uniform","India","Victor","Ninth","india","victor","Juliet","Whisky","zero","juliet","whisky","Kilo","X-ray","kilo","x-ray","Lima","Yankee","lima","yankee","Mary","Zulu","mary","zulu","",""
vald: .asciiz "A","N","1","a","n","B","O","2","b","o","C","P","3","c","p","D","Q","4","d","q","E","R","5","e","r","F","S","6","f","s","G","T","7","g","t","H","U","8","h","u","I","V","9","i","v","J","W","0","j","w","K","X","k","x","L","Y","l","y","M","Z","m","z","?"
unvald: .asciiz "*"
offs: .word 0,6,15,21,27,36,42,48,55,61,67,73,79,85,91,97,103,110,117,123,130,135,144,150,155,164,172,179,185,193,200,205,211,219,224,230,236,244,251,257,265,271,278,284,290,297,304,311,316,323,330,335,341,346,352,357,364,369,376,381,386,391,396,398

.text
st: li $v0,0xc
syscall
li $t1,0
ju: mul \(t2,\)t1,2 #judje the input
la $t4,vald
add \(t3,\)t2,$t4
lb \(t3,0(\)t3)
beq \(v0,\)t3,out
bgt $t1,62,out
add \(t1,\)t1,1
j ju

out: #output seq
beq $t1,62,over
# read the offset
la $t5,offs
mul \(t7,\)t1,4
add \(t6,\)t5,$t7
lw \(t6,(\)t6)
#add the offset
la $t4,outputd
add \(t3,\)t6,$t4
li $v0,4
la \(a0,(\)t3)
syscall
j st

over:

数据是程序跑出来的不贴了

第二题
.data
stringdata: .space 100
h: .byte 10
g: .byte 13
ok: .asciiz "Success! Location: "
no: .asciiz "Fail!"
.text
li $v0 8
la $a0 stringdata
li $a1 100
syscall
st:
li $v0 0xc
syscall
move $v1 $v0
j ln2
st2:
move $v0 $v1
li $t0 0
la $a0 stringdata
la $a1 h
lb \(a1 (\)a1)
lo:
add $t1 $t0 $a0
lb \(t1 (\)t1)
beq $t1 $v0 Find
beq $t1 $a1 Fail
add $t0 $t0 1
j lo

Find:
li $v0 4
la $a0 ok
syscall
add $t0 $t0 1
li $v0 1

lw $a0 $t0

move $a0 $t0
syscall
j ln

Fail:
li $v0 4
la $a0 no
syscall
j ln

ln:li $v0,0xb
lb $a0,h
syscall
j st
# lb $a0,g
# syscall
ln2:li $v0,0xb
lb $a0,h
syscall
j st2

计算机组成原理作业一 熟悉MIPS指令的更多相关文章

  1. [计算机组成原理][实验十.R-I-J型指令CPU设计实验总结]

    总算解决一大心头之患了,比想象中容易,通宵两夜,刷完了十个实验,这个实验就是最后的了.感慨颇多.特地写篇总结. 想做一件事,就立马去做把.你会发现没那么困难,往往最大的困难,是心里的困难. 培养了HD ...

  2. 重学计算机组成原理(五)- "旋转跳跃"的指令实现

    CPU执行的也不只是一条指令,一般一个程序包含很多条指令 因为有if-else.for这样的条件和循环存在,这些指令也不会一路平直执行下去. 一个计算机程序是怎么被分解成一条条指令来执行的呢 1 CP ...

  3. 3.6 MIPS指令简介

    计算机组成 3 指令系统体系结构 3.6 MIPS指令简介 MIPS秉承着指令数量少,指令功能简单的设计理念.那这样的设计理念是如何实现的呢?在这一节,我们就将来分析MIPS指令的特点. 相比于X86 ...

  4. 计算机组成原理 — CPU 中央处理器

    目录 文章目录 目录 前文列表 逻辑电路部件 组合逻辑电路 时序逻辑电路 阵列逻辑电路 中央处理器(CPU) 控制单元(控制器) 运算单元(运算器) 存储单元(寄存器组和片内缓存) CPU 的工作原理 ...

  5. 《计算机组成原理 》& 《计算机网络》& 《数据库》 Roadmap for self-taugh student

    计算机组成原理: UCB的这门课绝对是不错的资源. Great Ideas in Computer Architecture (Machine Structures) B站:https://www.b ...

  6. MIPS指令 MIPS架构

    华中科技大学 - 计算机组成原理 华中科技大学 - 计算机硬件系统设计 Microprocessor without Interlocked Pipleline Stages 无内部互锁流水级的微处理 ...

  7. MIPS指令学习二

    1.MIPS寻址方式 MIPS架构的寻址模式有寄存器寻址.立即数寻址.寄存器相对寻址和PC相对寻址4种,其中寄存器相对寻址.PC相对寻址介绍如下: 1.1.寄存器相对寻址 这种寻址模式主要被加载/存储 ...

  8. 计算机组成原理实验之CPU组成与指令周期实验

    (实验五  CPU组成与指令周期实验) 课程 计算机组成原理实验 实验日期 2015 年 12 月  8 日 一.实验目的 1.将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机. 2. ...

  9. 【0725 | Day 1】计算机编程/计算机组成原理/计算机操作系统

    什么是编程 编程语言:人与计算机交流的手段 编程:通过编程语言编写文件 学习编程的目的:让计算机代替人力,为我们服务 计算机组成原理 计算机由五大部分组成:控制器.运算器.存储器.输入设备.输出设备. ...

随机推荐

  1. 百度编辑器上传视频以及视频编辑器预览bug解决

    百度编辑器目前来讲是运用比较广泛的一个编辑器了,不仅开源还有中文的文档,所以很受欢迎,不过里面也有许多地方需要开发人员自己调试,其中一个比较常见的问题就是上传视频了,上传视频本身有一些小bug,这个基 ...

  2. 关于判断是安卓还是ios环境跳转下载页

    H5项目中判断是安卓还是iOS手机就跳转到不同的下载页,项目如下https://github.com/JserJser/dailyPush/tree/master/daily6/H5 这个项目里面我比 ...

  3. 基于宜搭的《T恤尺码收集》应用搭建

    简介: 在阿里,T恤是程序员必不可少的元素.每逢公司或者BU(部门)的重大节庆日,比如双11 .年会.新BU成立仪式.大型活动等,都会给员工定制发放统一的T恤或者POLO衫服装.而我们每次发放T恤之前 ...

  4. js的相关距离

    js的相关距离 一.dom对象的距离 ---dom.style.width : 对象本身的内容宽度(这里必须是内联样式中的width,带px)(content) ---dom.style.height ...

  5. JDBC1 --- 获取数据库连接的方式一 --- 技术搬运工(尚硅谷)

    需要mysql-connector-java-5.1.7-bin.jar @Test public void testConnection1() throws SQLException { Drive ...

  6. 原生js 判断变量是一个数组

    const arr = [] // 1. 最简单 ES5+ Array.isArray(arr) // 2. 兼容性好的方法,也很准确 Object.prototype.toString.call(a ...

  7. consul原理

    阅读目录 一.使用Consul做服务发现的若干姿势 1.https://www.cnblogs.com/bossma/p/9756809.html 阅读目录 启动第1个Server节点,集群要求要有3 ...

  8. Redis源码解析:12AOF持久化

    除了RDB持久化功能之外,Redis还提供了AOF(AppendOnly File)持久化功能.与RDB持久化通过保存数据库中的键值对来记录数据库状态不同,AOF持久化是通过保存Redis服务器所执行 ...

  9. 关于dex 64K 引用限制

    1.官方文档 https://developer.android.com/studio/build/multidex 主要内容: 什么是64K限制 编码时如何避免64K 限制 拆分dex避免64K 限 ...

  10. TZ_14_Feign的客户端和Feign的负载均衡

    1.作用:Feign可以把Rest的请求进行隐藏,伪装成类似SpringMVC的Controller一样.你不用再自己拼接url,拼接参数等等操作,一切都交给Feign去做. 2.导入起步坐标 < ...