第一次互评作业:MIPS汇编程序设计

  1 .data
  2
  3 string1: .asciiz "*\n"
  4
  5
  6 bstring:    .asciiz
  7             "Alpha ","Bravo ","China ","Delta ","Echo ","Foxtrot ",
  8             "Golf ","Hotel ","India ","Juliet ","Kilo ","Lima ",
  9             "Mary ","November ","Oscar ","Paper ","Quebec ","Research ",
 10             "Sierra ","Tango ","Uniform ","Victor ","Whisky ","X-ray ",
 11             "Yankee ","Zulu "
 12
 13 boffset:    .word
 14             0,7,14,21,28,34,43,49,56,63,71,
 15             77,83,89,99,106,113,121,131,
 16             139,146,155,163,171,178,186
 17
 18
 19 nstring:    .asciiz
 20             "zero ", "First ", "Second ", "Third ", "Fourth ",
 21             "Fifth ", "Sixth ", "Seventh ","Eighth ","Ninth "
 22
 23 noffset:    .word
 24             0,6,13,21,28,36,43,50,59,67
 25
 26
 27 sstring:    .asciiz
 28             "alpha ","bravo ","china ","delta ","echo ","foxtrot ",
 29             "golf ","hotel ","india ","juliet ","kilo ","lima ",
 30             "mary ","november ","oscar ","paper ","quebec ","research ",
 31             "sierra ","tango ","uniform ","victor ","whisky ","x-ray ",
 32             "yankee ","zulu "
 33
 34 soffset:    .word
 35             0,7,14,21,28,34,43,49,56,63,71,
 36             77,83,89,99,106,113,121,131,
 37             139,146,155,163,171,178,186
 38
 39
 40
 41 .text
 42
 43 loop:
 44
 45 li $v0,12
 46 syscall
 47
 48 move $t2,$v0
 49
 50 move $t0,$t2
 51 li $t1,63
 52 beq $t0,$t1,exit
 53
 54 move $t0,$t2
 55 li $t1,122
 56 bgt $t0,$t1,other
 57
 58 move $t0,$t2
 59 li $t1,48
 60 blt $t0,$t1,other
 61
 62 move $t0,$t2
 63 li $t1,57
 64 ble $t0,$t1,number
 65
 66 move $t0,$t2
 67 li $t1,65
 68 blt $t0,$t1,other
 69
 70 move $t0,$t2
 71 li $t1,90
 72 ble $t0,$t1,big
 73
 74 move $t0,$t2
 75 li $t1,97
 76 blt $t0,$t1,other
 77
 78 #print Lower case letters
 79
 80 addi $t0,$t0,-97
 81 la $t1,soffset
 82 sll $t0,$t0,2
 83 add $t0,$t0,$t1
 84 lw $t1,($t0)
 85 la $t0,sstring
 86 add $t0,$t0,$t1
 87 move $a0,$t0
 88 li $v0,4
 89 syscall
 90 j loop
 91
 92 other:
 93
 94 la $a0,string1
 95 li $v0,4
 96 syscall
 97 j loop
 98
 99 number:
100
101 addi $t0,$t0,-48
102 la $t1,noffset
103 sll $t0,$t0,2
104 add $t0,$t0,$t1
105 lw $t1,($t0)
106 la $t0,nstring
107 add $t0,$t0,$t1
108 move $a0,$t0
109 li $v0,4
110 syscall
111 j loop
112
113 #print Upper case letters
114 big:
115
116 addi $t0,$t0,-65
117 la $t1,boffset
118 sll $t0,$t0,2
119 add $t0,$t0,$t1
120 lw $t1,($t0)
121 la $t0,bstring
122 add $t0,$t0,$t1
123 move $a0,$t0
124 li $v0,4
125 syscall
126 j loop
127
128 exit:
129
130 li $v0,10
131 syscall

第一题的算法文字描述:

调用系统功能输入数据

转换数据

(1) 如果输入的是字母(A~Z,区分大小写)或数字(0~9),则将其转换成对应的英文单词

(2) 若输入的不是字母或数字,转换成“*”,

每输入一个字符,即时转换并在屏幕上显示,

支持反复输入,直到按“?”键结束程序。

对应的伪码:

 1 if(n<=122)
 2     if(n>=48)
 3         if(n<=57)
 4             goto number
 5         if(n<65)
 6             goto ‘*‘
 7         else
 8             if(n<=90)
 9                 goto big
10             if(n<97)
11                 goto ‘*‘
12             if(n>=97)
13                 goto small
14     else
15         goto ‘*‘
16 else
17     goto ‘*‘    
时间: 2024-10-26 02:41:22

第一次互评作业:MIPS汇编程序设计的相关文章

MIPS汇编程序设计——四则运算计算器

