.set noreorder :让汇编器不要对后面的代码进行优化处理,比如重新排列执行代码;
.globl : 定义全局符号,让其他地方可以调用;
_start,start :程序入口,也要定义为globl的原因是别的文件如(ld.scripts)需要能识别该符号然后进来;
mfc0,mtc0 : mfc0 从协处理器0的寄存器中读出数据,f表示from;mtc0 把数据写入到协处理器0的寄存器中,t表示to;
or, xor, xori :or或运算,xor异或运算, xori 中的i表示立即数,意味着和一个数字进行异或运算;
lui 加载立即数到高16位,u表示高16位uper,l表示加载(load),从内存读数据到寄存器
la 加载标号对应的地址,a表示address;
sb s表示存储(store),表示是从寄存器写入到内存,b表示字节,表示该指令只操作一个字节;
bal b表示跳转(branch),bal表示跳转的同时,保存返回地址到ra寄存器;