简单分析龙芯start.S部分指令

.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寄存器;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值