实验目的 运用简单的MIPS实现一个能够整数加减乘除的计算器,同时使自己更加熟悉这些指令吧 MIPS代码 #https://blog.csdn.net/oncoding/article/details/4346531 #sample example 'a small calculater' # data section .data value: .word 0, 0, 0 ,0 ,0 # 0: first num ,4 : second num , 8 : operation , 12:resu

第一次迭代作业提交

程序java代码: 1 import java.util.Arrays; 2 import java.util.Scanner; 3 4 public class volleyball { 5 6 public static void main(String[] args) { 7 8 int[][] scoreArr = new int[5][2];// 定义二维数组,用于记录每局比赛分数 9 int red = 0; 10 int blue = 0;// 定义红蓝变量,用于判断红蓝整场比赛输

C++ 第一次上机作业

今天完成了C++第一次上机作业,感觉比较简单. 题目: 求2个数或3个正整数中的最大数,用带有默认参数的函数实现. 对3个变量按由小到大顺序排序,要求使用变量的引用. 编写一个程序,用同一个函数名对几个数据进行从小到大排序,数据类型可以是整型.浮点型.用重载函数实现. 对第4题改用函数模板实现,并与第4题程序进行对比分析. 第一题代码: 1 #include<iostream> 2 using namespace std; 3 4 void max(int a=0,int b=0,int c=

第一次课程作业(3月7日)

第一次课程作业:梳理课程重点(信息基础+服务管理) 第一章:信息化基础知识 1.信息的概念(知道):有两个层次(1)本体论:你认为它是什么样就是什么样 (2)信息论:由于我的认识不断深入,逐渐趋于它的本质 2.国家信息化体系6要素,关系图要记住,某个要素是什么功能 信息技术应用:六要素中的龙头,国家信息化建设的主阵地 信息资源:信息资源的开发利用是国家信息化建设的核心任务,是国家信息化建设取得实效的关键,也是国家信息化的薄弱环节.信息资源.材料资源.能源共同构成国民经济和社会发展的三大战略资源,

mips汇编完整程序的分析

下面讲解一下mips汇编的一些整个程序的编译过程的分析: 这是我最近看Mips汇编所总结的一些东西,有的地方可能会有一些错误, 希望看到这边博客的各位给与指点:在此表示诚挚的感谢. #include <stdio.h> int main(int argc,char *argv[]) { int b = 2; int c = 3; int a = b*c; int d = c/3; printf("a == %d,b == %d,c == %d,c == %d\n",a,b,

第一次的作业,现实的自身

第一部分:结缘计算机 我第一次接触计算机是在小之前学的事了,在我的亲戚家,我哥手把手教学CS,那时候之知道几个按键,连按键的名子,作用的不了解的.之后就是小学的计算机课,老师交一些画图,制表,但那个时候已经有大神可以连网下载小游戏了!我深受其害-我感觉似乎好多的男生都是因为游戏和计算机认识的. 第二部分:在计算机系里学习 13年报考本校的土木工程系,但被调剂带计算机系 ,15年退伍回来复学 开始学习我不曾了解过的计算机!开始接触C语言,数据库,HTML等等.2年的学习,我自己觉得我似乎连编程的"

汇编--程序设计

ASSUME   CS:CODE, DS:DATA              ;ASSUME伪指令规定段的性质 X DW 4 :定义第一个加数 用 MASM 6.11 和 CodeView 汇编和调试汇编语言程序 在 MASM  6.11 中,Microsoft 公司提供了程序员工作平台 PWB.这是一个集成化开发环境,程序员可以方便地完成汇编语言源程序的编辑.汇编.连接调试和执行等工作. 1)处理器选择伪指令 默认是.8086 .8086 选择 8086 指令系统 .286 选择 80286

第一次网上作业

看了牛老师发布的几篇文章后,我感触颇深.不错的,作为一个农村来的孩子,我们身上背负着很大的责任,学校又给了我们这么好的学习条件,有图书馆,有电子阅览室,我们更没有理由不认真努力的去学习. 在21世纪这个信息科技迅速发展的时代,我以作为一个计算机专业的学生感到十分荣幸.然,这也是一个竞争非常激烈,难度相当大的专业.要想把这门专业,学透,学精,就必须付出巨大的努力,花费大量的时间去专研,去学习.对于软件工程这门学科,我认为有许多东西需要去学习,最重要的是要有一个好的学习方法.陈老师传授给我们的就有一

第一次结对作业

我和他结识于网络,没有过多的交流,伴随着一句"你有队友吗?"的问话和"没有",的回答,我们便决定了这学期痛苦的软工实践之旅我们一起走,不要认为很随便,看似很随随便的背后,隐藏了种种原因,我们是经过深思熟··········算了,编不下去了,其实还真挺随便得. 随后互相爆出了对方的姓名和学号:张富华-031502341和张岳-,一看我们同性瞬间亲切了好多,仿佛已经认识好久了一样,马上便开始了实践之旅. 可以看出来,本次作业描述的就是我们学校里学生社团的现状:纳新时全程