[理工] 计组 远距离分支

楼主: tomdog12345 (方)   2016-07-24 11:18:47
刚刚传错图了抱歉
http://i.imgur.com/3IPEVMx.jpg
如图 是张凡计组上的一题练习题
考的是远距离分支
我疑惑的是为何答案写成这样:
here: bne $s0, $s2, skip
j there
skip: ...
there: add $s0,$s0,$s0
就能跳到原本跳不到 的地方(超过16bit可表示的地方)?
有谁知道更详细一点的解释吗QAQ 谢谢!
作者: A4P8T6X9 (残废的名侦探)   2016-07-24 12:18:00
因为 J 的距离比较远啊,这就是二段跳。
楼主: tomdog12345 (方)   2016-07-24 12:26:00
那它前一条指令改写成bne 后面加个skip的用意是什么@@
作者: kyuudonut (善良老百姓)   2016-07-24 14:00:00
做原本要做的事情
作者: ken52011219 (呱)   2016-07-24 17:21:00
别被误导变量名字误导了 写 skip 就是跳到名为 skip的副程式 RUN完就继续做主程式部分额 RUN完就继续做主程式 <<<这句当我没说这里就是的 IF ELSE 的组语版
楼主: tomdog12345 (方)   2016-07-24 18:43:00
if $s0= $s2 做jump , else 做 skip就是中间那段...的程式码刚刚看了kyu大的解答 看懂了 ! 谢谢大家的帮忙

Links booklink

Contact Us: admin [ a t ] ucptt.com